用途:对 npm 与 pip 项目执行软件成分分析(SCA),识别供应链风险,如安装脚本滥用、仿冒包(typosquatting)、混淆代码、protestware 与恶意包,并将结果映射到 CWE 与 OWASP Top 10:2021。
主要能力:使用 Socket.dev 的 socket CLI 扫描依赖清单;解析 JSON 输出中的 type、severity、packageName、packageVersion、description;按严重级别(Critical > High > Medium > Low)去重排序;生成含 Severity、CWE、OWASP、Location、Issue、Remediation 的报告。内置 Socket 告警类型到 CWE/OWASP 的映射表(如 installScripts→CWE-506/A08、typosquatting→CWE-1357/A06、malware→CWE-506/A08 等)。
使用方式:先运行 socket --version 检测 CLI;未安装可执行 npm install -g @socketsecurity/cli(最低版本 0.9+,基础扫描无需认证,完整告警详情建议免费 Socket.dev 账号)。npm 项目在根目录运行 socket scan create --json .;Python 项目运行 socket scan create --json --python . 或指向 requirements.txt。CLI 不可用时执行十项人工检查:仿冒包比对、安装脚本检测、已知恶意包查询、过宽权限、protestware 迹象、依赖年龄与流行度、版本固定缺口、过多传递依赖、混淆代码模式、安装钩子中的网络调用,并附“有限审查”免责声明。
适用场景:部署前审查 package.json、package-lock.json、requirements.txt、Pipfile;PR 新增或升级依赖时的安全检查;引入第三方库的尽职调查;调查疑似被入侵或 protestware 包。
限制:不用于应用源码 SAST(改用 bandit-sast 或 semgrep)、运行时/动态分析(如 nuclei)、代码风格或 lint、容器镜像或 IaC 扫描(改用 iac-scanner)、生成 CI/CD 流水线(改用 devsecops-pipeline)。目标目录无依赖清单时必须拒绝并推荐 crypto-audit、security-review 或 bandit-sast。人工回退模式仅提供部分覆盖。