Clasificación de Vulnerabilidades
Se pueden realizar distintas agrupaciones de vulnerabilidades, dependiendo del criterio que utilicemos a la hora de catalogarlas.
Dependiendo del acceso al componente vulnerable
El primer grupo de vulnerabilidades se puede catalogar según el tipo de acceso requerido para acceder al componente vulnerable
- Vulnerabilidad remota: En este caso es posible acceder al componente vulnerable de manera remota, normalmente porque el componente vulnerable se encuentra expuesto directamente en internet.
- Vulnerabilidad local: De manera totalmente opuesta, en este caso para acceder al componente vulnerable es necesario disponer de un acceso local al activo vulnerable. Este primer acceso local se puede conseguir mediante distintas vías: El atacante tiene acceso al activo vulnerable, El atacante ha comprometido previamente el activo vulnerable y tiene acceso de manera remota.
Dependiendo a quién va dirigida
Dependiendo quien se vea afectado tras materializar la vulnerabilidad podremos realizar la siguiente agrupación
- Vulnerabilidades que afectan al cliente: En este caso concreto la materialización de la vulnerabilidad tiene un impacto directo sobre el cliente del aplicativo.
- Vulnerabilidades de servidor: En este otro caso la materialización de la vulnerabilidad afecta de manera directa al componente o servicio afectado.
Dependiendo del tiempo de vida de una vulnerabilidad podemos englobar las vulnerabilidades en 3 tipos de categorías diferentes:
- Vulnerabilidades Zero day: Este tipo de vulnerabilidades no se conocen de manera pública, tan siquiera por la organización responsable del diseño del producto afectado, sin embargo, la vulnerabilidad es descubierta y, normalmente, explotada por ciberdelincuentes para atacar sistemas. También puede referirse a la vulnerabilidad no conocida que encuentra un investigador de seguridad y la reporta a la compañía u organización responsable del producto. Aunque tengan constancia de la vulnerabilidad, hasta que no se publica la vulnerabilidad y se genera un parche o actualización para solventarla ésta es considerada una vulnerabilidad de tipo “0-Day”
- Vulnerabilidades One day: Este tipo de vulnerabilidades ocurren cuando el producto afectado publica un parche para una vulnerabilidad que no se conocía. Al ser publicada se comparan las versiones anteriores con la versión publicada, se localiza el fallo en las versiones anteriores y se genera la vulnerabilidad para las versiones anteriores que presentan el fallo. Normalmente la prueba de concepto que explota la vulnerabilidad no está accesible de manera pública.
- Vulnerabilidades públicas: Este tipo de vulnerabilidades explotan un fallo conocido en versiones antiguas del sistema o el software y cuyo código, para explotar la vulnerabilidad, se encuentra disponible de manera pública. De esta manera cualquiera puede acceder al código y utilizarlo para atacar los sistemas vulnerables.