[GHCTF 2025]UPUPUP【.htaccess绕过 XBM/WBMP】

题目:

这种文件上传可以先尝试一下让他报错,发现是apache的服务器,就想到.htaccess

上传了 .htaccess 和 .jpg 都没啥用,这时候应该想到后端采用了getimagesize和exif_imagetype限制

在文件上传时,有时候会用 exif_imagetype 函数判断一个图像的类型,读取一个图像的第一个字节并检查其签名,所以我们图片马的开头要加上 GIF89a,但是如果我们在. htaccess 文件中也加入 GIF89a 的话会导致. htaccess 文件无法生效,所以我们要用别的方法。

这时候有两种绕过方法:

第一种

写入XBM绕过

XBM格式:

XBM格式,也就是X BitMap,是一种基于文本的图像格式(纯文本图像格式),用于存储黑白像素(没有颜色,只有0和1表示是否填充)。它的本质是一个C语言头文件(.h文件),内部用代码定义了一个二维数组,描述图像的每个像素点。

由于XBM是文本格式,可以写入.htaccess文件中,可以通过这个绕过exif_imagetype()

在.htaccess开头加上:

复制代码
#define width 1
#define height 1

++#define 定义常量,规定了这个图像的长和宽都是多少++

其实完整的XBM长这样:

绕过原理:

PHP的exif_imagetype() 函数通过读取文件头部的魔术字节(Magic Bytes)判断文件类型。这里XBM文件的头部是文本形式的 #define 语句,符合标准的XBM格式,因此会被识别为 IMAGETYPE_XBM(PHP常量值为 16)。

第二种

**WBMP文件格式,**利用

复制代码
\x00\x00\x8a\x39\x8a\x39

或者

复制代码
\x00\x00\x85\x85

放在开头,剩下的正常写

相关推荐
2501_9413331012 小时前
数字识别与检测_YOLOv3_C3k2改进模型解析
人工智能·yolo·目标跟踪
逐梦苍穹12 小时前
速通DeepSeek论文mHC:给大模型装上物理阀门的架构革命
人工智能·deepseek·mhc
运维小欣12 小时前
Agentic AI 与 Agentic Ops 驱动,智能运维迈向新高度
运维·人工智能
Honmaple13 小时前
OpenClaw 迁移指南:如何把 AI 助手搬到新电脑
人工智能
wenzhangli713 小时前
Ooder A2UI 第一性原理出发 深度解析核心逻辑
人工智能·开源
网络安全研究所13 小时前
AI安全提示词注入攻击如何操控你的智能助手?
人工智能·安全
数据猿13 小时前
硬盘价格涨疯了,AI存储何去何从?
人工智能
zhangfeng113313 小时前
氨基酸序列表示法,蛋白质序列表达 计算机中机器学习 大语言模型中的表达,为什么没有糖蛋白或者其他基团磷酸化甲基化乙酰化泛素化
人工智能·机器学习·语言模型
陈天伟教授13 小时前
人工智能应用- 语言理解:06.大语言模型
人工智能·语言模型·自然语言处理
海心焱14 小时前
安全之盾:深度解析 MCP 如何缝合企业级 SSO 身份验证体系,构建可信 AI 数据通道
人工智能·安全