文章总结: 本文披露了一个因特殊文件名上传导致的群组文件功能拒绝服务漏洞。测试者通过将上传请求中filename参数修改为单个句点,使服务端存储异常文件名,导致群组文件列表页对所有成员崩溃,造成永久性拒绝服务。漏洞影响范围广且难以恢复,需重建群组解决。文章提供了详细测试流程与危害分析,强调合法授权前提。 综合评分: 78 文章分类: 漏洞分析,渗透测试,web安全
特殊文件名上传导致群组文件功能拒绝服务漏洞
原创
游山玩水 游山玩水
山水SRC
2026年10月2日 09:09 河南
在小说阅读器读本章
去阅读
在公众号小说中沉浸阅读
免责声明
本公众号分享的所有渗透测试技术文章仅面向合法授权的安全测试、学习交流与研究用途。读者必须确保自身行为符合《网络安全法》等相关法律法规,严禁将其用于任何未授权攻击等非法活动。因不当使用或传播相关内容所引发的任何法律责任与风险,由行为人自行承担,本公众号(或本人)概不负责
测试流程
测试前提
-
账户权限
:拥有两个有效测试账号(账号 A 和账号 B)。
-
群组功能
:目标系统支持创建群组,且群组管理员/成员具备文件上传权限。
-
文件共享
:群组内上传的文件对所有成员可见,文件列表页会统一渲染所有文件名。
-
拦截工具
:已配置 Burp Suite 等代理工具,可拦截并修改上传请求。
-
无严格校验
:服务端未对上传文件的文件名进行合法性校验(如禁止仅含
.的名称)。
#
#
测试流程
步骤一:建立测试环境
- 使用账号 A 创建群组 G。
- 邀请账号 B 加入群组 G(作为普通成员),用于验证跨用户影响。
步骤二:对照组验证
- 账号 A 在群组 G 中正常上传一个文件(如
test.pdf)。 - 确认账号 A 和账号 B 均能正常访问群组 G 的“文件”标签页,列表渲染完整。
步骤三:构造恶意上传
- 账号 A 再次点击上传文件,选择任意本地文件(如
evil.txt)。 - 使用 Burp Suite 拦截上传请求(通常为
POST /api/upload或类似接口)。 - 在请求的
Content-Disposition头中,将filename参数修改为.(仅一个英文句点,不含其他字符)。
- 修改前:
Content-Disposition: form-data; name="file"; filename="evil.txt" - 修改后:
Content-Disposition: form-data; name="file"; filename="."
- 放行请求,记录服务端响应状态(通常为
200 OK或201 Created,表示文件被成功存储)。
步骤四:验证功能失效
- 账号 A 刷新群组 G 的“文件”标签页。
-
预期结果
:页面崩溃、持续加载、或返回错误提示(如
Sorry, something went wrong...),无法正常显示文件列表。
- 账号 B 登录并访问同一群组 G 的“文件”标签页。
-
预期结果
:同样出现页面崩溃或报错,证明漏洞影响所有群成员。
步骤五:验证恢复可能性
- 尝试通过 UI 删除该恶意文件(若删除按钮可用)。
- 若删除失败或文件无法选中,尝试使用管理员账号/API 强制删除。
- 若均无法恢复,则确认漏洞导致永久性拒绝服务,必须重建群组才能解决。
#
危害
| 维度 | 影响描述 | | — | — | | 功能完全瘫痪 | 高。群组“文件”标签页对所有成员不可用,任何访问该页面的用户都会遇到崩溃或错误,导致正常的文件共享和协作流程中断。 | | 跨用户影响 | 高。漏洞不仅影响上传者本人,群组内所有被邀请成员(甚至后续加入的成员)均会受影响,危害范围随群组规模扩大而增加。 |
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:山水SRC 游山玩水 游山玩水《特殊文件名上传导致群组文件功能拒绝服务漏洞》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。









评论