pcpm audit
Escanea el grafo resuelto contra avisos de vulnerabilidades conocidos.
pcpm audit [options]
pcpm audit recorre pcpm.lock y comprueba cada paquete contra
una base de datos de vulnerabilidades. PCPM envía con una base de
datos integrada que se actualiza en cada release; la base de datos
proviene de la GitHub Advisory Database, filtrada a paquetes NuGet.
Qué muestra
Para cada paquete vulnerable, pcpm audit imprime:
× Serilog@3.1.1
GHSA-xxxx-yyyy-zzzz (low) Information disclosure in Sinks.File
Affected: <3.1.2
Fixed in: 3.1.2
Patched: pcpm add Serilog@3.1.2
El código de salida es no-cero si se encuentra cualquier
vulnerabilidad con severidad high o critical.
Opciones
| Flag | Efecto |
|---|---|
--severity <level> | Filtra por severidad mínima (low, medium, high, critical). |
--json | Salida como JSON. |
--update-db | Fuerza un refresco de la base de datos integrada. |
--no-fail | Siempre sale con 0, aunque se encuentren vulnerabilidades. |
Ejemplos
# Auditoría estándar (usada en CI)
pcpm audit
# Solo high y critical
pcpm audit --severity high
# Legible por máquina para SARIF / GitHub Code Scanning
pcpm audit --json | audit2sarif > pcpm-audit.sarif
Base de datos
La base de datos de vulnerabilidades de PCPM se construye desde la
GitHub Advisory Database. El paquete pcpm-audit-data se publica
por separado y se versiona junto con pcpm. Para fijar un
snapshot específico:
dotnet tool install --global pcpm-audit-data --version 2024.06.01
Esto es útil sobre todo en entornos regulados que necesitan resultados de auditoría reproducibles.
Véase también
pcpm outdated— para drift de versión, no seguridad.