Step deeply into NDIS6 LightWeight Filter, part 1
我们从NDIS的驱动栈开始,系统在启动的时候(IoInitSystem…)会加载系统驱动,典型的比如卷过滤驱动Volsnap是从IopInitializeBootDrivers的IopInitializeBuiltinDriver中启动的,一般的Filter Driver则是在IopInitializeSystemDrivers的时候加载的,而各层的DriverEntry的顺序并一定按栈自底向上走(比如TCPIP调用NdisRegisterProtocolDriver,比Miniport的注册早),但是各自初始化完了,NDIS会接管开始调整栈结构,依次调用Miniport的MiniportInitializeEx,LightWeight Filter的FilterAttach,到最后的Protocol的ProtocolBindAdapterEx。
How to adjust the Ace of device object
一直想给以前弄的东西写点什么或者给KP贡献点代码文档什么的,但是苦于一直没有时间,换工作,换住处,换了很多东西,也就没闲的下来抛砖了,难得要过年了,扔一块试试水深。
直接扔关键代码,不想写太多的说明,本来这些代码也只是副产品,眼尖的应该能看出来这些代码的来处和用处。
PACCESS_ALLOWED_ACE
GetAceFromAcl(
IN PACL Dacl,
IN ULONG AceIndex
)
Native Application之键盘处理
作者:Robinh00d 高手可以飘过了,这段代码是用于NATIVE APPLICATION支持键盘输入用的,测试PS/2键盘好用,USB键盘未测 就是循环从KeyboardClassX里读键盘数据而已~
构造无人之境: Exploiting Realtek RTL8139单芯片以太网控制器
优良的rootkit(以下简写为rk)通常应该具备隐蔽稳定的通信功能。正如优秀的程序员一直追求用最简洁的代码完成功能需求一样,优秀的rk coder也一直秉承着绝不在rk中加入过多无用的远程命令,让rk尽量回归其原始定义–获得“root”权限的kit的宗旨。而如何实现隐蔽是rk通信首先要考虑的问题。
因此,出现了各式各样的隐蔽隐藏技术。几年前的高级手段随着内核技术的公开与普及在时下被理所当然地判定为浅“藏”辄止,而时受深度检测工具干扰的在内核级深藏不露的rk亦不能使rk coder感到一劳永逸。因为构造隐蔽通信中的无人之境才是他们永恒不变的追求。
…
[POC]基于IO Packet隐藏文件和注册表,过磁盘解析和总线解析
只是POC~
文件的貌似有时候能隐藏又时候不行~郁闷的是每次跟过去就可以隐藏了,不跟的话有时候又隐藏不了~最后懒得改了~~~另外 由于没有动CACHE,所以对于用API或者FSD的文件检查反而过不去~
注册表的部分过FILE CACHE的低强度解析(例如狙剑)也是过不了的~由于这方面工具很少,冰刃和DARKSPY又总是在我的虚拟机上蓝屏,所以就没仔细测试了~也许有问题~
…
About Handling Nmi
本文基于Windows2003以上32位系统,因为XP处理NMI很弱,我们后面再说。
最近为硬件写驱动,需要处理关于NMI的一些东西,2003或者Vsita32上如果你不想弄的太复杂,可以调用新增的KeRegisterNmiCallback函数注册一个回调函数等待处理.但是在XP下就很困难,解决的办法有两个:hook或者update.所谓hook,这个不难理解,hook在哪里就仁者见仁了;而update就是仿造2003下的实现方法,在XP下自己实现一些处理例程….
About the SMM rootkit
这几天回上海搬家累坏了,回来北京也没什么好东西放出来,整理点以前的乱东西凑数
其实SMM是早在97年就有的东西,我跟这个东西也算是有点渊源,之前在实验室做过一些关于这个的研究,但是远没有到rootkit的方向.之后在逛网站的时候发现一篇5.12时候的新闻:Researchers dig into x86 chips for stealthier rootkits…