Informes de pentesting
Hacer un buen pentest no se trata solo de explotar cosas. Al final, una de las cosas que más importa es cómo transmitimos ese conocimiento. Y seamos honestos/as: para la mayoría, documentar hallazgos es la parte más tediosa del trabajo.
Puedes explotar una vulnerabilidad de forma compleja o creativa, pero si después la explicación es pobre o desordenada, el trabajo pierde brillo. No comunica el valor real del hallazgo, ni su impacto.
Una buena redacción debería, como mínimo:
Definir claramente qué se encontró, cómo y por qué es importante.
Detallar de forma estructurada paso a paso cómo se reproduce, incluyendo:
Dónde se identificó (sección, endpoint, funcionalidad, etc.).
Qué petición, comando o payload se usaron.
Qué resultado se obtuvo como evidencia clara de la presencia de la vulnerabilidad o explotación exitosa.
Explicar el impacto real y potencial para los sistemas afectados, los usuarios, el negocio o el cumplimiento normativo.
Indicar las medidas necesarias para solventar la vulnerabilidad o mitigar el riesgo, junto con buenas prácticas si aplica.
Y volviendo al tema de lo tedioso que puede ser escribir todo esto... es ahí donde entra la IA. Usar IAs para generar una primera versión del hallazgo, estructurada y clara, que después puede adaptarse al contexto de la vulnerabilidad identificada o explotada. Así se puede enfocar más el tiempo en la práctica y menos en la documentación.
Redacción de una vulnerabilidad
La plantilla está diseñada para automatizar la redacción técnica de vulnerabilidades en informes de pentesting. Utiliza un prompt optimizado para ChatGPT (GPT-4o) que genera una entrada completa a partir de los datos reales de un hallazgo. En resumen:
Una estructura estandarizada de 6 secciones: Título, Definición, Descripción, Impacto, Solución y Referencias.
Un bloque editable tipo YAML donde se cargan los datos del hallazgo (parámetro vulnerable, URL, método, impacto, etc.).
IA no local: Si se usa una IA que no se encuentre en local hay riesgo del compromiso de la privacidad de los datos debido a no tener un control total del manejo de datos, por lo que, en este caso, se deja el ejemplo anonimizado y luego se adapta en local.
IA local: En caso de usarla en local y se pueda asegurar la privacidad total de los datos, se pueden rellenar con datos reales. (Ver IA en local)
Reglas de estilo claras para que el resultado sea coherente y profesional.
Instrucciones para revisar el contenido generado en un lienzo editable antes de exportar la vulnerabilidad redactada.
Prompt
Ejemplo
Para este ejemplo se ha usando ChatGPT con GPT-4o. Cuando se ejecuta el prompt, se abre un lienzo donde es posible realizar los cambios necesarios y luego pedir que nos exporte un fichero .md que podemos utilizar y adaptar con la información confidencial en nuestra herramienta de reporting favorita.
La siguiente captura muestra la salida por defecto y sin adaptar tras usar el prompt anterior. Como se puede observar, esto da una plantilla que luego debe revisarse ante posibles (y probables) alucinaciones, por ello el lienzo es una buena forma de hacer nuestras adaptaciones directamente, pedir mejoras concretas, etc.
Una vez se hayan terminado las adaptaciones, se puede solicitar el fichero en formato markdown con el siguiente prompt:
Última actualización
¿Te fue útil?