PumpkinRaising靶机渗透
攻击过程详解
启动靶机后,我们切换到kali主机,内网扫描存活主机
arp-scan -l
nmap -sV -Pn -A x.x.x.223
有两个端口可以利用,分别是22和80端口
(一)seed_id 1
首先访问网页的80端找一找有提示的地方
网页上没有可以点击的地方,F12看看源码有没有包含提示信息
查看网页源代码时发现一串base64加密的字符串,解密后也没有有用信息
可以发现源码中有一个新的网页链接
打开是一个新的界面,没有什么能点击的地方,我们来F12查看一下源代码
有一个base32加密的字符串,解密一下
得到一个流量包的地址,wget下来
用wireshark审计一下,追踪TCP流发现第一个seed_id:50609
(二)seed_id 2
还是刚才那个网页,http://192.168.74.182/pumpkin.html,继续查看源码
可以发现一些话,我们暂且不管他
然后是一串16进制字符
解码后可以得到第二个seed_id 96454
这里也提示了总共有4个seed_id
(三)seed_id 3
网页没有新的发现,那我们还是回到最初的网页,x.x.x.223,然后用dirb解析一下网站的目录
逐一尝试访问后会发现robots.txt下有一些文件可以wget下来,而且他命名是seed.txt.gpg,
还有一个note.txt文件,里面好像是账号和密码,ssh连一下,全都用不了,先留着,以后用的到。
显然这是一个用gpg加密过的文件,使用gpg seed.txt.gpg解密一下,
但是需要输入密码,note.txt里面的密钥也用不了,密码应该就在之前的网页中
苦思冥想,翻前找后发现密钥是这个SEEDWATERSUNLIGHT
打开文件发现是一串奇怪的码
不知道你们还能不能想起之前咱们忽略的提示,并且这一串由点和横线组成的字符串,很可能就是摩斯密码
网上找在线的摩斯密码解密工具,解密后得到了第三个seed_id 69507
(四)seed_id 4
终于到了最后一个seed_id了,翻翻之前的网页,仔细看会发现http://x.x.x.223/pumpkin.html页面还藏着一个页面链接
我们访问一下http://x.x.x.223/underconstruction.html,只有一个南瓜
源码这里藏了一句话,说jackolantern在图片下面,然后因为这个页面的图片都是gif格式的,我们试着把图片done下来
wget http://x.x.x.223/images/jackolantern.gif
应该是把密文藏在图片里了,网上找到了图片解密工具stegosuite,但是解密时需要输入密码,这个时候我想起来了之前done下来的note.txt,里面的密钥一个一个试,最终匹配成功,解密得到第四个seed_id 86568
(五)获取shell
四个seed_id都拿到了,该怎么拿到shell呢?这个关卡多次提到jack,而且还强调,jack是通关的唯一希望
ssh的用户名会不会就是jack
然后,将四个seed_id变换顺序排列组合成密码,最终jack:69507506099645486568成功连接到shell
直接sudo -l查看jack可以执行的root权限,可以执行/usr/bin/strace命令,这是一个很强大的命令,可以一步到位拿到root权限,具体原理就是strace以root权限运行跟踪调试/bin/bash, 从而获取root权限的shell,命令为
进入root目录,发现flag.txt