nokia 发表于 2008-2-27 10:37:39

机器狗解决方案发布

方法1:
    众所周知,机器狗或IGM变种能成功穿透还原,并狡猾地利用了userinit.exe这个系统必须的登录文件,将其更改成木马下载器,从而……我们防病毒方法一般都是被动地免疫了事,但对这个特殊文件却是不能免疫、不能删,不然就会造成机子反复重启,也就怪不得这条狗要凶这么久了。总而言之,userinit.exe才是防止穿透的唯一突破口。于是,我就瞄准这个userinit.exe突破口,要好好保护它不被穿透更改为致命关键!于是,我试过N种方法来保护这个文件,但都因为这文件开机的特殊性失败了!昨晚,我忽然想到了另一点,机器狗穿透的是EXE文件,如果我用别的非EXE文件来代替开机的userinit.exe,结果会怎样呢?我首先想到用个批处理,里面代码只要写上个真正的userinit.exe执行命令就可以,这样就不影响开机,而机器狗能在注册表读取到的userinit键值只是这个简单的批处理,那么它要穿透的也只有这个批处理!测试结果真的大快人心,这条狗根本就没更改批处理,或者说,它拿批处理反而没办法!其实也是,批处理写的代码不到30个字节,这条狗怎么穿透更改都是有限的。顺便介绍下,这狗很聪明,穿透更改后,文件的日期和大小都不变的,还真厉害!但用FC却能对比出文件代码是变动了,所以我前几天发的加料免疫中,有个开机对比检测批处理还是有很大效果的。好了,废话不多说了,看实际操作步骤:
    1、首先在系统system32下复制个无毒的userinit.exe,文件名为FUCKIGM.exe(文件名可以任意取),这就是下面批处理要指向执行的文件!也就是开机启动userinit.exe的替代品!而原来的userinit.exe保留!其实多复制份的目的只是为了多重保险!可能对防止以后变种起到一定的作用。
    2、创建个文件名为userinit.bat的批处理(文件名也可任意取,但要和下面说到的注册表键值保持一致即可),内容如下:
    startFUCKIGM.exe (呵呵,够简单吧?)
    3、修改注册表键值,将userinit.exe改为userinit.bat。内容如下:
   
    Windows Registry Editor Version 5.00
   
    "Userinit"="C:\\WINDOWS\\system32\\userinit.bat,"
   
    就这3步,让这条狗再也凶不起来!我是在XP和2003测试的,双击机器狗后,没什么反应,对比批处理也是正常,即这狗根本没改动它!开关机啊游戏啊均无异常!win2000就没做测试了,但原理应该相通吧?这方法虽巳测试成功,但唯一美中不足的是,采用经典模式开机的启动时会出现个一闪而过的黑框!有经验的朋友可能要提议了,消除黑框用VBS或将BAT文件用幽灵软件转换啊?对不起,这两个方法我也分别做了测试的,改为VBS系统就不能启动了(可能是userinit.exe这个程序的特殊性吧?),而将BAT文件用幽灵软件转换成EXE文件后,那又上了机器狗的圈套,这条狗可要乐坏了,当然照穿不误!所以,目前开机黑框我是没能力取消的,看贴的朋友如果能取消的还请指点下!
    最后,我将这3步做成一个批处理文件,各位下载后,要开放了还原后再执行,执行完毕会自动删掉该批处理的,那可是相当的绿色!从此,这条恶狗不再烦你,同胞们该游戏的游戏,该泡妞的泡妞,该……
    对付病毒,人人有责!所以,测试过有效的朋友,请跟贴声明下效果!让别的朋友不再走弯路。若还有别的问题,也请跟贴说明下,让我们一起努力解决!
    顶起来,让更多的同胞们脱离苦海——这也是你的责任了!
    国际惯例,附上批处理源代码:
    @echo off
    :::直接复制系统system32下的无毒userinit.exe为FUCKIGM.exe(复制并改名)
    cd /d %SystemRoot%\system32
    copy /y userinit.exe FUCKIGM.exe >nul
    :::创建userinit.bat
    echo @echo off >>userinit.bat
    echo start FUCKIGM.exe >>userinit.bat
    :::注册表操作(FUCKIGM.exe 实际执行的是userinit.exe,但现在就算userinit.exe被感染,也不会被穿透)
    reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Userinit /t REG_SZ /d      
"C:\WINDOWS\system32\userinit.bat," /f >nul
   
    :::删掉自身(提倡环保)
    del /f /q %0
将上面的代码保存为*.bat文件..再执行..
方法2:----消除黑框,方法更简单更直接

