¿Qué es la integridad?
Al hablar de integridad, nos referimos a la capacidad que tenemos de certificar que una pieza de información se mantiene sin tocar. Por ejemplo, si te estás descargando el último instalador de una aplicación, ¿cómo puedes estar seguro de que mientras la descargabas no fue modificada o daañada accidental o intencionadamente?
Para contrarestar este problema, usualmente verás hashes mandados junto a los archivos para que puedas probar que es el mismo. Un hash es un número obtenido de aplicar un algotitmo concreto a un archivo. Normalmente encontraras MD5, SHA1, SHA256, etc.
Tomaremos WinSCP como ejemplo. Si vamos al su repositorio de Sourceforge, veremos que para cada archivo hay algunos hashes publicados. Estos son pre-calculados por los creadores de WinSCP con el objetivo de que puedas saber si lo que has descargado se corresponde.
Si descargamos el archivo ejecutable y lo hasheamos con los mismos algoritmos que aparecen publicados, veremos que efectivamente coinciden.
Fallos de Integridad de Información y Software
Esta vulnerabilidad surge de código o infraestructura que usa software o información sin ningún tipo de comprobación de integridad. Como no está siendo comprobado, un atacante podría modificar código o software pasado a la aplicación con consecuencias inesperadas. Hay dos tipos de vulnerabilidades en esta categoría:
- Fallos de Integridad de Software.
- Fallos de Integridad de Información.
