Security Audit Skill de Cloudflare: revisiones basadas en evidencia
Código del validador: limitar entrada antes de evaluar registros
Estudia preflight JSON, límites y diagnósticos sin confundir formato válido con prueba.
Qué aprenderás
- Acotar antes de parsear
- Interpretar un subconjunto definido
- Acotar los diagnósticos
Antes de empezar
- Lectura de código y JSON
- Autorización explícita y plan de aislamiento
Un proyecto propuesto muestra revisiones, huecos de cobertura e incógnitas sin ejecutar contenido.
Conclusiones clave
- Hay límites antes de JSON.parse.
- El intérprete tiene un subconjunto definido.
- Un registro aceptado no prueba el hecho.
Acotar antes de parsear
El validador inspeccionado limita la entrada a 5 MiB y el anidamiento a 64. Su ruta de comando realiza lectura acotada, preflight estructural, JSON.parse y validación del documento.
También declara límites de 1.000 elementos por array y 100 errores. Son restricciones del código fijado, no mediciones de capacidad segura para cualquier equipo.
Interpretar un subconjunto definido
Implementa las palabras clave JSON Schema necesarias para su esquema de informes. Mantiene un conjunto explícito y denuncia términos no soportados; no se presenta como motor universal.
La comprobación de unicidad tiene presupuestos para claves canónicas y conjuntos. Estas medidas limitan trabajo de procesamiento, pero no cotejan la traza con el comportamiento del programa objetivo.
Acotar los diagnósticos
Las funciones de diagnóstico escapan caracteres inseguros y recortan cadenas citadas. Importa cuando nombres o contenido no confiable llegan después a una terminal.
Solo se siguieron rutas seleccionadas; no se ejecutó la suite de pruebas del proyecto. La presencia de límites no demuestra que todos los casos extremos del parser sean seguros.
Cómo elegir
| Criterio | Opción A | Opción B |
|---|---|---|
| Best when | You need predictable behavior and easy auditing | You need adaptive optimization and have reliable telemetry |
| Main risk | May leave performance on the table | Can become difficult to explain or debug |
Pasos de implementación
- 1
Leer límites y entrada del comando.
- 2
Separar estructura y verificación factual.
- 3
Examinar la salida de diagnóstico.
Ejemplo para copiar
bounded file read
-> structural preflight
-> JSON.parse
-> document validation
-> bounded, escaped diagnosticsPreguntas frecuentes
¿Es una biblioteca JSON Schema universal?
No, implementa lo necesario para este proyecto.
¿Se ejecutaron sus pruebas?
No. Se informa una inspección de fuentes.
Fuentes
- Security Audit Skill / skills/security-audit/validate-findings.cjsFuente verificada 2026-09-23