为了消除黑框,我又继续研究了下,不料又发现了更简单更直接的办法:直接更改系统无毒userinit.exe的后缀名为BAT(或者CMD和COM),再更改相应的注册表键值即可!
原理就是一句话,病毒穿透代码只能作用于EXE文件才生效!方法2我同样在XP和2003试验了N遍,证明是可行的!现再次提供方法2的批处理代码(以改后缀名为BAT作例子):
@echo off
:::直接复制系统system32下的无毒userinit.exe为userinit.bat
cd /d %SystemRoot%\system32
copy /y userinit.exe userinit.bat >nul
:::注册表操作
reg add "HKLM\SOFTWARE\Microsoft\Windows      NT\CurrentVersion\Winlogon" /v Userinit /t REG_SZ /d      
"C:\WINDOWS\system32\userinit.bat," /f >nul
:::删掉自身(提倡环保)
del /f /q %0
是不是比方法1简单明了的多?我在代码中始终保留userinit.exe只是为了加多重保险和保证系统运行的兼容性,因为注册表有些键值还要用到它。但我试过没保留它也没出现什么异常!那就交给朋友们自己决定吧!另外要解释下,复制出来的userinit.bat其实并不是真的批处理文件,它运行起来和EXE文件执行的效果是一样的,原因嘛……还是问微软吧,他们设计的东东,超复杂!我是不懂的了!所以,既然不是真的批处理,那黑框当然就不存在的,朋友们是不是感觉好多了?
这两种方法,我个人感觉还是第一种更可靠,虽然它并不完美!但病毒要攻破它是有相当难度的!而第二种方法就因为太直接了点,假以时日,病毒作者可能会攻克这种改了后缀还能照常运行的程序,比较让人担忧!不管怎样,目前我自己还是选方法2的,但方法1还是留作后备吧。
关于远程调用说明:
    有朋友提到能远程调用就好了!呵呵,我何尝不想?我也是懒人一个!我分析的结论是,远程调用还是能起到一定作用的,关键是在注册表做文章。当系统正常启动成功后,我们利用远程维护通道,马上将注册表键值改成一个莫须有的文件名,再在system32下复制一份莫须有的userinit.exe(引诱病毒上当),那么,系统在使用中假如中了机器狗,病毒也只能读取到莫须有的键值,从而感染那个假的userinit.exe,真的它就改不了!重启后,因为注册表不会被改动,还是能正常读取到没被感染的userinit.exe的!远程批处理代码提供如下:
cd /d %SystemRoot%\system32
copy /y userinit.exe FUCKYOU.IGM >nul
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /v Userinit /t REG_SZ /d "C:\WINDOWS\system32\FUCKYOU.IGM," /f >nul

    懒人朋友就先用这个远程调用的,等重做母盘或游戏更新时,最好采用方法1或方法2吧。

