我是靠谱客的博主 动人眼神,最近开发中收集的这篇文章主要介绍花指令免杀,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

最近开始研究免杀技术,首先强烈推荐《黑客免杀攻防》一书,作者写的很接地气,非常有实战性的一本教材。我看了之后,对其中的一些思想和用到的技术比较有共鸣,是这段时间难得坚持看的一本书。

 

免杀中有一种花指令技术,意思就是将可执行文件反汇编,然后加入自己写的一串看似没有意义的,但是可以打乱执行顺序,从而不被杀毒软件捕获的一种技术。按照书中开始实战,但是发现有问题。每次用ollydbg加载可执行文件后会发现文件的首地址每次都发生变化,下面是第一次加载文件,ollydbg自动停在入口点上 ,地址是00FA178A:

 

下图是第二次加载文件,ollydbg自动停在入口点上 ,可以发现入口地址明显发生了变化。


 

 

入口地址的随机变化直接影响到了花指令能否正常使用,因为不管我们添加多少汇编代码进去,最后还是得跳转回到程序的原本入口地址的,如果不是一个固定的值的话,可以说这条路就走不下去了。后来突然想到我的操作系统是win7,是不是因为系统的安全特性导致的,记得以前在《0day安全:软件漏洞分析技术》中看到过一些,google发现果然是,微软称之地址随机化(ASLR),解决思路也很简单,因为win7地址随机化要能正常运行必须满足两个条件,其一操作系统支持(比如xp就不支持),其二,被添加花指令的程序在编译的时候就去掉这个选项(ASLR是个默认的编译安全选项),具体可以参考:http://www.freebuf.com/articles/system/15149.html?umynkbzrsrpldnrp

 

由于可执行文件是我自己写的,所以我很顺利的在编译属性中找到了这个编译选项,直接变为否即刻,见下图:


 

至此一个问题解决了,但是追求真理的过程永远不可能一帆风顺,接下去又碰到了个问题,但是我至今不知道为什么。问题是这样的,当我用ollydbg插入可执行代码,并保存回源文件后,第一次打开源文件会发现原本我修改的那些代码完全变了个样子,根本不是我插入的样子了,下图是我第一次插入的代码:


 

保存到可执行文件后,重新打开就变成了:


 

然后再次打开后,再重复同样的操作就没有问题了,虽然对花指令免杀的实战没有多大影响,最多是流程上多了一步,但我很想知道这个背后的原因,有哪位高人知道的望指教!

 

最后

以上就是动人眼神为你收集整理的花指令免杀的全部内容,希望文章能够帮你解决花指令免杀所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(51)

评论列表共有 0 条评论

立即
投稿
返回
顶部