
病毒,它通过对正常的文件进行改写,增加来实现其自我复制的目的。
从程序的角度来说,我们要做的事情有两件:
1,让程序能够将自己在不影响其它游岁程序本身工作的情况下复制给其它程序,
使它具备继续复制的能力。
2,在一定条件下使其产生某种发作效果。
其实第一件事情实际上可以看成对文件进行复制,把病毒源文件的功能函数全部放到被感染
文件的最后,同时在被感染文件中调用这个函数
下面给出c语言的实现过程:
1,主程序调用病毒功能函数
2,病毒功能函数读取查找同目录下所有c文件;
3,神派睁找到一个(被感染c文件),打开它,并且将此文件全部读取到数组变量;
4,重新创建一个同名文件(被感染c文件)
5,数组变量写回这个被感染c文件,同时将病毒源文件所需要的头文件,病毒功能函数
调用语句写入;
6,打开病毒源文件,将病毒功能函数全部写到被感染c文件的最后;
这样一个简单的c语言伪病毒virus.c就完成了
运行程序后其内容羡源变化另保存为after_virus.c
此时,如果我们将1.c文件用A盘复制到其他机器或者Email给别人,结果
他们一运行又感染了他们保存1.c文件目录下所有c文件
对于第二件事情-------“发作效果”,这里只用printf语句警告了一下,当然你
完全可以写一个TSR驻留函数
其实,这个程序勉强可以叫做病毒
a、源代码嵌入攻击型从它的名字我们就知道这类病毒入侵的主要是高级语言的源程序,病毒悄裤配是在源程序编译之前插入病毒代码,最后随源程序一起被编译成可执行文件,这样刚生成的文件就是带毒文件。当然这类文件是极少数,因为这些病毒开发者不可能轻易得纯李到那些软件开发公司编译前的源程序,况且这种入侵的方式难度较大,需要非常专业的编程水平。
b、代码取代攻击型
这类病毒主要是用它自身的病毒代码取代某个入侵程序的整个或部分模块,这类病毒也少见,它主要是攻击特定的程序,针对性较强,但是不易被发现,清除起来也较困难。
c、系统修改型
这类病毒主要是用自身程序覆盖或修改系统中的某些文件来达到调用或替代 *** 作系统中的部分功能,由于是直接感染系统,危害较大,也是最为多见的一种病毒类型,多为文件型病毒。
d、外壳附加型
这类病毒通常是将其病毒附加在正常程序的头部或尾部,相当于给程序添加了一个外壳,在被感染的程序执行时,病毒代码先被执行,然后才将正常程序调入内启指存。目前大多数文件型的病毒属于这一类。
引用:
http://www.00555.com/ai_nleyole.html
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)