• 13.Weblogic任意文件上传漏洞(CVE-2018-2894)复现


    Weblogic任意文件上传漏洞(CVE-2018-2894)复现

    漏洞背景

    WebLogic管理端未授权的两个页面存在任意上传getshell漏洞,可直接获取权限。两个页面分别为/ws_utc/begin.do,/ws_utc/config.do

    影响范围

    Oracle WebLogic Server,版本10.3.6.0,12.1.3.0,12.2.1.2,12.2.1.3

    漏洞详情

    http://www.oracle.com/technetwork/security-advisory/cpujul2018-4258247.html#AppendixFMW

    漏洞复现
     
    本次漏洞环境是用docker搭建的,环境启动后,访问Weblogic控制台:
     
     

    应为是本地搭建环境,所以在登陆日志中寻找登陆密码:docker-compose logs | grep password

    可得登陆用户名密码为:weblogic/eZh6Cefm

    正常的环境是判断是否存在weblogic弱口令,或者根据版本信息来读取敏感文件,比如,或者
    后台用户密文与密钥文件,或者就像登陆日志logs之类的,来得到登陆密码。
     
    得到用户名密码后,我们尝试登陆后台页面,点击base_domain的配置,
    在“高级”中开启“启用 Web 服务测试页”选项:

    保存配置

    访问 http://192.168.0.132:7001/ws_utc/config.do ,设置Work Home Dir为

    /u01/oracle/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/com.oracle.webservices.wls.ws-testclient-app-wls/4mcj4y/war/css

    我将目录设置为 ws_utc 应用的静态文件css目录,访问这个目录是无需权限的,这一点很重要。

    然后点击安全 -> 增加,然后上传webshell:

    点击提交之后,可是使用Burpsuite拦截返回的数据包来寻找返回的时间戳ID

    也可以通过浏览器的调试台来寻找返回的时间戳ID。F12打开调试台。

    刷新可看到的确上传成功

    然后访问:http://your-ip:7001/ws_utc/css/config/keystore/[时间戳]_[文件名],即可执行webshell

    成功get webshell

    漏洞需要满足条件:

    • 需要知道部署应用的web目录
    • ws_utc/config.do在开发模式下无需认证,在生产模式下需要认证。具体可见Oracle® Fusion Middleware Administering Web Services
  • 相关阅读:
    为什么要学习Linux
    测试开发技术:DOM中 innerHTML、innerText、outerHTML、outerText的区别
    web service 组件
    老李分享:webservice是什么?
    hibernate 和 mybatis 的区别
    mybatis 缓存
    过滤器和拦截器
    Spring 注解
    Spring 全局异常处理
    mybatis Mapper XML 映射文件
  • 原文地址:https://www.cnblogs.com/bmjoker/p/9825497.html
Copyright © 2020-2023  润新知