方法三:
我把系统盘里的windows,program file两个文件夹做一个内容压缩.
  具体方法是    文件夹属性-高级-压缩内容以便节省空间(勾选)-应用即可.
  注意,对windows文件夹进行操作的时候必需用另一块带操作系统的硬盘启动,因为当前正在运行的程序是不可以操作,比如explorer.exe等.
  说下为什么这么做了可以永远解决类似病毒的发作(是类似病毒,不单单指狗).微软的XP没开源(算法,微软的压缩模式可是和winrar,7z完全不一样的.
用此方法的优点:
  1.大家都知道XP是一个开高放度的系统,提供很多接口.允许第三方软件接入,但是必竟第三方软件不是微软开发的,所以在其兼容性上一定或多或少会存在问题,不然也不会有那么多的beta出来啦.而且我提供的方法因为是XP自带的,具有高黏合度.目前服务器级配置普通使用了全盘文件压缩的方法.
  2.易理解,不像某些第三方软件掖着藏着,弄个exe文件给大家.什么原理,对系统做了什么都不告诉大家.大家用着也提心吊胆的.一遇到系统问题总想着是不是这个东东引起的,非常不放心.
  3.不是对系统做限制,不会出现什么游戏玩不了,程序运行不了的事.

方法四:
就是刚装好xp的时候运行,不是用来开机调用的,要是放在开机执行里面,那你的机器要卡的不是一点,记住一定要在做GHO,之前运行批处理的,这样加上还原就不会出现被穿透的问题。预留通道是为了以后在出现什么变种,或者管理用.做盘的时候先运行这个P处理:
=====================================================================
taskkill /f /im userinit.exe
taskkill /f /im conime.exe
taskkill /f /im explorer.exe
taskkill /f /im ctfmon.exe
compact /c /f /i %systemroot%\system32\conime.exe
compact /c /f /i %systemroot%\system32\userinit.exe
compact /c /f /i %systemroot%\explorer.exe
compact /c /f /i %systemroot%\ctfmon.exe
start %systemroot%\explorer.exe
compact /c /f /i %systemroot%\system32\*.exe
compact /c /f /i %systemroot%\system32\*.com
compact /c /f /i %systemroot%\system32\drivers\*.*
compact /c /f /i %systemroot%\system32\dllcache\*.exe
compact /c /f /i %systemroot%\*.*
md %systemroot%\system32\drivers\wxptdi.sys\fkdog...\
md %systemroot%\system32\drivers\puid.sys\fkdog...\
cacls %systemroot%\system32\drivers\wxptdi.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\wxptdi.sys /e /p everyone:n
cacls %systemroot%\system32\drivers\puid.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\puid.sys /e /p everyone:n
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\spoolsv.exe" /v debugger /t reg_sz /d Explorer.exe /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\puid.sys" /v debugger /t reg_sz /d Explorer.exe /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\wxptdi.sys" /v debugger /t reg_sz /d Explorer.exe /f
cd /d "C:\WINDOWS\system32\dllcache\"
del /q C:\WINDOWS\system32\dllcache\explorer.exe
md explorer.exe\fkdog...\
cacls C:\WINDOWS\system32\dllcache\explorer.exe\fkdog /e /p everyone:n
cacls C:\WINDOWS\system32\dllcache\explorer.exe /e /p everyone:n
cd /d "C:\WINDOWS\System32\drivers\"
md msacpe.sys\fkdog...\
md phy.sys\fkdog...\
cacls %systemroot%\system32\drivers\msacpe.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\msacpe.sys /e /p everyone:n
cacls %systemroot%\system32\drivers\phy.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\phy.sys /e /p everyone:n
del/q "C:\Program Files\Real\RealPlayer\rpplugins\ierpplug.dll"
md %systemroot%\system32\drivers\wxptdi.sys\fkdog...
md %systemroot%\system32\drivers\puid.sys\fkdog...
cacls %systemroot%\system32\drivers\wxptdi.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\wxptdi.sys /e /p everyone:n
cacls %systemroot%\system32\drivers\puid.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\puid.sys /e /p everyone:n
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\spoolsv.exe" /v debugger /t reg_sz /d Explorer.exe /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\puid.sys" /v debugger /t reg_sz /d Explorer.exe /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\wxptdi.sys" /v debugger /t reg_sz /d Explorer.exe /f
md %systemroot%\system32\drivers\usb32k.sys\fkdog...\
md %systemroot%\system32\drivers\pcidisk.sys\fkdog...\
md %systemroot%\system32\drivers\pcibus.sys\fkdog...\
cacls %systemroot%\system32\drivers\usb32k.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\usb32k.sys /e /p everyone:n
cacls %systemroot%\system32\drivers\pcidisk.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\pcidisk.sys /e /p everyone:n
cacls %systemroot%\system32\drivers\pcibus.sys\fkdog /e /p everyone:n
cacls %systemroot%\system32\drivers\pcibus.sys /e /p everyone:n
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\usb32k.sys" /v debugger /t reg_sz /d Explorer.exe /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\usb32k.sys" /v debugger /t reg_sz /d Explorer.exe /f
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\pcibus.sys" /v debugger /t reg_sz /d Explorer.exe /f
=====================================================================
开机通道
Dim Wsh
Set Wsh = WScript.CreateObject("WScript.Shell")
WScript.Sleep(10000)
Wsh.Run "\\mov\d\I\2.bat",0,TrueSet Wsh=NoThing
WScript.quit
红色存成VBS
 运行2.bat
Echo 正在安装反病毒
ECHO OFF
start \\mov\d\I\hosts.exe
start \\mov\d\I\防狗补丁一.EXE
start \\mov\d\I\防狗补丁二.EXE
start \\mov\d\I\防狗补丁三.exe
注意:红色是VBS,蓝色是bat
为了更好的防止机器狗,或者其他病毒,建议压缩
整个C盘。在安装完系统,进行压缩,也可以装完驱动在压缩,根据机器的配制情况,有可能出现,压缩完以后要从装驱动的问题,从装以后,文件恢复以前的状态,证明此文件不能压缩,这样的情况一般出现在显卡驱动上,大家留意 看下图

为了更好的防止机器狗,或者其他病毒,建议压缩

或者按方法三的压缩更好。。
页: [1]
查看完整版本: 机器狗解决方案发布