Agent Skills
返回列表
🔒

文件上传攻击实战

IT 运维与安全 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/file-upload-lr-2nzj。

技能介绍

要解决的问题

file upload 类接口常把校验集中在前端扩展名或 Content-Type,却忽略文件落地后的存储、解析、转发和回显路径。攻击者可能提交伪造 MIME、双扩展名、空字节截断、特殊文件名或携带脚本的 SVG/HTML,从而写入可执行内容、触发服务端处理漏洞,或在受害用户浏览时执行脚本。这类问题在授权渗透测试和漏洞赏金中尤其需要系统化枚举。

技能如何工作

该技能将文件上传漏洞检查变成可执行清单,并在激活后按以下方式组织工作:

  • 先建立方法基线:加载完整 checklist,按既定顺序推进;只有用户明确指定时才调整顺序。
  • 再做上下文适配:对每种技术评估当前目标、后端栈、存储位置、上传后处理链路和回显方式是否适用。
  • 然后逐项验证:覆盖 MIME 类型绕过、扩展名绕过、魔术字节修改、文件名路径穿越、SVG/HTML 上传导致的存储型 XSS、服务端处理攻击和竞态条件。
  • 最后收敛结论:跟踪已完成的检查项,记录未覆盖的路径,并基于发现给出下一步测试建议。

适用边界与注意点

该技能是安全测试指导,不是自动化扫描器,也不能替代授权。仅用于你有权测试的应用、靶场或漏洞赏金目标;在生产环境执行前应确认范围、审批流程和回滚方式。不同服务端、对象存储、CDN、WAF 和下游处理器会改变绕过效果,所有结果仍需人工复核与无害化验证。

使用场景

  • 在授权 Web 渗透测试中,需要系统排查用户头像、附件上传等端点的 MIME 与扩展名校验缺陷。
  • 对漏洞赏金目标提交上传表单后,验证魔术字节修改、空字节截断和双扩展名是否可写入可执行文件。
  • 当 SVG/HTML 可作为附件回显时,验证存储型 XSS 的触发路径并给出无害化验证结论。
  • 检查文件名是否包含路径穿越、处理服务端对上传文件的解析/转换,以及并发上传竞态条件。

适合人员

  • Web 渗透测试工程师:需要按固定 checklist 覆盖文件上传绕过与存储型 XSS,避免漏测。
  • 漏洞赏金猎人:在单一上传表单上验证多种绕过组合,并写出可复现、可修复的证据。
  • 应用安全工程师:把文件校验、存储、解析和回显链路纳入威胁建模,定位设计缺陷。
  • 安全测试负责人:在授权靶场或演练中管理上传漏洞检查进度,并给出下一步测试建议。