一、“映像劫持”愚弄系统
所谓映像劫持(IFEO)就是通过修改注册表“Image File Execution Options”项下的相关键值达到欺骗系统,进而绝杀安全软件接管系统。本来这个注册表项主要是用来调试程序的,对一般用户意义不大,但木马、病毒似乎比较钟情于它往往陷系统于不义。
1、系统、杀软被劫持
大部分的病毒和木马都是通过加载系统启动项来运行的,也有一些是注册成为系统服务来启动,他们主要通过修改注册表来实现这个目的,主要有以下几个键值:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsCurrent\Version\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Windows\AppInit_DLLs
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsCurrent\Version\RunOnce
HKEY_LOCAL_MACHINE\Software\Microsoft\WindowsCurrent\Version\RunServicesOnce
但是与一般的木马,病毒不同的是,就有一些病毒偏偏不通过这些来加载自己,不随着系统的启动运行。木马病毒的作者抓住了一些用户的心理,等到用户运行某个特定的程序的时候它才运行。因为一般的用户,只要发觉自己的机子中了病毒,首先要察看的就是系统的启动项,很少有人会想到映像劫持,这也是这种病毒高明的地方。
映像劫持病毒主要通过修改注册表中的HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\项来劫持正常的程序,比如有一个病毒vires.exe要劫持qq程序,它会在上面注册表的位置新建一个qq.exe项,再在这个项下面新建一个字符串的键debugger把其值改为C:\WINDOWS\SYSTEM32\VIRES.EXE(这里是病毒藏身的路径)。这样当我们运行QQ程序的时候其实运行的就是该病毒木马。(图1)

当然,映像劫持最可怕的是其对杀毒软件的劫持。一般是先释放一个脚本,该脚本运行后在注册表的Image File Execution Options项下修改或者添加相关的键值劫持杀毒软件的主程序。这样当系统重启后杀毒软件被终结,病毒木马就可以肆虐了。
2、反其道利用映像劫持
(1).禁止某些程序的运行
既然映像劫持可被病毒、木马利用,当然我们反其道而行之利用它来禁止某些程序的运行。比如在公共电脑中可以利用它限制别人使用QQ,打开记事本拷贝下面的代码:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\qq.exe]
Debugger=c:\123.exe
把上面的代码保存为disqq.reg,双击导入注册表,每次双击运行QQ的时候,系统都会弹出一个框提示说找不到QQ,原因就QQ被重定向了。如果要让QQ继续运行的话,将QQ的主程序改名或者删除或者修改该注册表项就可以了。(图2)

(2).偷梁换柱恶作剧
每次我们按下CTRL+ALT+DEL键时,都会弹出“任务管理器”,我们可以通过映像劫持在按下这些键的时候让它打开“系统配置实用程序”。打开记事本,输入如下的代码:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\taskmgr.exe]
Debugger=D:\WINDOWS\pchealth\helpctr\binaries\mconfig.exe
将上面的代码另存为msconfig.reg,双击导入注册表。按下那三个键打开了“系统配置实用程序”。