在0环对3环的反调试中,最常用的应该就是DebugPort清零。先介绍一下这个DebugPort是什么东西。当调试器附加一个进程时,会调用NtDebugActiveProcess附加进程,这个函数会调用DbgkpPostFakeProcessCreateMessages告诉调试器创建调试线程(DbgkpPostFakeThreadMessages)并加载调试所需模块(DbgkpPostFakeModuleMessages),然后再调用DbgkpSetProcessDebugObject,这个函数会把DebugObject设置到进程_EPROCESS.DebugPort下。 这个调试对象可就很有用了,在调试过程当中,0环会通过这个对象将调试信息发送到三环调试器,那同样意味着我们对这个位置的清零会使三环调试器接收不了任何调试信息,以此实现了反调试。
驱动实现内存读写
在一些强对抗环境下,当我们试图在三环下用API去读取别的进程的内存往往会收到诸多限制,比如r3花式hook,r0句柄降权,改进程结构体等等等等,稍微有些保护就可以使得 ReadProcessMemory、WriteProcessMemory 这些API失效,因此需要设计驱动能在r0层读写内存。
数据结构课设——赫夫曼编码译码器
CSGO辅助制作思路与VAC保护分析
极客大挑战 2020 Re Write up
湖湘杯 2020 WriteUp
“红蜻蜓”跑步APP逆向分析与数据伪造思路
因为某些特殊原因,本篇隐藏 原因懂得都懂(
“西湖论剑” 2020 WriteUp By NepNep
“花式扫雷” 辅助制作
队里来了好几个挂佬,这个暑假跟着他们学习了一些辅助制作的技巧。我把其中部分常用的技巧整理出来用扫雷这款游戏实现了一遍,然后写了这篇文章。至于为什么选扫雷这款游戏呢,首先这款游戏是我见过的第一款电脑游戏,又是我学习外挂制作过程中用于学习的第一款游戏,非常有纪念意义。而且,这款游戏非常简单,但是其组成部分又非常完整,“麻雀虽小,五脏俱全”,可以用各种各样的方式对其实现外挂,特别适合用作教学。