文件上传-黑名单关键字绕过

[题目信息]:

题目名称 题目难度
文件上传-黑名单关键字绕过 1

[题目考点]:

复制代码
黑名单文件后缀名检测

[Flag格式]:

复制代码
SangFor{bvgizCoInMSfB5PKETz5W-e4Tn56XXra}

[环境部署]:

docker-compose.yml文件或者docker tar原始文件。

复制代码
端口:11005

[题目writeup]:

1、实验主页

2、对于上传点的测试思路

正在上传...重新上传取消

3、上传标准图片文件

可以看到图片正常上传

正在上传...重新上传取消

F12或者邮件审查元素,打开控制台,使用该按钮点击图片,可以发现图片上传位置;

上传1.php文件并抓包

正在上传...重新上传取消

对于黑名单的绕过是最容易理解的一种绕过方式,只要可以突破上传点没有限制到的后缀名即可上传成功。

举例几种常见的后缀名:

复制代码
".php",".php5",".php4",".php3",".php2","php1",".html",".htm",".phtml",".pHp",".pHp5",".pHp4",

在测试上传点时,只要上传点忽略了其中一点,我们就能够上传可以解析的php文件;

至于如何知晓哪些后缀没有被限制,可以使用 burpsuite 批量上传来测试后缀名。

首先随意抓取一个 request 请求包发送给 intrude:

接着添加以下 payload 并开始攻击:

复制代码
php
php7
php5
php4
php3
php2
php1
html
htm
phtml
pHp
Php
phP
pHp5
pHp4
pHp3
pHp2
pHp1
php.
php. .
php 

正在上传...重新上传取消

正在上传...重新上传取消

复制文件后缀,开始爆破;

正在上传...重新上传取消

可在Response模块查看回显结果

访问php3后缀文件,成功解析为php。

那么为什么php3后缀的文件会被作为php文件成功解析呢?

在apache2服务器的配置文件apache.conf中

有AddType模块

该配置模块规定了哪些后缀可以被视为php文件解析;

相关推荐
郑州光合科技余经理12 分钟前
实战分享:如何构建东南亚高并发跑腿配送系统
java·开发语言·javascript·spring cloud·uni-app·c#·php
云云只是个程序马喽12 分钟前
海外短剧系统开发核心功能设计及上线材料准备
小程序·php
一往无前fgs1 小时前
PHP语言开发基础入门实践教程(零基础版)
开发语言·php
步步为营DotNet3 小时前
深度剖析.NET中HttpClient的请求重试机制:可靠性提升与实践优化
开发语言·php·.net
JaguarJack3 小时前
再推荐 10 个低调但非常实用的 PHP 包
后端·php
BingoGo4 小时前
再推荐 10 个低调但非常实用的 PHP 包
后端·php
ljh57464911913 小时前
PhpStorm 2022.3 版本中,修改使用 Git 提交时看到弹出式的对话框模式
ide·git·php·phpstorm
G311354227315 小时前
Linux 内核设计中的核心思想与架构原则
linux·架构·php
catchadmin18 小时前
PHP 值对象实战指南:避免原始类型偏执
android·开发语言·php
前端不太难21 小时前
RN Hooks 设计规范与反模式清单
开发语言·php·设计规范