SuperAPI AI 工具集

capacitor-security

安全与审计

查看项目

更新于 10-15 17:31

技能介绍

用途:对 Capacitor 应用做应用层安全审计与加固,涵盖包内密钥、设备端存储、网络传输、WebView 与原生桥暴露,以及平台清单配置。适用于用户需要安全审计、OWASP MASVS/Mobile Top 10 检查或修复渗透测试发现时。

主要能力:运行并解读 @capgo/capgo-sec(capsec)结果及 SEC001、STO002、NET003、CAP004、AND004、IOS001 等规则;发现 src/、dist/、www/ 或 capacitor.config.* 中的 API 密钥、service-role 密钥与 .env 值;检查用 Preferences.set、localStorage、IndexedDB 或明文 SQLite 存储的认证令牌;检查 server.cleartext、server.url、allowNavigation、allowMixedContent、webContentsDebuggingEnabled 等配置;检查 NSAllowsArbitraryLoads、usesCleartextTraffic、allowBackup、debuggable、导出组件等原生清单问题;涉及证书固定、CSP、截图保护、root/越狱检测。

使用方式:先检查配置与清单再修改;在项目根目录运行(Node 18+):npx @capgo/capgo-sec@latest scan --severity medium;包名为 @capgo/capgo-sec,安装 capsec 二进制,npx capsec 无效。按 Critical/High/Medium/Low 分组报告,涉及行为变更(证书固定、拦截 root 设备、移除 allowNavigation、严格 CSP)需先询问用户。修复后重跑扫描与验证,执行 npx cap sync 并在设备上测试 release 构建。验证命令可包括扫描 CI 门禁、grep 配置与产物中的密钥、检查清单标志以及 plutil -p ios/App/App/Info.plist。

限制与陷阱:包内任何值都不算秘密;allowNavigation 会授予桥访问权限;server.url 与 server.cleartext 仅限开发;release 中硬编码 webContentsDebuggingEnabled: true 会暴露 WebView;CapacitorHttp 不等于证书固定,需 @capgo/capacitor-ssl-pinning;生物识别验证可被绕过,秘密应放在 accessControl 中并在服务端校验会话;自定义 scheme 的 OAuth 需 PKCE;未加密的实时更新包是公开的。Xcode 构建加固、Universal Links 设置、隐私清单与 App Review、CI 流水线、实时更新安装、运行时崩溃调试不在本技能范围。具体收费、价格与更多平台支持暂未提供。