Conoce Atico34 - Solicita presupuesto
Ciberseguridad

Vulnerabilidad informática: Qué es y cómo protegerse

Nombradas en muchos artículos sobre ciberseguridad, las vulnerabilidades informáticas siguen suponiendo uno de los principales problemas para la seguridad de la información, tanto de organizaciones como de usuarios particulares, aunque es a las primeras a quienes más daños y costes les suponen. En este artículo explicaremos qué es una vulnerabilidad informática, qué tipos son los más habituales y cómo podemos prevenirlas.

¿Qué es una vulnerabilidad informática?

Una vulnerabilidad informática es un fallo en un sistema de información que pone en riesgo la seguridad de la información que puede permitir a un atacante comprometer la integridad, disponibilidad y/o confidencialidad de la misma. Hablamos, por lo tanto, de vulnerabilidades de seguridad informática, que pueden encontrarse en hardware, el firmware o el software que usa un sistema.

Así, una vulnerabilidad informática es un «agujero» de seguridad que puede ser aprovechado por un atacante para entrar en un sistema y poner en riesgo la información allí almacenada o incluso impedir que podamos usarla.

El origen de las vulnerabilidades informáticas se encuentra en diferentes fuentes: errores de diseño, errores de configuración o limitaciones de la propia tecnología. Pero, independientemente de cuál sea su origen o causa, la «llave» para aprovechar una vulnerabilidad son los denominados exploits.

Los exploits son programas o códigos que explotan (de ahí su nombre) una vulnerabilidad informática en un software o sistema.

Ni las vulnerabilidades informáticas ni los exploits son un tipo de malware (aunque a veces se incluyan en estas listas), pero sí que son un vector de entrada para estos software maliciosos.

Tipos de vulnerabilidades informáticas en ciberseguridad

Podemos agrupar las vulnerabilidades informáticas en estos tipos de acuerdo al:

  • Diseño:
    • Debilidad en el diseño de protocolos empleados en las redes.
    • Políticas de seguridad deficientes e inexistentes.
  • Implementación:
    • Errores de programación.
    • Presencia de puertas traseras (backdoors) en software y hardware.
    • Errores de código por descuido de fabricantes y desarrolladores.
  • Uso:
    • Configuración inadecuada de los sistemas informáticos.
    • Falta de conocimientos de los usuarios y de los responsables de IT.
    • Existencia de herramientas que faciliten los ataques.
    • Limitación gubernamental de tecnología de seguridad.
  • Vulnerabilidades de día cero: Es aquella vulnerabilidad que se sabe cómo explotar, pero no cómo solucionar y que mientras no se corrija, pondrá en riesgo los sistemas informáticos. Son la causa de los conocidos como ataques de día cero.

Aparte de estos tipos de vulnerabilidades informáticas, también podemos clasificarlas de acuerdo al nivel de riesgo que suponen:

Crítica

Las vulnerabilidades informáticas críticas son aquellas que permiten que las amenazas informáticas se produzcan y propaguen sin la intervención del usuario, es decir, pueden ejecutarse sin que el usuario tenga que hacer nada para ello.

Por ejemplo, la presencia de una puerta trasera en un software puede aprovecharse por un atacante que conozca su existencia y la use para llevar a cabo su ciberataque sin que el usuario sea consciente de ello.

Importante

Las vulnerabilidades informáticas importantes son aquellas que ponen en riesgo la confidencialidad, integridad y/o disponibilidad de los sistemas de información, incluidos también los recursos de procesamiento de los usuarios. Es decir, comprometen no solo los datos e información de los sistemas informáticos, también los recursos que emplean para funcionar adecuadamente.

Que tu equipo acabe siendo parte de una botnet puede ser el resultado de este tipo de vulnerabilidad.

Moderada

Las vulnerabilidades moderadas son aquellas que presentan un menor riesgo para la información y los recursos de los sistemas informáticos, que tienen menos potencial para afectar a grandes cantidades de usuarios y que pueden mitigarse con la implantación de medidas de seguridad, como por ejemplo un sistema de seguridad perimetral informática.

Baja

