第二十六章子母病毒
云飞和凯伦同时从计算机面前站了起来凯伦看着萧笑,根据萧云飞刚才编写病毒的表现,凯伦觉得,这个人绝非等闲之辈。
萧云飞笑了笑:“凯伦,现在我们就交换彼此的病毒程序,谁能够率先成功地消灭对方的病毒,谁就胜出……”
凯伦点了点头:“好!”
两个人彼此交换了计算机,萧云飞在电脑前坐了下来,进入到虚拟系统中,他将凯伦的病毒程序拖曳到虚拟系统的桌面上,然后开始了他的分析病毒之旅。
对于大多数病毒而言,杀毒的思路其实很简单,具体步骤大致分为“三步走”,终止病毒的进程,删除自启动项目,删除病毒文件。
当然,对设置了件关联的病毒而言还要修改注册表,恢复被关联的文件。
虽然说很多语言都可以写杀毒程序,但是现如今大多数的杀毒软件还是采用的是c、c++和汇编语言编写而成,如果不用设计杀毒软件的图形界面,针对病毒的特性编写一款专杀程序,其实并不是很困难。
当然,编写专序的时候你需要了解病毒的工作原理,比如病毒是如何隐藏、保护自己,如何加入自启动项,如何修改注册表信息等等,清楚了病毒的工作原理后,你才能根据其特性根据思路编写具有针对性的专杀程序。
所以,编写病毒专杀程序,你得对病毒程序进行深入的分析。
凯伦的病毒程序并未加,通过反汇编,萧云飞很容易就得到了这个病毒的源代码。萧云飞笑了笑,这个凯伦对他的病毒就这么有自信?他竟然完全不用加密算法?
经过析云飞对凯伦地病毒好像有一种似曾相识地感觉。
嵌入性病毒?萧云飞地海中突然闪过一个念头。对。这个病毒和自己以前遇到地那个级病毒竟然十分相似!
通过测试。这个病毒地主要作用在于感染系统内所有地可执行文件。一旦运行了该病毒程序。仅仅三十秒。它就会感染系统内全部可执行地exe文件。
这个病毒地源码有一段修改可执行程序地代码。这段代码地目地在于篡改程序地指针序列。可执行地程序有一段指针序列过指针序列可以决定一个可执行程序地执行结果。这个病毒修改程序地指针指向。将可执行程序中包含地指针全部指向该病毒。
也是说。任何可执行程序一旦运行。那么它先执行地就是这个病毒程序。通过篡改程序指针序列病毒到原程序成为合法程序地一部分。
萧云飞摇头笑了笑。虽然这个病毒也很厉害。但是它与萧云飞之前遇到地那个级病毒相比却要逊色许多。
虽然这个病毒也采用了多态性技术是它的多态性却相对单一了很多。多态性的目的在于赋予一个病毒多种形态,比如病毒以哪一种形式隐匿在系统文件中,它有点相当于变色龙的皮肤。
萧云飞翘起嘴巴笑了笑,对付病毒的多态性早已经深有体会,针对病毒的多态性要编写相应的狙杀代码,他应该算得上轻车熟路。
萧云飞以前为了应对那个级病毒而编写的程序代码还存储在自己的ftp空间,所以他用不着自己去费力编写代码,所以,他连上了网络。
凯伦面对萧云飞的病毒程序却犯难了云飞病毒的作用很简单,它就是为了感染系统所有的ord文档和后缀名为的图片。
但是在分析病毒的第一步伦却彻底傻眼了,因为他不能对病毒程序就行反汇编管用什么方法和什么反汇编的软件,反汇编出来的结果都是乱码!
要对程序进行加密其实不难过使用各种函数和命令就可以对程序进行加密,比如在程序代码中用户名判断代码或者序列号判断代码即可对程序的使用者进行限制,只有在输入了正确的用户名和序列号方能继续使用程序。
程序的算法虽然可以做得到牢不可破,但是编写者却没有办法防止爆破,一个程序的使用总是要读取一些信息的,譬如用户名,序列号,注册码之类,如果破解者找到函数入口爆破掉就解决了。
也是说,大多数的程序的加密是针对某一个程序模块进行的加密,通过脱壳、跟踪、分析,你也可以得到程序解密的方法。
尽管现在也有很多办法可以提高程序破解的难度,但是这也仅仅只是提高难度而已,对于真正的高手,要想破解程序其实并不困难。
要破解一个程序,那么你先得分析程序的源代码,但是,萧云飞的病毒通过反汇编后竟然全部是乱码。
要知道对一个asp文件加密很容易,但是要对一段病毒加密就并非我们
的那么简单了。