微点交流论坛
» 游客:  注册 | 登录 | 帮助

 

作者:
标题: 友情提醒微点的工程师 -- MmLoadSystemImage【转帖】
镜湖YES
银牌会员




积分 1225
发帖 1199
注册 2009-3-15
#1  友情提醒微点的工程师 -- MmLoadSystemImage【转帖】

我不知道网友有没有转过这个帖子,我就转下好了:

http://www.hx99.net/Article/Tech/201001/32583.html




老技术,所以随便提醒下.
      关于HOOK MmLoadSystemImage.可以监测到由SCM、ZwLoadDriver、ZwSetSystemInformation等加载的驱动信息,以便进行及时的记录,patch, 当然瑞星的卡卡助手06年用的老技术 -- 从DriverEntry回溯一层找到IopLoadDriver中call DriverEntry,再进行patch拦截,也是个不错的选择. 其他诸如SSDT层面的就不说了. by sudami 2008-12-06
      微点之所以在拦截驱动加载方面过滤不严格,不是他们没有注意这块,而是在处理hook MmLoadSystemImage上code的写法有问题,如下:
     1. MP110003.SYS 调用ZwSetSystemInformation来加载到C盘根目录的测试驱动"??c:hook.sys".时未attach到CSRSS.EXE进程空间, 而是在SYSTEM空间中去调,显然EPROCESS中的ProcessInSession标志位是0, 自然没有足够的section来存放新的Driver,于是很强大的返回0xC0000017(STATUS_NO_MEMORY)错误.根本进不到微点瞬间下的钩子里面去.
     2. 微点很猥琐的通过栈回溯找到了Call MmLoadSystemImage地址,既而找到原始的MmLoadSystemImage地址.不过微点的驱动开发人员却还要进一步特征匹配,在地址-0x100h内搜索出 0x266Ah 才肯HOOK. 这样匹配还不如找Call MmLoadSystemImage下方的call RtlImageNtHeader校验. 我测试了N中环境,都没有出现过0x266Ah字符串,所以微点自然放弃了对ZwSetSystemInformation内部调用MmLoadSystemImage处的CALL HOOK.
不过微点挂了NtMapViewOfSection,还有个ImageNotify,监控起来也差不多了.据MJ同学说ImageNotify比MmLoadSystemImage更底层,所有的回调都是很底层的,不过我觉得Notify太容易被摘了(当然HOOK也很好恢复,没有万能的对策).
WWW.
找MmLoadSystemImage的地址,方法很多,若要暴搜,绝对不要全部硬编码特征匹配,很搓很不稳定, 所以啊MJ同学说搜一个TAG即可,全系统唯一.哈哈,我的想法是在NtLoadDriver里面找每个call,分析call的函数地址开头0x20字节,就可以快速找到了. 不过我是这样做的,通过栈回溯找到MmLoadSystemImage,然后把它里面的那个TAG搞成别的, 嘿嘿,这样我的程序**完系统后,其他恶意程序暴搜的话就够呛了...
简单用栈回溯做了个监控的,如下:      (图我就不转了,到原帖里去看吧)


至于在fake_MmLoadSystemImage里面做处理,就可随自己做了. 比如黑白名单判断,patch 驱动的XX,单纯的记录... 也可在创建Object或Section时候拦截,效果也不错. []
其实没必要这样复杂嘛.挂钩下ZwLoadDriver足矣,再把几个进R0的关键API挂上, 一个小型监控驱动加载的HIPS就成型了. 啊啊啊啊啊啊啊啊~~~
我呢,非常搓,看见微点更挫,所以我便用更加搓的方式来搞了.各位同学切勿效仿切勿效仿~

※ ※ ※ 本文纯属【镜湖YES】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2010-1-29 23:37
查看资料  发送邮件  发短消息   编辑帖子
点饭的百度空间
银牌会员




积分 2315
发帖 2236
注册 2007-11-30
#2  

以前的问题 现已解决

※ ※ ※ 本文纯属【点饭的百度空间】个人意见,与【 微点交流论坛 】立场无关※ ※ ※

你的微笑 is 微点的骄傲!
http://hi.baidu.com/new/micropoint
2010-1-30 13:23
查看资料  发送邮件  访问主页  发短消息   编辑帖子
471795251
银牌会员

九三学社


积分 3818
发帖 3882
注册 2007-2-4
来自 山西省阳泉市晋东化工厂
#3  

兰州的方法也挺猥琐的~

※ ※ ※ 本文纯属【471795251】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2010-1-30 16:18
查看资料  发短消息  QQ   编辑帖子
理想未来
禁止发言





积分 386
发帖 382
注册 2008-12-10
#4  

这个帖子所提的问题应该是去年的了。很早了....

※ ※ ※ 本文纯属【理想未来】个人意见,与【 微点交流论坛 】立场无关※ ※ ※
2010-1-30 16:54
查看资料  发送邮件  发短消息   编辑帖子



论坛跳转:

可打印版本 | 推荐 | 订阅 | 收藏


[ 联系我们 - 东方微点 ]


北京东方微点信息技术有限责任公司 福建东方微点信息安全有限责任公司

闽ICP备05030815号