![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
读病毒 写病毒
文章平均质量分 70
followingturing
这个作者很懒,什么都没留下…
展开
-
病毒编写教程—2
;--------------------------------------------------------------------------- ; SetFilePointer 使文件指针指向一个打开的文件。 ; ; DWORD SetFilePointer( ; HANDLE hFile, // 文件的句柄 ; LONG lDistanceToMove, // 需要移动文件指针的字节数 ; PLONG lpDistanceToMoveHigh, // 要移动距离的高位字 ; ; DWORD dw转载 2010-09-02 13:47:00 · 1421 阅读 · 0 评论 -
关于PE病毒编写的学习(二)
<br />这篇说一下,PE病毒需要那些技术积累,以及这些技术的学习方法和重点是什么。<br />1.先说汇编吧<br /> 其实我说的汇编关于两个方面:汇编语言设计 和 微机原理<br /> 汇编语言设计,它也是两方面: 常规教材讲的 和 病毒的技巧<br /> 常规教材上讲的基本都得学会,最基本的8086/8088肯定都得会,各种书籍视频很丰富,学起来不难。80x86也是必须得学,建议看一下《80x86汇编语言程序设计》(杨季文著,清华大学出版),这本书的后半本写的很精彩,转载 2011-03-17 17:05:00 · 902 阅读 · 0 评论 -
关于PE病毒编写的学习(八)——定位API的N种方法
<br />由于大部分的文件感染型病毒框架都不可以像“前置病毒”那样拥有自己的输入表,因此需要自行定位API<br />说一千道一万,想要定位API,大方向是要定位Kernel32.dll的基地址。<br />总结所以这些方法,可以分为是五个小方向,它们又产生很多变种。<br />一、定位kernel32.dll基地址的方法<br />(1)硬编码方式<br /> 由于kernel32.dll的基地址在相同版本windows下,基本上它的位置是固定的。这种方法在早期的PE病毒中很常见,现在已经很少使用转载 2011-03-17 17:13:00 · 861 阅读 · 0 评论 -
关于PE病毒编写的学习(六)——关于PE文件结构操作的程序编写
<br />对PE文件结构的各个值定义和作用,这里不提了,网上资源很多,百度一下就好了。所以,本章只说一下,作为代码编写者对PE文件结构操作的方法和技巧。<br />还是通过改进代码,来体会一下吧。<br /> 你应该记得前面的BOOL IsPEFile(HANDLE hFIle) 这个函数吧,它的作用是判断文件是否为PE格式文件。它把文件句柄作为参数,虽然许多函数需要文件句柄这个参数,但是作为对PE文件结构操作的函数,这样做是不恰当的,因为如果这样做就要频繁的使用SetFilePointer()、Rea转载 2011-03-17 17:12:00 · 674 阅读 · 0 评论 -
关于PE病毒编写的学习(七)——重定位的谬误和它的正确写法
<br />1.为何需要重定位?<br />病毒的生存空间就是宿主程序,而因为宿主程序的不同。所以病毒每次插入到宿主程序中的位置也不同。那么病毒需要用到的变量的位置就无法确定。所以这就是病毒首先要重定位的原因。在我们编写程序的时候,所用到的变量的位置都是相对与程序某一个位置的偏移,正常的程序加载的地址是唯一的,所以它们不需要重定位。而病毒的加载是随机的所以就有了重定位的过程。虽然加载的位置不一定,但是变量到某一个位置的偏移却是固定的。所以重定位的基本原理就是找到这个特殊的位置。具体的方法有很多种。这里说几种转载 2011-03-17 17:11:00 · 1098 阅读 · 0 评论 -
关于PE病毒编写的学习(四)——关于历遍磁盘的讨论
<br />在上一章中的“前置病毒”中,由于它只是一个测试病毒,因此该病毒只是搜索病毒文件所在文件夹的exe文件。<br />显然,为了让它具有更好传染性,能够历遍整个磁盘或某些重要文件夹的特性,是十分重要的。<br />开始讨论历遍之前,先让我们来改进原来的代码<br />首先在上一章的代码中,只要结尾是“.exe”的文件就被判断为"可执行程序",这种方法在大多数情况下是正确的,但是如果程序经过压缩或加密后,该文件的PE结构会有改变,虽然它实际上让然能履行可执行程序的功能,但针对PE文件的操作可能出错。因转载 2011-03-17 17:09:00 · 619 阅读 · 0 评论 -
关于PE病毒编写的学习(三)
<br />历史上,在windows95发布后,用高级语言编写的外壳病毒,经过简单地改造编译,就能从DOS平台迁移到windows平台上。<br />并且在这当中很多“前置病毒”,仅仅需要重新编译。<br />另外之所以用“前置病毒”作为第一分析样本,理由如下:<br />1.它具有基本病毒功能模块,这些模块在文件型病毒中是通用的<br />2.其框架结构,所需病毒技巧极少<br />3.拓展方便,通过不断地加入新功能,循序渐进的学习各种病毒技巧<br />4.加载新模块方便,适合测试其它病毒的某些功能模块转载 2011-03-17 17:08:00 · 910 阅读 · 0 评论 -
关于PE病毒编写的学习
<br />首先声明,因为害怕被删帖,我肯定不会展示正确完整病毒代码,但是会介绍可行的学习方法。<br /> <br />网上有很多关于介绍PE病毒编写的帖子,但基本上都是分析源码FunLove和《计算机病毒分析与对抗》中PE病毒的代码翻版。事实上这两个代码是用于原理展示,前者根本通不过编译,后者编译后并不能正确运行,虽然有部分帖子对其做了修改,受到正统汇编教材代码的影响,导致其修改方法是错误的。<br /> <br />关于病毒编写充满了各种各样的迷信和谬论,因此在学习的过程中,我走了不少弯路,让我来一一转载 2011-03-17 17:04:00 · 851 阅读 · 0 评论 -
关于PE病毒编写的学习(九)——追加病毒的编写(上)
<br />OK,兑现我的承诺,从本章开始讲述“追加病毒”的编写方法。我们将实现一个只弹出对话框的良性病毒,但是考虑到这个代码可能造成的危害,我会在感染模块中写入一个小Bug。不过,对于大家的学习是毫无影响的。<br /> 回到正题,先介绍一下“追加病毒”,在DOS时代中,这种病毒相当常见。由于.com文件的入口点是固定的,而且我们知道DOS平台程序可以随意使用中断,因此追加病毒只要将病毒代码追加到宿主文件尾,然后修改入口点代码成“jmp [病毒入口点]”,病毒执行完成后,再jmp到宿主程序。<br />转载 2011-03-17 17:14:00 · 650 阅读 · 0 评论 -
关于PE病毒编写的学习(五)——病毒如何做标记和记录信息
<br />1.做标记和记录信息的区别<br /> 做标记:它是为了其它病毒识别自己,而在固定或符合一定规则的位置上记录的符号信息。<br /> 记录信息:它是为了病毒本身正确运行,而存储的某些信息,甚至是部分代码,比如解密程序的随机密匙、所感染宿主文件的某些信息<br />2.那些地方可以做标记和记录信息<br /> (1)可标记的位置<br /> 1/程序的入口区域和尾部区域;并非一定是开头和结尾,比如<br /> VirusStart:<br />转载 2011-03-17 17:10:00 · 741 阅读 · 0 评论 -
病毒测试代码
病毒测试代码: 欧洲计算机防病毒协会提供的测试病毒代码。本代码尽管测试,无任何危险。 ---------------------请复制下面的代码到文本中保存------------------- X5O!P%@AP[4/PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H* ---------------------请复制上面的代码到文本中保存------------------- 测试方法: 1.鼠标右键点击桌面空白处,创建一个“文本文档”。 2.转载 2010-12-07 12:45:00 · 1732 阅读 · 0 评论 -
病毒编写教程—3
lea esi,dword ptr [ebx+top_chain] ; ESI = Ptr to stored variable lodsd ; EAX = Top Chain xor edx,edx ; EDX = 0 xchg [eax],edx ; Top Chain = NULL ; EDX = Address of Top Chain pushad call Infection popad mov [eax],edx ; Restore Top Chain这个简单多了,啊?:)所有的概念("Hoo转载 2010-09-02 13:45:00 · 2854 阅读 · 0 评论 -
病毒编写教程—1
<br />声明】 <br />~~~~~~~ <br />作者对因对此文档使用不当而造成的任何损失概不负责。这篇教程的目的是教会人们编写病毒和防护一些破坏力大的病毒的破坏。这篇教程仅作为教学目的。所以,如果有人利用这篇文章编写了破坏力很大的病毒,我可不负责任。如果通过这篇文章你看到我鼓励人们破坏数据的字眼,先去买副眼镜再说。 <br />【介绍】 <br />~~~~~~~ <br />亲爱的同志们,大家好,你还记得Billy Belceb的病毒编写教程吗?那是一篇关于过时的MS-DOS病毒的教程。在那篇原创 2010-09-02 13:37:00 · 3012 阅读 · 1 评论 -
关于PE病毒编写的学习(十)——追加病毒的编写(下)
<br />原本这一篇应该和上一篇同时发,但是我的原来代码写得很烂,而且由于我的目标是编写一个“追加病毒”框架,代码又要具备良好的模块特征。这两天改来改去,已经头脑混乱了,所以还是先发文章把原来的代码挂上,有时间再改,我会配上说明。<br /> 另外提一句,我把一个bug写再AddSection这个函数里,很多教学码也故意写这个错误,这个错误本意是修改由于PE文件头的修改使“xx值”应适当变化,实际写入的是空位置,这个值不应该变化,这个画蛇添足的行为会导致被感染文件出现一个对齐问题的错误,使系统认为它不是转载 2011-03-17 17:15:00 · 827 阅读 · 0 评论