摘要: 原文发表于百度空间,2009-11-08 这是第一次逆向一个企业级安全产品的核心代码,并完美替换原驱动正常工作 RT.逆向用了两天(后面还花了一些断断续续的时间查看细节)还原成源码并编译通过用了两天编译通过的驱动调试排错则断断续续用了一周的时间。。。目前可以替换原驱动正常运行,感觉已相当完美。贴张C 阅读全文
posted @ 2018-12-26 21:17 黑月教主 阅读(837) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间及看雪论坛,2009-10-14 看雪论坛地址:https://bbs.pediy.com/thread-99460.htm 刚发这篇文章的时候,因为内容涉及360的核心产品,文章被雪藏了一段时间 Author:achillisblog :https://www.cnblogs.c 阅读全文
posted @ 2018-12-26 21:13 黑月教主 阅读(844) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间及看雪论坛,2009-10-08 看雪论坛地址:https://bbs.pediy.com/thread-99128.htm 看时间,09年的国庆节基本上就搞这玩意儿了。。。 分析了一下360的HOOK,通过直接hook KiFastCallEntry实现对所有系统调用的过滤。 我 阅读全文
posted @ 2018-12-26 21:07 黑月教主 阅读(966) 评论(0) 推荐(1) 编辑
摘要: 原文发表于百度空间,2009-09-17 相当老的话题,大约一年前就写过这个东西了,不过那时候知识比较有限,也不了解内核,因此实现得很粗浅,现在再写一下,权当是对这个老问题的总结吧。先谈谈正规DLL的隐藏方法,这里说的正规DLL,是指用LoadLibrary以正常方式加载的DLL。一、从PEB的Ld 阅读全文
posted @ 2018-12-26 21:04 黑月教主 阅读(1286) 评论(0) 推荐(1) 编辑
摘要: 原文发表于百度空间,2009-07-14 标准的驱动与ring3的通信过程是这样的:驱动中创建设备,并为设备创建符号链接,ring3用CreateFile打开符号链接得到设备句柄,然后DeviceIoControl发送ControlCodeDeviceIoControl的内容被封装成IRP到达Dev 阅读全文
posted @ 2018-12-26 21:00 黑月教主 阅读(569) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-07-10 基础篇里说的那些东西搞完以后,任何正常的位置都找不到我们的Driver了,此时相应的手段基本上只剩下暴搜PE镜像或暴搜DriverObject了。而且,基础篇讲的那些东西,因为都是M$定好的一些格式和位置,代码怎么写都差不多,固定的路子而已。而抹PE镜像或抹 阅读全文
posted @ 2018-12-26 20:59 黑月教主 阅读(804) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-07-09 完整介绍隐藏驱动的方法,部分内容属于冷饭热炒,炒一炒比较好消化~~先说一下,以下数据和结构信息来自Windbg+WinXP SP2一、从PsLoadedModuleList消失PsLoadedModuleList是系统中一个用于连接所有已加载驱动的双向链表( 阅读全文
posted @ 2018-12-26 20:57 黑月教主 阅读(1061) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-07-08 还是从邪恶的源头--隐藏说起,以隐藏Driver为例,当我们从PsLoadedModuleList、\Driver对象目录、TypeList都消失以后,要怎么去找到我们这个Driver呢?这时,很多ARK的方法就是暴搜,暴搜DriverObject(比如Sy 阅读全文
posted @ 2018-12-26 20:54 黑月教主 阅读(565) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-07-06 以下内容来自www.rootkit.comDriver Hidding based on the following methods:1.removing module form PsLoadedModuleList(that passed some old 阅读全文
posted @ 2018-12-26 20:52 黑月教主 阅读(479) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-07-02 快一个月没写东西了,随便写点~~ StealthCode检测似乎是RootkitUnhooker独有的功能,主要是检测那些无主的可执行代码片段。比如一些放在Pool中的代码,或者驱动中的代码但驱动隐藏了使得RKU无法找到,就认为是StealthCode了。R 阅读全文
posted @ 2018-12-26 20:40 黑月教主 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间及看雪论坛,2009-05-13 看雪论坛地址:https://bbs.pediy.com/thread-89708.htm 最近很忙,也很懒,发点以前写的东西吧~学习了一下古老的CsrssWalker,写点笔记~~在Csrss.exe中,保存着所有Win32子系统进程的进程信息, 阅读全文
posted @ 2018-12-26 20:38 黑月教主 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-05-13 Idle进程和System进程一样,也是系统中的一个特殊进程,严格讲它不算是一个进程,但是它有自己的EPROCESS,并有一个IdleThread.若说它算一个进程,它的进程空间、句柄表、Token等却又和System进程一样,即共享了System的内核数据 阅读全文
posted @ 2018-12-26 20:35 黑月教主 阅读(357) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-04-17 关于调试没有符号的驱动时如何断在入口点处这个问题,先说一个我听来的很挫的方法:用C32ASM修改DriverEntry处为0xCC,就是int 3,修正校验和后加载,执行到DriverEntry时产生int 3异常自然就会中断在调试器了,这时再把原来的指令改 阅读全文
posted @ 2018-12-26 20:31 黑月教主 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-04-04 在创建句柄时,操作过程并不受StrictFIFO标志的影响.而在销毁句柄时,StrictFIFO标志则决定了如何放置刚释放的这个FreeHandle.对于普通进程的句柄表而言,StrictFIFO为0,那么销毁该句柄时,Free指针所指向的队列头是Handl 阅读全文
posted @ 2018-12-26 20:28 黑月教主 阅读(308) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-04-04 分析了Windows句柄表的分配算法之后,综合WRK1.2中的代码以及Window XP下的实践,继续分析句柄的分配算法~~为了便于描述,先定义几个概念:FreeHandle即尚未被使用的Handle,FreeHandleList是由FreeHandle依靠 阅读全文
posted @ 2018-12-26 20:26 黑月教主 阅读(610) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-03-31 理论结合实践,这是我一贯的学习方法~~实验目的:以实验的方式观察PspCidTable的变化,从中了解Windows句柄表的分配过程.实验器材:Windbg,RunIt(一个可控的不断创建线程的程序),DebugView知识回顾: 如图所示,句柄表的结构根据 阅读全文
posted @ 2018-12-26 20:22 黑月教主 阅读(277) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-03-30 三、当需要申请一个新的二级表(MidLevelTable)时,调用ExpAllocateMidLevelTable函数 五、句柄表的释放比较简单,遍历并释放每个一级表所占内存就可以了~ 阅读全文
posted @ 2018-12-26 19:51 黑月教主 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-03-30 四.句柄表的扩容:已分配的句柄表被用完时,ExpAllocateHandleTableEntrySlow被调用以分配一个新的句柄表,实现对句柄表的扩容.每次增加粒度都是一个一级表的大小(大小为PAGE_SIZE,句柄容量为PAGE_SIZE/sizeof(H 阅读全文
posted @ 2018-12-26 19:49 黑月教主 阅读(223) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-03-30 阅读提示:由于继续使用了chichou同学的CodeHighlighter来修饰代码,造成文章字数过多,故分成三篇,且后两篇内容的顺序稍有调整,阅读时请根据大标题的顺序来~ 前置知识:Windows句柄表的基本结构本文以WRK1.2的代码为参考,主要分析Wi 阅读全文
posted @ 2018-12-26 19:47 黑月教主 阅读(372) 评论(0) 推荐(0) 编辑
摘要: 原文发表于百度空间,2009-03-29 PspCidTable的攻与防,其实就是进程隐藏与检测所涉及到的一部分工作~~不管基于PspCidTable的进线程检测,还是抹PspCidTable进行进程对象的隐藏,都涉及到对PspCidTable的遍历.所以如何安全正确地遍历PspCidTable才是 阅读全文
posted @ 2018-12-26 19:45 黑月教主 阅读(844) 评论(0) 推荐(0) 编辑