skills/code-audit/php/php-framework-audit/SKILL.md
PHP 框架特定安全审计。当在 PHP 白盒审计中已识别目标使用特定框架、 需要检查框架特有安全机制和常见配置缺陷时触发。 覆盖 6 大框架: Laravel(Mass Assignment/Blade XSS/CSRF 例外)、 ThinkPHP(RCE 历史漏洞/路由注入/缓存写入)、WordPress(插件漏洞/权限钩子/nonce 验证)、 Symfony(Debug Bar/YAML 解析/安全投票器)、Yii2(RBAC/ActiveRecord 注入)、CodeIgniter(全局 XSS/CSRF Token)。
npx skillsauth add wgpsec/AboutSecurity php-framework-auditInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
| 识别特征 | 框架 | 深入参考 |
|---|---|---|
| composer.json → laravel/framework | Laravel | references/laravel-patterns.md |
| composer.json → topthink/framework | ThinkPHP | references/thinkphp-patterns.md |
| 存在 wp-content/ 目录或 wp-config.php | WordPress | references/wordpress-patterns.md |
| composer.json → symfony/framework-bundle | Symfony | 本文简要覆盖 |
| composer.json → yiisoft/yii2 | Yii2 | 本文简要覆盖 |
| composer.json → codeigniter4/framework | CodeIgniter | 本文简要覆盖 |
$fillable / $guarded 是否正确配置,Model::create($request->all()) 或 update($request->all()) 是否存在未过滤字段{!! !!} 未转义输出、@php 指令内直接 echo、自定义 Blade Directive 未调用 e()VerifyCsrfToken 中间件 $except 数组是否包含敏感路由,API 路由组默认不含 CSRF 中间件$this->authorize() 或 Gate::allows(),Policy 定义是否覆盖所有 CRUDwhereRaw / havingRaw / orderByRaw / DB::raw 中是否存在变量拼接APP_DEBUG=true 残留、.env Web 可达、Telescope / Debugbar 路由暴露method() 覆盖、Request 类 __construct 任意方法调用where 数组条件中 exp / like / between 表达式注入、Db::raw{php} 标签、变量函数 {:system()}wp_ajax_nopriv_* 钩子暴露未认证操作、Shortcode 回调参数注入$wpdb->query()wp_verify_nonce / check_admin_refererregister_rest_route 的 permission_callback 是否为 __return_true 或缺失wp_handle_upload 的 MIME 检查APP_DEBUG=1 泄露 Profiler / Web Debug Toolbar,暴露环境变量和 SQLYaml::parse 支持 !!php/object 标签导致对象注入ACCESS_ABSTAIN 误用导致越权DbManager 权限项分配不当、checkAccess 调用缺失导致垂直越权findBySql / where 条件字符串拼接、orderBy 未过滤$config['global_xss_filtering'] 已弃用,CI4 需手动调用 esc()CSRFProtection 但排除路由过多、Token 重生策略不当testing
Azure 云环境渗透测试总体方法论。当目标使用 Azure/Microsoft 365/Entra ID、发现 Azure 相关资产(Blob Storage/App Service/Azure VM/Azure Functions)、获取 Azure 凭据(Service Principal/Managed Identity/Access Token)、或需要对 Azure 环境进行安全评估时使用。提供从未授权枚举到 Entra ID 攻击、服务提权、Cloud-to-OnPrem 横向移动的全流程决策树。覆盖 35+ Azure 服务攻击面
tools
Mythic C2 操作方法论。当需要部署 Mythic、选择 Mythic Agent、安装 C2 Profile、配置 HTTP/DNS/WebSocket/SMB/TCP 通信、生成 payload、管理回连任务,或把 Mythic 作为跨平台 C2 框架用于授权红队演练时使用。覆盖 mythic-cli 安装、Agent/Profile 选择、SSL 证书配置、payload 构建和基础 OPSEC 判断
development
Docker 安全测试与容器渗透方法论。当需要评估 Docker 容器、Docker Daemon、Docker Registry、镜像层、构建产物或容器逃逸风险时使用。覆盖容器环境识别、特权容器逃逸、docker.sock/Remote API 利用、procfs/cgroup/capabilities 滥用、Docker 用户组提权、运行时/内核 CVE、Registry 枚举、镜像层 Secret 分析和构建上下文泄露。发现 Docker 容器环境、Registry 暴露、镜像凭据或容器配置错误时应使用此技能
development
使用 PadBuster 进行 Padding Oracle 攻击。当发现 Web 应用使用 CBC 模式加密且存在 Padding Oracle 漏洞时使用。PadBuster 可自动解密密文和伪造任意明文对应的合法密文,适用于加密 Cookie/Token/URL 参数。任何涉及 Padding Oracle 攻击、CBC 密文解密、Cookie 伪造的场景都应使用此技能