- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
蠕虫病毒原理与查杀机制分析与设计
蠕虫病毒原理与查杀机制分析与设计
摘要:本文通过对VBS蠕虫病毒运行原理进行分析,设计了基于C++程序的专杀工具,并提出防范蠕虫病毒的防范方法。
关键词:VBS 蠕虫病毒 专杀工具
中图分类号:TP309.5 文献标识码:A 文章编号:1007-9416(2014)04-0189-01
1 蠕虫病毒的原理
1.1 什么是蠕虫病毒
蠕虫病毒是具备自我复制功能和传染功能的对系统具有破坏性的一种计算机程序,一般是通过计算机网络传播并感染网络上其他计算机的。蠕虫一般无需宿主程序,主要借助网络和电子邮件进行拷贝和传播自己,传播的过程中有时还会发生变种,具有一定的危害性。蠕虫病毒和传统意义上的计算机病毒存在很大的区别:由于不需要宿主程序,蠕虫病毒书写简单,甚至有人专门写出蠕虫病毒生成器,成为一些初级黑客的常用工具;当前网络飞速发展使得蠕虫病毒传染性达到难以控制的程度,但是同样由于蠕虫病毒的编制简单,使得我们查看它的代码并最终清除它变得相对简单。
1.2 蠕虫病毒的原理
我们以VBS蠕虫病毒为例介绍蠕虫病毒的设计方法。VBS病毒能够直接使用Windows组件,从而接管注册表和系统文件的掌控权,因而VBS蠕虫病毒对系统的破坏性极大,可能会造成网络拥堵、冗余的文件充斥系统,拖慢系统速度。如果系统中存在大量扩展名为vbs或vbe格式的文件,同时进程管理器中wscript.exe在运行,且系统速度很慢。那么很可能是中了VBS蠕虫病毒。
(1)VBS复制自己。VBS蠕虫病毒通常是借助复制自己的方法来感染其它文件的。其基本原理是是首先生成一个文件系统对象,然后将病毒程序复制到文件中,并修改文件名后缀为vbs,文件名前缀不定。
set temp=CreateObject(“scripting.filesystem”)
temp.GetFile(wscript.scriptfullname).copy(“.\tmp.vbs”)
上述程序描述了程序进行自我复制的原理。只需在病毒程序中加入上述程序段就能够实现病毒的自我拷贝了。
(2)VBS蠕虫病毒修改注册表。众所周知,存在于物理磁盘上的病毒本身是没有随机启动功能的,必须将病毒信息写入注册表的启动项才能真正劫持系统。VBS蠕虫病毒修改注册表的过程并不复杂。代码如下:
Dim Reg
Set Reg=CreateObject(wscript.Shell)‘把数据写入注册表在启动项中增加病毒项
Reg.RegWrite HKLM\Software\Microsoft\Windows\ CurrentVersion\Run\temp,%systemroot%\temp.vbs
(3) VBS蠕虫病毒调用外部程序结束杀毒软件。
Set vShell=CreateObject(wscript.Shell) ‘创建shell对象
vShell.Run “taskkill /f /im 360safe.exe”,0,TRUE ‘结束正在运行的安全防护软件
这个功能使得大部分Windows操作都可以在程序中实现,比如结束杀毒软件、格式化磁盘,给系统造成毁灭性的破坏。
2 蠕虫病毒查杀设计和分析
众所周知,杀毒软件是通过辨别文件的特征码来确定病毒的,杀毒厂商把特征码的集合在一起设计成病毒库。我们可以提取特定病毒的特征码设计专杀工具,一般我们用记事本程序或UltraEdit程序来提取特定的病毒特征码:
程序偏移地址:0x0C50
特征码长度:0x20(32)
特征码内容:
36 31 31 32 30 78 2E 39 73 41 0A 5C 2E 5C 53 65
8B 98 5B 1B 5 21 76 36 2E B0 38 3C 73 83 30 64
bool scanvir(const char *file,long ofset,int lenth,char *wormvir)
{
FILE *fPtr=NULL;
int a=0;
char temp[255];
memset(temp,0,255);
bool b=false;
fPtr=fopen(file,rb);
if(!fPtr) goto novir;
fseek(fPtr,ofset,SEEK_SET);
fread(temp,lenth,1,fPtr);
a=memcmp(wormvir,temp,lenth);
b=!a;
novir:if(fPtr)
{fclose(fPtr); fPtr=NULL;
您可能关注的文档
最近下载
- 智能制造精益生产与智能制造的融合.pptx VIP
- 汽车热管理管路深度报告:新能源管路空间大幅提升,塑料应用高速增长.docx VIP
- 01.2021U9Cloud多组织入门培训-基础设置.pptx VIP
- 学校校长公开选拔笔试试题及参考答案校长招聘考试笔试真题及答案.docx VIP
- 2025年央国企AI+数智化转型研究报告.pdf VIP
- 2025年疾控中心招聘试题及答案.docx VIP
- 道家打坐的正确方法.doc VIP
- 2024-2025学年初中音乐七年级上册(2024)人音版(2024)教学设计合集.docx
- 智能毕业设计:基于单片机的电子时钟设计.docx VIP
- 2024年贵州社区工作者招聘真题 .pdf VIP
文档评论(0)