Loading... ## 环境要求 攻击机:kali Linux 靶机L:开启SSH服务并且存在私钥泄露的主机 ## 攻击过程 首先准备一个靶机环境:  然后我们不知道密码,只知道这台主机上开启了 SSH ,也不知道IP地址,这里我们可以使用kali里面的nmap进行存活主机扫描,来找到这台主机的IP,因为我这里是两台虚拟机,IP地址都是NAT、模式,首先看一下kali的IP地址:  这里可以看到,我们kali的IP地址是192.168.129.133,所以我们使用nmap扫描192.168.129.0/24段的所有存活主机 用到的命令:`nmap -sP 192.168.129.0/21`  这里扫描了很多个,因为我这里虚拟机比较多,但是靶机是新装的,所以我选择一个最大的IP地址来试一下,再进行开放服务探测 用到的命令:nmap -sV 192.168.129.147  可以看到,的确是开了ssh服务的,那么可以确定靶机的IP地址就是:192.168.129.147 而且通过上面的探测,还能发现有一个大端口的http服务,也就是web服务,服务是开放在31337端口上的,所以我们先访问一下试一下:  并没有什么东西,接下来继续使用kali的工具 dirb 来探测一下网站的隐藏文件命令很简单:`dirb http://192.168.129.147:31337` 这里就可以看到他测到了几个文件,我们来分析一下: robots.txt:是针对搜索引擎时约定允许爬取的目录和禁止爬取的目录 这里我们就打开看一下robots文件:  上面两个我们都用工具探测到了,然后有一个taxe目录很明显没看到,我们单独打开看一下;  发现一个flag,毕竟这是CTF嘛,然后这个robots就没有什么用了,我们继续查看dirb的扫描结果有一个.ssh, 对于这种关键字路径,骨断点进去看看:  发现了几个文件名,很明显是SSH生成的密钥文件,都是用于认证的文件 认证的流程大概是,生成一个公钥与私钥,公钥放于要登陆的服务器上,登录的时候对比公钥和私钥来进行登录认证 然后我们接着看,他这里把文件名列出来,是否就是目录里存在这些文件呢?我们试一下:  的确有这个文件,并且可下载下来,这里把前两个文件都下载下来,第三个是公钥,就不用下了,然后我们用这个私钥登录一下,用户名可以查看authorized_keys来找到用户名:  继而得到用户名simon,然后开始登录 `ssh -i id_rsa simon@192.168.129.147` 接受指纹识别 然后发现要输入密码:  我们肯定不知道密码呀,但是可以破解出来,使用kali的工具ssh2john得到一个中间文件 `python /usr/share/john/ssh2john.py id_rsa > rescrack` 继续使用zcat破解出密码: `zcat /usr/share/wordlists/rockyou.txt.gz | john --pipe --rules rescrack`  找到了密码:starwars 登陆试一下:  成功远程登录到靶机接下来就只是找flag了,就不写了 ## 写在最后 仅供学习交流,请勿用于任何违法目的 <hr class="content-copyright" style="margin-top:50px" /><blockquote class="content-copyright" style="font-style:normal"><p class="content-copyright">版权属于:JsOnGmAX</p><p class="content-copyright">本文链接:<a class="content-copyright" href="https://jsong.cn/archives/325.html" target="_blank" >https://jsong.cn/archives/325.html</a></p><p class="content-copyright">博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议 如有侵权 请联系本人删除</p></blockquote> 最后修改:2020 年 07 月 30 日 10 : 44 AM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 ×Close 赞赏作者 扫一扫支付 支付宝支付 微信支付