SuperAPI AI 工具集

auditing-python-security

编程与开发

查看项目

更新于 10-16 00:24

技能介绍

用途:审计 Python 库的安全漏洞,覆盖代码与依赖两个层面,可集成到 CI 流程中。

主要能力:通过一个脚本统一运行 Bandit(静态分析,可查高严重度问题)、pip-audit(依赖漏洞)、Semgrep(基于模式的 SAST)和 detect-secrets(密钥检测)。脚本退出码约定:存在阻塞性发现返回 1,某个请求的扫描器无法运行时返回 2,全部干净返回 0;可用 --allow-scanner-failure 容忍缺失或卡住的扫描器。

使用方式: uv run python scripts/security_scan.py . uv run python scripts/security_scan.py . --allow-scanner-failure 也可单独运行: uvx bandit -r src/ -ll uvx pip-audit . uvx semgrep --config auto src/ uvx detect-secrets scan > .secrets.baseline 依赖扫描可加 -r requirements.txt 或 --fix 自动修复。

审计范围:SQL 注入、命令注入、硬编码密钥、弱加密、反序列化不可信数据、路径穿越、SSRF(含重定向跳转的 IP 校验与 IPv4/IPv6/CGNAT 拒绝策略)等;并强调异常渲染不得输出栈帧局部变量,示例中通过 rich.traceback.install(show_locals=False) 关闭,并建议用哨兵值测试验证输出中不含该值。

CI:在 GitHub Actions 中使用 astral-sh/setup-uv@v5 后运行安全扫描脚本,可输出 JSON 报告。

限制:具体漏洞样例、CI 工作流与配置明细参见 VULNERABILITIES.md、CI_SECURITY.md 和 scripts/security_scan.py;资料未提供价格、平台支持范围或效果保证。