读书笔记_Rootkit技术_深入补丁

本文介绍了如何通过在函数内部特定代码字节处打补丁来规避检测的技术细节。包括选择补丁位置的方法、如何对身份验证函数进行修改以提供持续访问权限、以及如何通过内核函数补丁实现潜行等高级技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

之前介绍的都是在函数的入口处进行代码补丁,因为在内存中很容易找到函数,所以这个方法很容易实现。但anti-rootkit也同样容易检测到这种补丁,因为它可以只检查函数起始的20个字节的完整性就能够发现是否被打补丁。若将代码改动置于初始的20个字节之后,那么这些软件就无法检测到。

可以通过搜索函数中特定的代码字节来进行打补丁。如果这些代码是唯一的,那么只需要在内存中搜索它们并对其打补丁。如果代码不是唯一的,可以参照其附件代码中是否有唯一的,但要注意需要准确的命中,否则就不会达到你所需要的效果或引起系统的崩溃。

身份验证函数也是进行代码修改的好位置,可以将它们完全禁用以便始终提供访问能力,更复杂的补丁能够允许后门口令或用户名。

通过内核函数的补丁可以为已安装的驱动程序和软件程序提供潜行,一个非常合适的补丁位置是启动内核自身的引导程序,可以对完整性检查函数打补丁使得它们无法再检测特洛伊木马或修改的文件。网络函数的补丁可用于嗅探报文和其他数据。固件和BIOS的补丁则是难以检测的。

在打补丁和插入代码时可能需要插入大量新的指令,从驱动程序的角度来说,最好的处理方式是为其分配不分页地址池中的内存。但对于更秘密的补丁来说,可能会希望将代码放入未用的内存中。许多内存页底端都有未用的内存段,使用现有页面的这些较低区域有时称为空穴感染(cavern infection).

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值