소스 정보
- 저장소
- 0xShe/PHP-Code-Audit-Skill
- 최근 소스 활동
- 2026년 3월 24일 06:08
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 399
- 포크
- 40
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/0xShe/PHP-Code-Audit-Skill --skill php-sql-audit명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
PHP Web 归档解压(Zip Slip/路径穿越)审计工具。识别解压条目名如何与目标目录拼接、是否存在 base dir 约束缺失,输出可利用性分级、可观测 PoC 与修复建议(禁止省略)。
PHP Web 全链路白盒代码安全审计流水线(多文件版编排)。作为总编排参考,按 Sink 类型调用各子审计 skill(`php-route-mapper/php-auth-audit/php-route-tracer/php-*-audit`),并复用统一输出与分级标准。
PHP Web 源码鉴权机制审计工具。从源码中识别所有认证/鉴权实现并分析风险,输出路由-鉴权映射与漏洞分析(含 PoC 与修复建议)。
SOC 직업 분류 기준
SKILL.md 표시 중
| name | php-sql-audit |
| description | PHP Web 源码 SQL 注入漏洞审计工具。从源码中识别所有 SQL 执行点并分析注入风险,输出可利用性分级、PoC 与修复建议(禁止省略)。 |
分析 PHP 项目源码,识别 SQL 执行相关代码(PDO/mysqli/ORM),追踪用户输入到 SQL 构造点,验证是否存在 SQL 注入,并输出完整漏洞报告。
shared/SEVERITY_RATING.md{C/H/M/L}-SQL-{序号}建议至少有(与 shared/IO_PATH_CONVENTION.md 一致;合并流水线时读总报告中等价章节即可):
routes_{timestamp}.md(独立落盘时常为 route_mapping/routes_{timestamp}.md)params_{timestamp}.md(独立落盘时常为 route_mapping/params_{timestamp}.md)
可选但推荐:route_tracer/ 输出,用于精准判定参数实际使用状态$pdo->query($sql) / $pdo->exec($sql)(若 $sql 来自拼接/包含用户输入)$pdo->prepare($sql) 只有在 $sql 中使用占位符且后续 bindParam/bindValue 或正确传参时更安全DB::select(DB::raw({value}))、Doctrine createQuery 等mysqli_query($conn, $sql) 拼接危险mysqli_prepare 只有 prepare + bind 正确时才可能安全., sprintf, vsprintf, implode/join + SQL 关键字order by $x / ORDER BY ".$x."(常见高危)满足任一条时必须调用 php-route-tracer(或同等追踪证据):
输出到:
{output_path}/vuln_audit/
└── sql_{timestamp}.md
### [{等级前缀}-SQL-{序号}] {风险标题}
| 项目 | 信息 |
|------|------|
| 严重等级 | {🔴/🟠/🟡/🔵} (CVSS {score}) |
| 可达性 (R) | {0-3} - {理由} |
| 影响范围 (I) | {0-3} - {理由} |
| 利用复杂度 (C) | {0-3} - {理由} |
| 可利用性 | ✅ 已确认 / ⚠️ 待验证 / ❌ 不可利用 / 🔍 环境依赖 |
| 位置 | {file}:{line} ({Function/Class}) |
#### 数据流链(Source → Sink)
(按路由逐行写出:请求参数读取 -> 变量赋值/拼接/转换 -> 分支 -> SQL 进入执行点。禁止省略)
#### 可利用前置条件
- 鉴权要求:{无需/需登录/需特定权限}
- 输入可控性:{完全可控/条件可控/不可控}
- 触发条件:{分支/异常/环境依赖}
#### 证据引用(强制:来自 php-route-tracer)
每条 SQL 疑似漏洞必须逐项引用 trace 输出中 `## 9) Sink Evidence Type Checklist` 的 **SQL 行**对应证据要点(允许状态为待验证,但证据引用必须存在):
1. `EVID_SQL_EXEC_POINT`:SQL 执行函数/语句位置(对应 trace 的 SQL 执行点证据)
2. `EVID_SQL_STRING_CONSTRUCTION`:SQL 字符串构造/拼接位置(对应 trace 的 SQL 拼接证据)
3. `EVID_SQL_USER_PARAM_TO_SQL_FRAGMENT`:用户可控参数到 SQL 片段的映射(对应 trace 的可控性矩阵字段证据)
#### tracer 证据缺失处理(强制)
- 若无法定位上述 1~3 任一关键证据要点:该漏洞状态只能标记为 `⚠️待验证`,不得直接给出 `✅已确认可利用`。
#### 验证 PoC(强制,可执行请求)
```http
{HTTP Method} {完整路径与查询/Body} HTTP/1.1
Host: {host}
{必要 Header/Session/JWT/Cookie}
{Payload}
rg/grep 风格)用于定位所有同类拼接点
## 输出完整性检查(强制)
- [ ] 至少输出:风险统计 + 每条漏洞完整条目
- [ ] 不出现任何省略占位符
- [ ] 每条漏洞都包含:数据流链、可利用前置条件、可执行 PoC、修复建议