Finalmente, las vulnerabilidades informáticas clasificadas como bajas son aquellas que apenas entrañan riesgos reales para los usuarios y que no suponen ninguna ventaja o punto de entrada aprovechable por el atacante.

Tipos de exploits

En cuanto a los exploits que aprovechan las vulnerabilidades informáticas, estos pueden clasificarse en dos tipos:

Conocidos

Los exploits conocidos son aquellos cuyas vulnerabilidades afectadas se conocen y han sido reportadas públicamente, lo que permite que podamos tomar las medidas de seguridad pertinentes para protegernos de ellos, en concreto, la actualización de software o hardware.

Desconocidos

Por su parte, los exploits desconocidos, también llamados 0-days, son aquellos de los que no se tiene constancia y atacan vulnerabilidades informáticas de las que aún no se ha informado. Esto hace que sean especialmente peligrosos, puesto que pueden introducir malware en sistemas sin ser detectados y haciendo imposible que podamos protegernos frente a ellos.

vulnerabilidades informáticas

Algunos ejemplos de vulnerabilidades informáticas

A continuación vamos a ver algunos ejemplos de los tipos de vulnerabilidades informáticas que hemos citado más arriba.

Desbordamiento de buffer

Las vulnerabilidades de desbordamiento de buffer se producen cuando el software no es capaz de controlar la cantidad de datos que se copian en el buffer, haciendo que los datos sobrantes se almacenen en zonas de memoria adyacentes, sobrescribiendo así el contenido original. Esto puede aprovecharse por los atacantes para ejecutar código que les otorgue privilegios de administrador.

Inyección SQL

La inyección de SQL se produce cuando se aprovecha la vulnerabilidad para inyectar código SQL invasor en el código SQL programado. Esto se hace para alterar el funcionamiento normal del software y haciendo que se ejecute el código inyectado en la base de datos.

Denegación del servicio

La denegación de servicio provoca que los usuarios no puedan acceder a un servicio o recurso, perdiendo habitualmente la conectividad de la red provocada por un consumo elevado del ancho de banda de la red de la víctima o por una sobrecarga de los recursos informáticos del sistema de la víctima.

Window spoofing

Window spoofing o ventanas engañosas son un tipo de ataque que aprovecha una vulnerabilidad informática para mostrarte ventanas emergentes con notificaciones del tipo «Tu equipo está infectado por el virus X» o «Eres el ganador de X concurso». En realidad estas ventanas falsas solo quieren que las sigamos para obtener información o datos, que el atacante empleará para realizar un ataque sobre nuestro sistema.

Race condition

Las vulnerabilidades de race condition o condición de carrera son aquellas que se producen cuando varios procesos acceden al mismo tiempo a un recurso compartido, como puede ser una variable; la vulnerabilidad permite cambiar su estado y obtener un valor no esperado de ella.

Format string bugs

La vulnerabilidad de format string bugs o error de formato de cadena es un error de programación que permite que se acepte la entrada sin validar de datos proporcionados por el usuario. Esto provoca que se ejecute de manera inmediata código arbitrario para la revelación de información.

Es bastante habitual en programación que usa lenguaje C/C++.

Cross Site Scripting (XSS)

Relacionadas directamente con los ataques de phishing, las vulnerabilidades de Cross Site Scripting se aprovechan para ejecutar scripts (como JavaScript) para conducir a las víctimas a una página web maliciosa, copia exacta de la página legítima que quería visitar.

Daños que provocan las vulnerabilidades informáticas

Llegados a este punto, es evidente que la existencia de vulnerabilidades informáticas tiene el potencial de provocar serios daños tanto a empresas y entidades públicas como a particulares, aunque sin duda, es a las primeras a las que más pérdidas puede causarle, especialmente cuando se producen brechas de seguridad que ponen en peligro la información y los datos confidenciales que maneja una empresa o una entidad pública, así como la continuidad de sus operaciones y servicios.

