可以自行下载靶机
通过百度网盘分享的文件:SSH-私钥泄露.ova
链接:https://pan.baidu.com/s/1cvPMLR8-2StsZ9k7SywEkQ?pwd=xyzz
--来自百度网盘超级会员V2的分享
1.打开vmware,先要把靶机的网络适配器更改为NAT模式
2.打开kali 打开终端 输入arp-scan -l 探测靶机的IP (不同的电脑探测出来的IP不一样)
arp-scan -l
3. 使用nmap来扫描靶机开放的端口及其服务 (-sV应该不用解释了吧service和version,还有-p-,port,自行搜索是什么意思)
nmap -sV -p- 192.168.158.129
发现开放了高位端口 同时发现ssh使用的是nginx服务,但是msfconsole搜索nginx是无法进入的,打不进去。
不再尝试这个方法
4.kali自带的浏览器url输入ip先看看里面有什么东西
不要忘记了刚刚nmap扫描出来了高位端口试试。
5.使用dirb来扫一下看看
dirb http://192.168.158.129:31337
发现扫描出来两个好东西,先找那个最令引人注目的robots.txt
192.168.158.129:31337/robots.txt
一个一个试试 ,先来最后一个
拿到第一个flag,成功了三分之一
6.注意审题 上面说了是ssh私钥泄露,肯定是需要一步一步找到ssh的用户名和密码的,不要着急 一个一个找。
先保存下来再看别的
其实这两个一点用都没有哈哈哈哈哈哈哈哈,不要忘记了刚刚dirb扫的时候扫出来了两个,还有一个.ssh没有用呢,尝试一下
其实就前两个有用,直接ssh后缀加上id_rsa、authorized_keys,下载下来
http://192.168.158.129:31337/.ssh/id_rsa
文本文档打开不了,猜测密码在这个里面
http://192.168.158.129:31337/.ssh/authorized_keys
用文本文档编辑器打开 前面的一大堆乱七八糟的都看不懂,看到最后发现一个符合格式的用户名。
7.找到我们刚刚下载的两个文件(我的火狐直接保存到桌面了,注意这个文件路径,后面会用到)
给这个id_rsa文件一个权限
8.接下来就可以开始ssh登录了
ssh -i id_rsa [email protected]
需要密码哦 不要忘了 你还需要爆破 先尝试一些弱口令密码测试 发现真的找不到。
现在我们就需要一个很强大的密码爆破工具john
先找到在哪里放的
要在此路径下进行(要不你会输入很长一段路径定位到这个ssh2john.py,别问我怎么知道的)
/usr/share/john/ssh2john.py /home/kali/桌面/id_rsa >xiaoxiao
这条命令的作用是将一个 SSH 私钥文件(id_rsa
)转换成可以被密码破解工具 John the Ripper 识别的格式,目的是使用 John the Ripper 来破解私钥文件的密码保护,
1. /usr/share/john/ssh2john.py
- 这是一个 Python 脚本,位于 John the Ripper 工具包的安装路径中(通常在 Kali Linux 或类似的渗透测试系统上)。
ssh2john.py
是用来将 SSH 私钥文件转换为 John the Ripper 能处理的哈希格式的工具。 - 用途:当一个 SSH 私钥文件受到密码保护时,无法直接使用它进行认证操作。如果你知道私钥的密码,可以解密该私钥。然而,如果不知道密码,这个脚本会将私钥转换为哈希格式,然后可以用 John the Ripper 来尝试破解密码。
2. /home/kali/桌面/id_rsa
- 这是你的 SSH 私钥文件的路径和文件名。在这个例子中,文件位于 Kali 用户桌面上,名为
id_rsa
。 id_rsa
是默认生成的 SSH 私钥文件名,通常位于~/.ssh/
目录中。在这个场景中,文件保存在/home/kali/桌面/
目录下。
3. >xiaoxiao
- 这是重定向符号,将脚本的输出保存到名为
xiaoxiao
的文件中。 - 脚本运行后,它将生成一个包含私钥的加密哈希文件,这个文件可供 John the Ripper 使用来破解私钥的密码。
- 作用:将转换后的哈希数据存储在文件
xiaoxiao
中。
这个xiaoxiao文件名称可以随意更改 因为我们家小狗的名字就叫小小,不要带入了
运行这段代码
完美 现在就算完成了80%了
登录ssh
也不知道这个robots.txt还熟悉吗,显然不是我们要找的 进入根目录“/”根目录下发下了一个“root”目录,打开看看
发现最后一个flag 但是提示没有权限打不开 想办法提权
但是我们看到一个read_message.c的文件 打开看看
不知道你们能看懂不,大概的意思就是限制输入20个字符(缓冲区溢出) 前五位必须是Simon剩下的15位随意,但是对于CTF来说,真有这么简单吗,试试加上/bin/sh
成功拿到root权限 直接cat打开。(那么问题来了flag2在哪里呢,自己找找看)
不会的及时私信博主!!!
标签:文件,私钥,rsa,SSH,泄露,id,ssh From: https://blog.csdn.net/2301_80109771/article/details/143042652