标签:style class blog code java http
Image File Execution Options就是映像劫持技术,通过此种方式替换记事本,非常地绿色环保。
Image File Execution Options是CreateProcess函数中的一个功能,即在可执行程序运行时,Windows会先检测对应IFEO中的Debugger值,如果 存在这个参数的话,就运行这个参数中指定的程序,好像是程序调试之用,具体可以见这里。
原理:通过修改 Image File Execution Options 键值后,在有 notepad.exe 运行请求的时候,欺骗系统运行指定的程序 notepad2.exe。
手工方法:
注册表方法:
1 Windows Registry Editor Version 5.00 2 3 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe] 4 "Debugger"="\"D:\\Program Files\\Notepad2\\Notepad2.exe\" /z"
批处理方法:
1 @echo off 2 cd /d "%~dp0" 3 echo. 4 echo. 5 pause 6 cd /d "%~dp0" 7 reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" /v "Debugger" /d "\"%~dp0Notepad2.exe\" /z" /f 8 cls 9 echo. 10 echo. 11 pause
批处理升级版:
此版本在原版的基础上加入了管理员权限测试、劫持检测、反劫持。
1 @echo off 2 set regkey=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe 3 reg add "%regkey%" /v "test" /f 1>nul 2>nul && (reg delete "%regkey%" /v "test" /f) || (echo.&echo.&echo 缺少权限,请右键点击此脚本,选择“以管理员身份运行”。&pause>nul&exit) 4 5 :begin 6 cls 7 for /L %%i in (1,1,5) do echo. 8 set num=0 9 reg query "%regkey%" /v "Debugger" 1>nul 2>nul && goto undo || goto done 10 11 :done 12 set /P num=记事本[未劫持],是否开启劫持?( 1--是,其他--否 ) : 13 echo %num% 14 if %num% equ 1 reg add "%regkey%" /v "Debugger" /d "\"%~dp0Notepad2.exe\" /z" /f 15 goto begin 16 17 :undo 18 set /P num=记事本[已劫持],是否取消劫持?( 1--是,其他--否 ) : 19 echo %num% 20 if %num% equ 1 reg delete "%regkey%" /f 21 goto begin
inf 方法:
安装版:
1 [Version] 2 3 Signature="$WINDOWS NT$" 4 5 [DefaultInstall] 6 AddReg=an 7 [an] 8 HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe","Debugger",0,"""%01%\Notepad2.exe"" /z" 9 HKCR,"*\shell\NotePad2",,,"用 &NotePad2 编辑" 10 HKCR,"*\shell\NotePad2\command",,,"%01%\Notepad2.exe ""%1"""
反安装版:
[Version] Signature="$WINDOWS NT$" [DefaultInstall] delReg=hf [hf] HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\notepad.exe" HKCR,"*\shell\NotePad2"
标签:style class blog code java http
原文地址:http://www.cnblogs.com/RhinoC/p/3772313.html