Así, cuando nos preguntamos a qué afecta una vulnerabilidad informática, la respuesta es que produce daños que pueden afectar a la confiabilidad, la confidencialidad, la integridad, la usabilidad y la incuestionabilidad de los sistemas. Estos son los valores sobre los que se apoyan los sistemas de información y las amenazas que explotan vulnerabilidades informáticas pueden afectar a uno o varios de estos valores, dañando o poniendo en riesgo no solo sus recursos, información y datos, sino la propia continuidad de su servicio.

Por ejemplo, Windows es un software con bastantes ejemplos de vulnerabilidades explotadas a lo largo de los años; algunas de ellas han permitido la distribución de virus y gusanos, que afectaron a cientos de miles de usuarios y provocaron pérdidas económicas a muchas empresas.

Otro ejemplo lo tenemos en la distribución de malware en un PDF. Una vulnerabilidad de día cero en algunas versiones del lector Adobe Reader permitía a los hackers ejecutar código arbitrario en los equipos de los usuarios afectados de forma remota.

Sufrir ataques debido a vulnerabilidades puede suponer no solo la pérdida de información, sino también su filtración, lo que puede tener consecuencias graves para una empresa, especialmente cuando la información filtrada es confidencial o se trata de datos personales que puedan suponer un riesgo para las personas afectadas.

Además, como hemos dicho, también puede suponer una interrupción en las operaciones de la empresa; por ejemplo, si se aprovecha una vulnerabilidad para introducir un ransomware y explotarlo (como ocurrió con el ransomware WannaCry), la empresa no solo puede perder el acceso a información crítica que haya quedado cifrada, sino que puede ver su actividad parada hasta recuperar la normalidad. Todo esto supone pérdidas económicas, pero también de reputación.

Cómo prevenir las vulnerabilidades informáticas

Si bien es cierto que la responsabilidad de detectar, encontrar y solucionar las vulnerabilidades informáticas recae sobre los propios desarrolladores, fabricantes, compañías y profesionales dedicados a esta labor, como usuarios podemos tomar algunas medidas para prevenir y reducir los riesgos que suponen para nuestros sistemas.

Entre esas medidas, la más importante es mantener siempre actualizados a su última versión software y hardware, puesto que la forma de solucionar estas vulnerabilidades actualmente es mediante el lanzamiento de actualizaciones o parches para programas y sistemas.

También se debe implementar un sistema de seguridad que incluya un firewall y un antivirus, puesto que de esa forma, mientras la vulnerabilidad exista y no se arregle, habrá que prevenir los ciberataques que las aprovechen recurriendo a este tipo de soluciones.

Como siempre, la formación en ciberseguridad es altamente recomendable, tanto si somos usuarios particulares como para los empleados de una empresa. Conocer y estar informados sobre la existencia de estas vulnerabilidades conocidas, puede ayudar a evitar que seamos víctimas de algunas ciberamenazas.

En el caso de empresas u otras organizaciones, pueden recurrir a la metodología de análisis de vulnerabilidades informáticas o pruebas de pentesting, cuya finalidad es encontrar esos «agujeros» de seguridad e implementar medidas de prevención y detección para minimizar los riesgos que suponen.

Vulnerabilidades informáticas vs. Amenazas informáticas ¿son lo mismo?

Es fácil pensar que las amenazas y vulnerabilidades informáticas son lo mismo, pero lo cierto es que son conceptos diferentes, aunque muy relacionados entre sí.

Ya hemos visto que una vulnerabilidad informática es un fallo en el software o en el hardware. Por su parte, una amenaza informática es aquella acción que se aprovecha de una vulnerabilidad informática para comprometer la seguridad de un sistema informático.

Es decir, que los diferentes tipos de amenazas informáticas que existen, como un virus, un gusano informático, phishing, spyware, etc., se aprovechan de la presencia conocida (o no) de una vulnerabilidad informática para poder explotarla y comprometer el sistema, accediendo a él y llevando a cabo los objetivos y fines que desee el atacante.

En definitiva, protegernos ante las vulnerabilidades informáticas pasa por implementar una política de seguridad de la información en la empresa, aplicar siempre las actualizaciones de software, hardware y firmware que se publiquen y tener instalada una solución de seguridad integral que nos proteja ante aquellas amenazas que explotan las vulnerabilidades de programas y dispositivos.