CTF实验:ssh泄露
信息收集
两台虚拟机均为桥接,一台kali一台ssh私钥泄露主机。在kali中输入ifconfig查看网段
在输入netdiscover 192.168.43.1/24 查询网段主机
ping 192.168.43.134 发现ping通,那么用nmap探测该ip
对网页的分析
探测后发现端口号为31337比较可疑,所以在浏览器中输入http://192.168.43.134:31337
查看源代码后没有可疑信息
隐藏页面分析
利用工具dirb继续探测(也可以用nikto)
从信息中发现robots和.ssh可疑,那么进入链接后发现了第一个flag
之后再看.ssh中的链接,发现里面有私钥id_rsa和authorized_keys文件都下载下来
从authorized_keys中了解到用户名为simon那么输入ssh -i id_rsa simon@192.168.43.134登录到主机。发现权限不够,
修改权限chmod 600 id_rsa 再次输入ssh -i id_rsa simon@192.168.43.134后需要输入密码
那么就要破解密码,
解密 ssh秘钥信息
使用 ssh2john 将id_isa秘钥信息转换为john可以识别的信息。
ssh2john id_isa > isacrack
再解密zcat /usr/share/wordlists/rockyou.txt.gz | john --pipe --rules isacrack
得到密码starwars,在输入ssh -i id_rsa simon@192.168.43.134链接主机输入密码
进入root目录后发现有flag。txt和read_message。
提高到root权限
但打不开文件,权限不够,要提权。cd /root 进入root寻找具有root权限的文件
find / -perm -4000 2>/dev/null
列表里read_message和之前看到的那个一样出现了两次查看一下cat read_message.c
分析代码后发现可以用溢出攻击,并且发现了第二个flag。
运行read_message,输入SimonQQQQQQQQQQQQQQQ/bin/sh. /bin/sh会溢出
从而提升了权限,并找到了最后一个flag。