|
吾爱游客
发表于 2017-9-27 00:22
1、申 请 I D:futosky
2、个人邮箱:snifersky@foxmail.com
3、原创技术文章:
看雪精华: https://bbs.pediy.com/thread-161911.htm
[原创]那一年,菜鸟试过的隐藏
学驱动没多久的时候写的,一年没碰了,因为种种原因没弄完,基本上都是别人的思路,原创基本没有,实现的也不完全,希望能给我一样的菜鸟一点帮助,某大牛说过:都什么年代了,还在做隐藏.......我等望尘莫及啊。。。
仅在 WINXP SP3 下做测试,大量硬编码
1、进程隐藏
2、DLL隐藏
3、驱动隐藏
4、文件隐藏(不用看了,就一个SSDT HOOK)
5、端口隐藏(做的最烂,就一个SSDT HOOK,不用看了)
之后就停工了。。。
整体是伪造了SSDT的,以躲过常规的SSDT HOOK检查
1、进程隐藏
(1)ActiveProcessLinks断链
(2)HandleTableList断链
(3)使用ExEnumHandleTable函数遍历擦除PspCidTable句柄表和csrss.exe句柄表的句柄(完了发现进程死掉了,请教KiDebug说是PsLookupProcessById会用到句柄表)
(4)从两个句柄表中擦除进程的所有线程句柄
(5)VM=(ULONG)pEprocess+0x1f8;//VM----WorkingSetExpansionLinks断链
(6)伪造进程对象
(7)修改PEB里面的一堆信息
(8)FUTO里面的相关对象操作
(9)抹掉PE信息,很遗憾基础不行,一写入就BSOD
(10)还考虑过修改每个线程存储的SSDT和ShadowSSDT地址
(11)FakeSSDT HOOK FakeZwQuerySystemInformation
(12)inlineHookMmIsAddressValid 曾经对XueTr0.45管用过一段时间,后便不知道改了哪个地方就废了
效果:可以改掉一大堆乱七八糟的信息,但就是EPROCESS抹不掉,抹不掉!!
2、DLL隐藏,使用了ring0线程注入,不稳定,我在网上能搜到的隐藏方法是
(1)_PEB_LDR_DATA的三条链表断链
(2)从VAD树擦除信息
但是隐藏效果不好,过不了XueTr 0.45
(3)但是观察了_FILE_OBJECT结构后,我发现DEVICE_OBJECT域,于是试着将其抹掉,就过了当时所有ARK的DLL检测了。。。当然查看线程还是红的,只是找不到对应模块,我所用的测试DLL只是开启了一个线程不断弹出对话框,不能保证复杂DLL仍旧能够工作正常。
3、驱动隐藏,严重抄袭某牛
(1)断开InLoadOrderLinks链
(2)从\Driver对象目录隐藏
(3)从typelist隐藏
(4)抹掉PE特征,很不彻底
(5)DriverObject一堆信息抹掉
当时基础有限(现在也不咋地),文件分布比较乱,大家凑合着看吧~
|
|
发帖前要善用【论坛搜索】功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。 |
|
|
|
|