Skip to main content

¿Qué es una huella digital?

La huella digital es el mecanismo que utiliza Corgea para identificar de forma unívoca las vulnerabilidades de una base de código. Funciona como el “ADN” de cada hallazgo: permite reconocer la misma vulnerabilidad en distintos escaneos aunque el código cambie ligeramente.
Las huellas digitales se generan automáticamente en segundo plano. No requieren configuración ni mantenimiento y funcionan desde el primer escaneo.

¿Cómo funciona?

Cuando Corgea escanea el código y detecta un hallazgo de seguridad, crea una huella digital a partir de sus características principales:
  • Ubicación: Ruta del archivo y número de línea del hallazgo
  • Contexto: La línea de código específica y su estructura circundante
  • Clasificación: El tipo de vulnerabilidad de seguridad (por ejemplo, inyección SQL, XSS, etc.)
Estos elementos se combinan para crear un identificador único y consistente que persiste a través de múltiples escaneos de tu base de código.

Inteligencia basada en AST

Corgea analiza el árbol de sintaxis abstracta (AST) para que las huellas digitales sean más precisas y resistentes a los cambios en el código.
Un árbol de sintaxis abstracta representa la estructura del código y las relaciones entre sus elementos, no solo su contenido textual.Los métodos tradicionales que solo tienen en cuenta el texto o el número exacto de línea dejan de funcionar fácilmente al:
  • Añadir o eliminar líneas en blanco o comentarios
  • Reformatear el código, por ejemplo al cambiar la sangría o los espacios
  • Refactorizar nombres de variables o firmas de funciones
Por qué el AST es importante para ti: Al incorporar la información del AST a las huellas digitales, Corgea puede:
  • Reconocer la misma vulnerabilidad incluso cuando ocurren cambios superficiales en el código
  • Centrarse en el significado semántico en lugar de limitarse a comparar texto
  • Mantener el seguimiento durante la reorganización y refactorización del código
  • Reducir los falsos positivos cuando aparecen problemas similares pero diferentes
Las huellas digitales basadas en el AST proporcionan un seguimiento más estable y fiable de los hallazgos a medida que evoluciona el código.

¿Dónde se utilizan las huellas digitales?

Cuando realizas varios escaneos, Corgea utiliza las huellas digitales para determinar si un hallazgo:
  • Persiste desde escaneos anteriores
  • Se ha corregido y ya no se detecta
  • Ha reaparecido después de corregirse

Cuándo y por qué cambian las huellas digitales

Aunque las huellas digitales de Corgea están diseñadas para mantenerse estables ante cambios menores en el código, pueden cambiar en determinadas situaciones. Comprenderlas ayuda a interpretar correctamente los resultados del escaneo.
Comprender cuándo cambian las huellas digitales es importante para realizar un seguimiento preciso de los hallazgos y gestionar la seguridad.

Situaciones que generarán una nueva huella digital

