freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

Java代审——nginxWebUI RCE
2024-12-03 23:29:39
所属地 四川省

前言

前面分析了nginxWebUI项目的任意文件上传、任意文件删除、登录绕过等漏洞,这里集中RCE的漏洞分析学习~~~~

环境搭建

项目地址:

https://github.com/cym1102/nginxWebUI

这里使用docker进行项目部署,通过java -jar xxx.jar的方式进行各种版本的启动

Dockerfile如下:

FROM ubuntu
RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list \
    && apt update \
    && apt -y install openjdk-11-jdk \
    && apt -y install nginx \
    && apt -y install wget \
    && apt -y install git \
    && apt -y install maven \
    && apt -y install vim

漏洞分析

Remote Command Execute

RCE1

跟进到com.cym.controller.adminPage.ConfController#check方法中,其存在有命令执行的点:

image-20241102213002386.png

其中存在有RuntimeUtil.execForStr方法的调用,该方法为hutool组件的方法,最终调用了ProcessBuilder#start方法进行命令执行

image-20241102200413565.png

回到check方法中,传入的参数cmdnginxExe / fileTemp / nginxDir组成

其中,若调用过程中未传入参数,则对应的nginxExe / nginxDir都是从settingService这个Service层获取的

这里的nginxExe和nginxDir可控,可直接进行命令执行

进行bash反弹shell

image-20241102214051942.png

监听端口:

image-20241102214151562.png

请求check接口:

# 网络安全 # web安全 # 漏洞分析 # 网络安全技术
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录