首页
社区
课程
招聘
[原创]SECCOMP_RET_TRAP 信号量检测主动执行的对抗
2023-4-2 10:53 5289

[原创]SECCOMP_RET_TRAP 信号量检测主动执行的对抗

2023-4-2 10:53
5289

关于SECCOMP_RET_TRAP,使用信号量去检测的方法,在之前的帖子里面已经讲过了。其实这种方法可以通过拦截sigaction系统调用,拿到handler地址,主动去调用执行handler即可。handler函数一般有如下两种:


第一种一般是与sigqueue函数配套使用,第二种则是与raise或者kill函数配套使用。



那是不是意味着信号量这种检测手段就彻底被废弃了呢?当然不是,既然是第三方的主动去执行,那我们也可以检测这种主动执行的情况。比如注册SIGSYS的信号注册3个handler任意挑选里面的1个去真正产生SIGSYS信号的执行检测seccomp,另外两个不产生SIGSYS信号(这里产生信号的方式有很多种,使用函数去主动发送信号是其中的一种)。然后去检测这三个handler的结果,做分析判断即可。


也可以使用sigqueue发送信号时携带一些数据信息,然后handler里面验证这些数据,当然也可以拦截sigqueue系统调用,也一样可以绕过了。


另外我们也可以解析handler的调用堆栈,符号,一般主动执行的都会与系统执行的堆栈有较大的不同。其实检测的维度也是多种多样的,仔细静下心来想想,也很容易就得出方案。



[培训]《安卓高级研修班(网课)》月薪三万计划,掌握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

最后于 2023-4-2 10:57 被LivedForward编辑 ,原因:
收藏
点赞5
打赏
分享
最新回复 (0)
游客
登录 | 注册 方可回帖
返回