Qué ocurre: Si mueves un archivo a otro directorio o lo renombras, la vulnerabilidad obtendrá una nueva huella.Ejemplo: Mover src/utils/database.py a src/core/db.py crea una huella digital nueva aunque el código vulnerable sea idéntico.Por qué: La ruta del archivo es un componente central de la huella digital. Esto es intencionado: ayuda a rastrear dónde existen vulnerabilidades en la estructura de tu proyecto.Lo que verás: El hallazgo anterior puede aparecer como “corregido” y se detectará otro en la ubicación nueva.
Si vas a hacer una reorganización de archivos a gran escala, coordina con tu equipo de seguridad para que entiendan el contexto.
Qué ocurre: Una refactorización importante que cambia la estructura o el contexto del código vulnerable generará una nueva huella digital.Ejemplo: Convertir una consulta SQL en línea vulnerable en una función auxiliar de base de datos con la misma vulnerabilidad cambiaría significativamente la estructura AST.Por qué: Aunque las huellas basadas en el AST toleran refactorizaciones menores, los cambios estructurales importantes indican que el contexto del código ha cambiado.Lo que verás: El hallazgo original se cierra y aparece otro nuevo, aunque el patrón de vulnerabilidad subyacente no haya cambiado.
Aprovecha las refactorizaciones importantes para corregir la vulnerabilidad, no solo para moverla.
Qué ocurre: Grandes inserciones o eliminaciones que desplazan significativamente dónde se encuentra el código vulnerable pueden modificar la huella digital.Ejemplo: Añadir 200 líneas de código nuevo sobre una vulnerabilidad podría cambiar su contexto lo suficiente como para modificar la huella digital.Por qué: Aunque la huella digital es resistente a pequeños cambios en el número de línea, los cambios drásticos sugieren que el contexto del código dentro del archivo ha cambiado.Lo que verás: El hallazgo puede parecer corregido y reaparecer en otro número de línea.
Esto es raro debido a la inteligencia AST, pero si ocurre, verifica que el problema sea realmente el mismo antes de marcarlo como duplicado.
Qué ocurre: Si el análisis de Corgea determina que un problema debe reclasificarse (por ejemplo, de “Potencial inyección SQL” a “Inyección SQL confirmada”), recibe una nueva huella.Ejemplo: Contexto adicional en análisis posteriores podría elevar o cambiar la forma en que se clasifica una vulnerabilidad.Por qué: La clasificación es uno de los datos que identifican de forma única un hallazgo. Cada clasificación puede requerir un enfoque de remediación distinto.Lo que verás: Se cierra un hallazgo y aparece otro con una gravedad o un tipo distintos en la misma ubicación.
Presta atención a los cambios en la clasificación: a menudo indican información nueva y importante sobre el riesgo de seguridad.
Qué ocurre: Modificar la línea de código vulnerable (incluso sin corregirla) puede modificar la huella dactilar.Ejemplo: Cambiando esto:
A esto:
Mantiene la vulnerabilidad de inyección SQL pero cambia la huella digital.Por qué: El contexto específico del código forma parte de la huella digital. El cambio indica que alguien modificó el código y ofrece la oportunidad de corregirlo correctamente.Lo que verás: El problema antiguo parece resuelto, y aparece otro nuevo y similar.
Al modificar código vulnerable, aprovecha para solucionar el problema de seguridad correctamente en lugar de simplemente cambiarlo superficialmente.

Situaciones que no cambiarán la huella

Los siguientes cambios normalmente no afectan a la huella digital:
  • Añadir o eliminar comentarios
  • Cambios de espacios en blanco o sangría
  • Renombrar variables locales (en la mayoría de los casos)
  • Añadir código antes o después de la línea vulnerable (dentro de lo razonable)
  • Reformateo según guías de estilo
  • Añadir sentencias de registro o depuración cercanas

Cómo gestionar los cambios de huellas digitales

1

Consulta el historial de la edición

Corgea registra todos los eventos históricos por huella, por lo que puedes consultar la cronología del hallazgo original.
2

Revisar los cambios en el código

Utiliza el sistema de control de versiones para saber qué cambió entre los escaneos.
3

Seguimiento de actualizaciones

Si estás siguiendo problemas en sistemas externos (JIRA, etc.), puede que necesites actualizar las referencias.
4

Considéralo una oportunidad

Una huella digital modificada suele indicar que alguien cambió el código vulnerable. Aprovecha para comprobar que la corrección sea completa y adecuada.
5

Contacta con el soporte

Si crees que una huella digital cambió de forma incorrecta o inesperada, nuestro equipo puede ayudarte a investigarlo.
Puede que te preguntes por qué no se conserva siempre la misma huella digital. El enfoque de Corgea ofrece estas ventajas:
  • Precisión: Cuando el contexto cambia, una huella nueva permite seguir el estado actual de la base de código.
  • Visibilidad: Los cambios de huella indican que el código se ha modificado, algo importante para los equipos de seguridad.
  • Flexibilidad: Evita el seguimiento de problemas “obsoleto” cuando un problema se marca como solucionado pero la vulnerabilidad persiste en una forma ligeramente diferente.
  • Cumplimiento: Las auditorías son más precisas cuando reflejan cambios reales en el código, no solo la existencia continua.

Beneficios clave

Obtén una comprensión precisa de tu postura de seguridad sin inflación falsa por detecciones duplicadas. Entiende cuándo los cambios en el código afectan a las vulnerabilidades rastreadas.

¿Preguntas?

Si tienes dudas sobre cómo afectan las huellas digitales a tu caso de uso, observas cambios inesperados o quieres saber más sobre el seguimiento de hallazgos, contacta con el equipo de soporte de Corgea.

¿Necesitas ayuda?

Contacta con nuestro equipo de soporte si necesitas ayuda con las huellas digitales.