php-archive-extract-audit
Installation
SKILL.md
PHP 归档解压路径穿越审计(php-archive-extract-audit)
分析 PHP 项目中“解压/提取归档文件到磁盘目录”的实现逻辑。重点审计 Zip Slip 类问题:攻击者可通过精心构造归档条目名(entry name/path)使最终写入落点逃逸目标目录。
分级与编号
- 详见:
shared/SEVERITY_RATING.md - 漏洞编号:
{C/H/M/L}-ARCHIVE-{序号}
ARCHIVE Sink(必做)
识别并追踪归档提取调用点,至少包括:
ZipArchive->extractTo($destination, {value})ZipArchive->extract($destination, {value})(若项目使用封装)PharData->extractTo($destination, {value})Archive_Tar->extractTo($destination, {value})(若项目使用 PEAR/等价封装)Archive_Tar->extract($destination, {value})(若项目使用封装)- 自定义解压封装:最终仍对每个 entry name 做“拼接到 destination 目录并落盘”