SuperAPI AI 工具集

file-upload

安全与审计

查看项目

更新于 10-15 21:43

技能介绍

用途:分析源代码中的文件上传安全问题,覆盖仅客户端校验、缺少 Content-Type 校验、无魔数(magic byte)检查、文件名路径穿越、上传到 webroot 并可执行、以及压缩包解压路径穿越(zip slip)。不安全上传可能导致远程代码执行、拒绝服务与数据外泄。

主要能力:涉及 CWE-434、CWE-22、CWE-79、CWE-400、CWE-611。检测模式包括:仅客户端文件类型校验、缺少内容类型验证、无魔数校验、文件名路径穿越、上传到可执行目录、zip slip、缺少文件大小限制、允许危险文件类型。

使用方式:支持 --scope(默认 changed)、--depth(standard 读取代码并检查上传处理器;deep 追踪从上传到存储再到服务的完整路径)、--severity 等标志。工作流为:确定范围并筛选上传相关文件(upload、uploads、attachments、files、media、storage、middleware、controllers、extract、unzip、import、components、views);检测可用扫描器;运行扫描器;无论扫描器是否可用都进行人工代码分析;按 findings schema 输出,ID 前缀 UPLD(如 UPLD-001)。

扫描器命令:semgrep scan --config auto --json --quiet <target>;bandit -r <target> -f json -q;brakeman -q -f json -o /dev/stdout。无扫描器时可用 Grep 按检测模式查找,置信度标为 medium。

输出字段:严重性与置信度、精确文件位置与代码片段、攻击场景、具体修复(尽量含 diff)、CWE 与 OWASP 引用。严重性参考:critical 为上传到 webroot 并可执行、zip slip 到敏感目录、完全无校验;high 为缺少服务端类型校验、文件名路径穿越、允许危险类型;medium 为仅客户端校验、缺少魔数检查、无文件大小限制;low 为允许列表过宽、缺少第二层校验。

限制:资料未提供具体安装步骤、收费方式、支持平台与效果保证;实际检测结果取决于代码与扫描器可用性。