CVE-Ignore Converter · Security
CVE-Ignore Converter: Traduce archivos de exclusión de vulnerabilidades en un clic.
Convierte un archivo de exclusión de vulnerabilidades entre.trivyignore,.grype.yaml,.snyk yosv-scanner.toml: pega uno, elige un destino y obtén el archivo equivalente.
Se ejecuta en tu navegador: nada de lo que pegas sale de esta página. Cómo lo demostramos
Entorno de pruebas del CVE-Ignore Converter
Tip: press Esc to release focus.
La brecha
Una decisión, cuatro formatos de archivo.
Decidir suprimir un CVE es trabajo real: investigas la accesibilidad, aceptas el riesgo y anotas por qué. Pero esa única decisión hay que recodificarla para cada escáner que ejecutes. Trivy quiere una línea en.trivyignore;Grype quiere un comparador estructurado en.grype.yaml;Snyk quiere una entrada indexada en.snyk; yosv-scanner quiere una tabla TOML enosv-scanner.toml.
Mantener cuatro archivos editados a mano para la misma política es la forma en que se cuela la desviación: un CVE ignorado en una herramienta pero activo en otra, una caducidad que venció en un solo lugar. Este conversor traduce entre los cuatro formatos para que puedas unificar tu política de supresión de CVE entre escáneres: aprueba una vez, genera en todas partes, de forma coherente.
¿No conoces un formato? Salta a los cuatro archivos o prueba el conversor en vivo de arriba.
El proceso
Cómo funciona.
Cuatro pasos deterministas se ejecutan de principio a fin en cada conversión, todo dentro de la pestaña de tu navegador, cada vez.
Detecta el origen.
El archivo de exclusión pegado se inspecciona y analiza según el formato que selecciones: Trivy, Grype, Snyk u osv-scanner.
Construye un modelo neutro.
Cada supresión se convierte en un registro independiente del formato: ID de vulnerabilidad, alcance opcional, motivo y caducidad.
Emite el destino.
Ese modelo se renderiza en la sintaxis exacta del formato de destino: lista de líneas, comparador YAML o tabla TOML.
Marca lo que no se puede asignar.
Cualquier campo sin cabida en el destino —caducidad, alcance de paquete, rutas— se muestra como una advertencia, nunca se descarta en silencio.
Trivy → Snyk
Convierte un .trivyignore en una política .snyk.
Pega el archivo de Trivy y elige .snyk como formato de destino. Esto es, palabra por palabra, lo que devuelve el conversor de arriba.
Pega esto
# Accepted risk — no upstream fix (review 2026-09).
CVE-2023-12345
GHSA-xxxx-yyyy-zzzzObtienes esto
version: v1.25.0
ignore:
CVE-2023-12345:
- "*":
reason: Accepted risk — no upstream fix (review 2026-09).
GHSA-xxxx-yyyy-zzzz:
- "*": {}ID → clave de ignore
Cada línea suelta del .trivyignore se convierte en una clave del mapa ignore: de Snyk, ya sea un identificador CVE, GHSA o RUSTSEC.
# comentario → reason
Un comentario situado justo encima de un ID, o al final de esa misma línea, pasa al campo reason de la regla, de modo que la justificación viaja con la supresión.
sin ruta → "*"
Snyk indexa cada regla por ruta y .trivyignore no tiene ninguna, así que cada regla se escribe contra "*" (todas las rutas) y una advertencia deja constancia de que el conversor aplicó ese valor por defecto.
mismo ID dos veces → fusionado
Dos líneas de origen para la misma vulnerabilidad se fusionan en una única clave de ignore en lugar de sobrescribirse; si sus motivos no coinciden, recibes una advertencia en vez de una pérdida silenciosa.
En ambos sentidos
De Snyk de vuelta a Trivy, y en cualquier otra dirección.
El conversor no es de un solo sentido. Cualquiera de los cuatro formatos puede ser el origen y cualquier otro el destino, así que esta misma página cubre.snyk → .trivyignore,.trivyignore → .grype.yaml y.trivyignore → osv-scanner.toml.
Al volver a Trivy, cada reason de Snyk se reemite como líneas de comentario# encima de su ID —todas sus líneas, porque una línea sin comentar en.trivyignore es una supresión—. Lo que Trivy no puede guardar se informa en lugar de modificarse en silencio: una fechaexpires no tiene dónde ir, así que se te indica exactamente qué ID la perdió.
.snyk → .trivyignore
# .trivyignore — generated by OpsCanopy CVE-Ignore Converter
# No reachable code path; tracked in JIRA-481.
SNYK-JS-LODASH-1040724
# Accepted risk — no upstream fix.
CVE-2023-12345Convertido a partir de la política .snyk que se muestra más abajo, con una advertencia: «Trivy cannot represent the expiry on SNYK-JS-LODASH-1040724 — dropped.»
Formatos de archivo
Qué almacena cada uno: .trivyignore, .grype.yaml,.snyk y osv-scanner.toml.
La misma supresión —«ignorar CVE-2023-12345, riesgo aceptado»— se ve distinta en cada escáner. Así es como los cuatro formatos la codifican.
Trivy — .trivyignore
Una lista simple de IDs de vulnerabilidad, uno por línea, con# comentarios para el motivo humano. No lleva caducidad ni alcance de paquete legible por máquina, así que esos campos se descartan (con una advertencia) al convertir desde formatos más ricos.
# .trivyignore — one ID per line; '#' starts a comment.
# Accepted risk: no fixed version upstream yet (review 2026-09).
CVE-2023-12345
CVE-2024-0001Grype — .grype.yaml
Una listaignore YAML de comparadores estructurados. Cada regla puede acotar una supresión a un nombre y versión depackage específicos, pero no lleva caducidad.
# .grype.yaml — ignore rules are structured matchers.
ignore:
- vulnerability: CVE-2023-12345
# Optional scoping by package narrows the suppression.
package:
name: libfoo
version: 1.2.3
- vulnerability: GHSA-xxxx-yyyy-zzzzSnyk — .snyk
Una política YAML indexada por ID de problema. Cada entrada acota por ruta ('*' para todas) y lleva unreason legible por personas y una marca de tiempo expires.
# .snyk — a YAML policy file. Each ignore is keyed by issue ID.
version: v1.25.0
ignore:
SNYK-JS-LODASH-1040724:
- '*':
reason: No reachable code path; tracked in JIRA-481.
expires: 2026-09-01T00:00:00.000Z
CVE-2023-12345:
- '*':
reason: Accepted risk — no upstream fix.osv-scanner — osv-scanner.toml
Un archivo TOML con un array de tablas[[IgnoredVulns]]. Cada una incluye un id, una caducidadignoreUntil opcional y unreason.
# osv-scanner.toml — TOML array of ignored advisories.
[[IgnoredVulns]]
id = "CVE-2023-12345"
# 'ignoreUntil' is the expiry equivalent.
ignoreUntil = 2026-09-01
reason = "Accepted risk — no upstream fix."
[[IgnoredVulns]]
id = "GHSA-xxxx-yyyy-zzzz"
reason = "Not exploitable in our build."| Scanner | File | Shape | Expiry | Scope | Reason |
|---|---|---|---|---|---|
| Trivy | .trivyignore | Lista de líneas | No (solo comentarios) | No | Comentarios |
| Grype | .grype.yaml | Comparadores YAML | No | Paquete | No |
| Snyk | .snyk | Política YAML | Fecha por regla | Ruta | Sí |
| osv-scanner | osv-scanner.toml | Tablas TOML | ignoreUntil | No | Sí |
Cuándo hay pérdidas
Una nota sobre la fidelidad: como los formatos llevan metadatos distintos, no todos los campos sobreviven a cada conversión. Las fechas de caducidad no tienen cabida en .grype.yaml; el alcance de paquete y de ruta no se puede expresar en.trivyignore ni enosv-scanner.toml; y los metadatos de motivo se degradan a un comentario cuando un destino no tiene un campo dedicado. Cuando un campo no se puede asignar, el conversorlo marca como una advertencia en lugar de descartarlo en silencio, de modo que siempre sabes exactamente qué no se trasladó y puedes decidir qué hacer al respecto.
FAQ
Tus preguntas, respondidas.
Toca una pregunta para desplegar la respuesta.
¿Qué es el CVE-Ignore Converter?
Es una herramienta gratuita, basada en el navegador, que traduce una política de supresión de vulnerabilidades entre los cuatro formatos de escáner habituales: Trivy (.trivyignore), Grype (.grype.yaml), Snyk (.snyk) y osv-scanner (osv-scanner.toml). Pega un archivo de exclusión, elige un formato de destino y obtén el archivo equivalente, de modo que una supresión que decidiste una vez no tenga que volver a escribirse para cada escáner.
¿Mis datos salen alguna vez de mi navegador?
No. El conversor se ejecuta 100 % del lado del cliente. Tu archivo de exclusión se analiza y se vuelve a generar dentro de la pestaña de tu navegador: no se sube nada a un servidor y no hay cuenta ni registro. Puedes pegar con seguridad políticas internas de CVE y los comentarios que las justifican.
¿Entre qué formatos puede convertir?
Se admiten las cuatro direcciones: .trivyignore (Trivy), .grype.yaml (Grype), .snyk (política de Snyk) y osv-scanner.toml (osv-scanner). Cualquier formato de origen se puede traducir a cualquier formato de destino, así que también sirve como unificador cuando adoptas un nuevo escáner.
¿Cómo convierto un archivo .trivyignore en un archivo de política .snyk?
Pega el contenido de .trivyignore y selecciona .snyk como formato de destino. El conversor asigna cada ID de vulnerabilidad a un bloque de exclusión YAML de Snyk indexado por el ID del problema, usando un alcance de ruta comodín, y traslada cualquier comentario de línea al campo de motivo. La conversión se ejecuta enteramente en tu navegador, sin que se suba nada.
¿Puedo convertir un archivo de exclusión .grype.yaml a .trivyignore?
Sí. Los comparadores de exclusión estructurados de Grype —ID de vulnerabilidad, nombre de paquete opcional y alcance de versión— se reducen a una lista plana de IDs en formato .trivyignore. Como .trivyignore no tiene alcance de paquete ni de versión legible por máquina, esos campos no se pueden representar en el destino; el conversor los marca como advertencias en lugar de descartarlos en silencio.
¿Cómo unifico una política de supresión de vulnerabilidades en varios escáneres?
Mantén un único archivo de exclusión de origen y usa el conversor para traducirlo a cada formato de escáner que ejecutes. Esto evita el problema de la política fragmentada, donde la misma decisión de riesgo aceptado tiene que reexpresarse por separado para Trivy, Grype, Snyk y osv-scanner, y previene la desviación en la que un CVE se suprime en una herramienta pero sigue activo en otra.
¿Cuál es el formato de un archivo de exclusión osv-scanner.toml?
Es un archivo TOML que contiene un array de tablas [[IgnoredVulns]]. Cada tabla incluye un campo id (por ejemplo CVE-2023-12345, GHSA-xxxx-yyyy-zzzz, RUSTSEC-2023-0001), una fecha de caducidad ignoreUntil opcional en formato RFC3339 y una cadena reason opcional. El conversor lee y escribe este formato junto con Trivy, Grype y Snyk.
¿Por qué no todos los campos pueden conservarse en una conversión de ida y vuelta?
Los formatos no llevan los mismos metadatos. El .trivyignore de Trivy es una lista de IDs con comentarios opcionales; el .snyk de Snyk es una política YAML con alcance por ruta y fechas de caducidad; el .grype.yaml de Grype y el osv-scanner.toml quedan en un punto intermedio. Los campos sin equivalente en el destino —fechas de caducidad, alcance de paquete o de ruta, metadatos de motivo— se marcan como advertencias en lugar de descartarse en silencio, de modo que siempre sabes qué no se asignó.
¿Se conserva el comentario o motivo de cada supresión?
Siempre que el formato de destino lo admita. Tanto Trivy como Snyk llevan motivos legibles por personas (Trivy como comentarios de línea y Snyk como un campo reason dedicado), por lo que las justificaciones sobreviven a esas conversiones. Cuando un formato de destino no tiene dónde almacenar el motivo, el conversor lo mantiene como comentario donde es posible y emite una advertencia donde no puede.
¿Está afiliado a Aqua Security, Anchore, Snyk o Google?
No. Esta es una herramienta independiente y comunitaria, y no está afiliada ni respaldada por Aqua Security (Trivy), Anchore (Grype), Snyk ni Google (osv-scanner). Los nombres de los proveedores y formatos se usan únicamente para describir lo que la herramienta lee y escribe.
More free, private DevOps tools.
El CVE-Ignore Converter es una herramienta más deOpsCanopy: una copa creciente de validadores, conversores y probadores basados en el navegador que nunca tocan un servidor.
Más en Seguridad
- JWT Decoder & EncoderDecode, verify, and sign JWTs — HS/RS/PS/ES/EdDSA — with a built-in key generator.
- Hash GeneratorCompute MD5, SHA-1, SHA-256 and SHA-512 digests of any text — plus HMAC.
- Certificate Decoder & Chain CheckerDecode PEM certificates, check chain order, and verify signatures — in your browser.
39 herramientas gratuitas, todas pueden funcionar sin conexión — opscanopy.com funciona sin registro y sin subir nada.
Combina bien con AlertLint, nuestro probador de reglas de alerta de Loki basado en el navegador, o explora eldirectorio completo de herramientas.
No está afiliado ni respaldado por Aqua Security(Trivy), Anchore(Grype), Snyk niGoogle (osv-scanner). Todos los nombres de producto son marcas comerciales de sus respectivos propietarios y se usan únicamente para describir lo que esta herramienta lee y escribe.