-
-
[原创]沙箱的攻与防
-
2016-12-23 20:30
8286
-
前言
做这个分析已经有一段时间了,今天聊天,聊到这里了,就写一下
,市面上一些沙箱基于cuckoo的居多,大部分就是拿来修改一下,
或者是一些人写的小型沙箱,勾一些样本的行为
技术分析
我总结了他们都有二种相同的行为
1.
一上来就开始加载一堆dll文件,比如 人家程序里面没有用到user32.dll,你一上来就开始hook user32.dll里面的函数。
2.
直接hook人家的函数头
检测方法
第1条的检测方法:这种我分析的样本里面几乎没有遇到,其实检测很简单,GetModuleHandle一下
看看是否获得句柄
第2条的检测方法:现在市面上对抗2的比较多,一些样本会检测一下函数头,是否勾了,这招对抗一般沙箱有效果
第三条:实现dll重导,也就是给系统的dll文件从新修复一下,根据dll文件修复内存里面的函数头,那效果应该不错吧(目前没有见过这种样本)
实验测试
我的测试结果
看看金山给的报告吧
测试的第一种
他一开始就加载一堆我没有加载的dll文件 点击我金山火眼测试报告
我测试的第二种检测方法
看看他的函数是不是不正常 点击我金山火眼测试报告
设计沙箱
这个我写了一个多月,实现不在启动的时候加载一堆dll文件,
1.按需自动加载,
2.不修改任何系统函数代码
3.支持dll重导(依旧可以拿到自己想要的日志)
能跑做360 pchunter等杀毒软件和安全软件的流程分析
找个合适的日子开源
[培训]《安卓高级研修班(网课)》月薪三万计划,掌
握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法