0%

靶机-DevRandom CTF:1.1

靶机-DevRandom CTF:1.1

靶机地址:DevRandom CTF:1.1
本机 IP:10.0.2.7,靶机 IP:10.0.2.9。

查看开放端口:

目标主机开放端口

嗯……很干净,只开放了 22、80 端口,22 端口简单尝试了几个弱口令,无果。去看看网页:
80 端口
这个主页有点东西……扫描一下网站目录:
网站目录
很明显是一个 WordPress 站点,但是访问其他页面都是同样的响应:
响应页面

从网站扫描结果中找到了一个可以正常访问的页面:
10.0.2.9/secret/wrap

用的还不是英语……去翻译了一下,内容是一堆不明所以的话(我是看不懂他在说什么,希望这里面没有线索-_-),页面底部有一个看起来像是帐号:密码的东西:
john:Password123

拿去试着登录 SSH 发现登录不上,暂时不知道这是什么东西的帐号密码,先记着。

发现网站根目录下存在robots.txt文件:
robots.txt
/wp-admin//wp-login.php都是无法访问的,响应都是上面那张图片。
发现/?include=info可以正常访问:
10.0.2.9/?include=info

看了下 HTML 源码,没发现什么东西,不过?include=info这个参数引起了我的注意,看起来像是可以包含文件? 经过测试发现,这里存在 本地文件包含 或 任意文件读取 漏洞,为什么没确定漏洞类型?因为读取不到任何本地的 PHP 文件……网站的物理路径是从下面这个页面获得的(也可以通过读取 Apache 的配置文件来获得网站的物理路径):
网站物理路径

根据物理路径读取网站本身的 PHP 文件没有任何结果,可能是权限问题,本来想通过包含访问日志来尝试执行 PHP 代码(尝试读取了 Apache 的日志文件,也没有结果),现在是无法实现了。能正常访问的页面都没几个,别说上传点了……

好在可以读取/etc/passwd文件:
/etc/passwd

把可以登录的用户写到一个文件,用 Hydra 爆破 SSH:
SSH 爆破

得到一个帐号:
trevor:qwertyuiop[]

登录上去以后,看看有没有 sudo 权限:
SSH 登录
只能执行 dpkg,可以制作一个 deb 包然后使用 dpkg 安装来获取 root 权限。

在本地安装用来制作 deb 包的 FPM 工具:
安装 FPM

准备一个用来提权的 Shell 脚本(它会以 root 权限执行):echo 'exec /bin/sh' > x.sh

使用 FPM 制作 deb 包:
制作 deb 包

把生成好的 deb 包上传到目标主机,这里我是通过一个 HTTP 服务传输文件:
上传 deb 包

使用 dpkg 安装 deb 包:
安装 deb 包
成功获取 root 权限!