Professional Documents
Culture Documents
Tipos
De software. Ejemplos:
Inyección SQL
Desbordamiento de buffer
Clickjacking
Condiciones de carrera
Cross-site scripting
De hardware
Hitos o etapas
En el tiempo de vida de una vulnerabilidad podemos distinguir los siguientes hitos o etapas
importantes:[1][2][3]
Nacimiento.- Durante el proceso de desarrollo del producto por parte del proveedor (Ej el
vendedor o una comunidad de desarrolladores software), se introducen una serie de defectos.
Estos defectos pueden ser de diseño, implementación o de gestión. Algunos de esos defectos
pueden convertirse en riesgos para la seguridad del producto y por tanto para la seguridad del
usuario del producto. Un defecto se convierte en una vulnerabilidad si hace que el
comportamiento del sistema sea tal que pueda ser aprovechado para conseguir acceso no
autorizado, elevación de privilegios, denegación de servicio o cualquier otra forma de romper la
seguridad del sistema. No se consideran vulnerabilidades que son detectadas y corregidas antes
del despliegue.
Descubrimiento.- Este hito ocurre cuando se tiene conocimiento de la existencia de la
vulnerabilidad. Si la vulnerabilidad es creada intencionadamente entonces el nacimiento y el
descubrimiento ocurren simultáneamente. Se llama descubridor a la primera persona que revela
un defecto y determina que ese defecto es una vulnerabilidad. Si el descubridor no es conocido
se dice que es anónimo.
Comunicación de la vulnerabilidad.- Este hito ocurre una vez que el descubridor revela la
vulnerabilidad a alguien más. Esta transferencia de información puede ser de distintos tipos.
Ejemplos: completa y pública vía (revelación completa) o comunicación privada entre hackers. Se
llama originador (en inglés originator) o revelador (en inglés discloser) a la persona u
organización que informa de la vulnerabilidad a el proveedor del producto. Observar que el
descubridor y el originador pueden ser personas distintas.
Corrección.- Ocurre cuando el vendedor del producto analiza la vulnerabilidad, localiza cual es el
problema, y lanza una versión al público que resuelve la vulnerabilidad.
Se ha hablado mucho[6][7][8] de las supuestas presiones que recibió PGP Corporation para
introducir una puerta trasera en su software. Esta supuesta puerta trasera permitiría a la
ciertas organizaciones (Ej. FBI, NSA ) poder descifrar el contenido cifrado con esta
herramienta. Para camuflar esta supuesta puerta trasera se especula que se presionó a PGP
Corporation para que hiciera el código de PGP (software de código abierto) tan enrevesado y
extenso que no se pudiera detectar tal puerta trasera. Esto provocó que muchos usuarios se
quedaran con las versiones antiguas, fácilmente verificables, y promovió la creación de
software alternativo.
Otro caso es la supuesta introducción de una puerta trasera en openBSD promocionada por
el FBI.[9]
Los atacantes de sistemas.-Pueden aprovechar las vulnerabilidades para hacer vulnerables a los
sistemas y conseguir de forma ilegal beneficios monetarios de ello, ya sea directamente (Ej.
permitiendo el uso de tarjetas de crédito ajenas) o indirectamente (Ej. vendiendo información
privada sobre las víctimas). Por su propia naturaleza este tipo de investigadores del
vulnerabilidades no están interesados en la revelación de las vulnerabilidades descubiertas ya
que así se aseguran de que la vulnerabilidad no sea arreglada y así puedan seguir beneficiándose
de la misma.
Forzar al proveedor del productor a mejorar la calidad del producto y que tenga más interés
en producir software más seguro.
Obtener gratificaciones monetarias por parte del proveedor del producto o de otra entidad.
Transmisión de la información
Supongamos que alguien no implicado en un producto descubre una vulnerabilidad. Este puede
tomar 4 opciones principales:
No hacer nada
Los tres primeros casos podríamos agruparlos diciendo que adoptan una política de revelación
basada en no revelar públicamente la información (cada uno por motivos distintos). En el último
caso el individuo se enfrentaría a tomar una decisión sobre qué política de revelación pública de la
información quiere usar.
Fecha de revelación
Política de revelación
La política a tomar es un tema controvertido y no sólo es exclusivo del mundo informático. Por
ejemplo en el pasado hubo controversias en el mundo de la cerrajería sobre la distribución del
conocimiento de las vulnerabilidades que tenían las cerraduras.
Teniendo en cuenta los diversos factores (Ej costes, beneficios, riesgos) se han propuesto distintos
tipos de prácticas y políticas para la revelación de la información sobre vulnerabilidades. Las
propuestas podríamos clasificarlas en 3 tipos: No revelar, revelación completa y prácticas a medio
camino entre una otra (revelación parcial).
No revelar
Revelación completa
La estrategia de revelación completa, revelación total o divulgación masiva (en inglés full
disclosure) consiste en revelar a toda la comunidad (divulgación masiva) toda la información
disponible sobre un problema de seguridad en cuanto este es conocido. Por ejemplo se puede dar
información de como se encontró el fallo, qué sistemas son vulnerables, como explotar la
seguridad o como protegerse frente al fallo. Se revelan todo tipo de detalles sobre el fallo y esta
información tan detallada puede ser usada por hackers malintencionados para desarrollar exploits
que permitan aprovechar la vulnerabilidad a cualquiera que lo utilice, aunque no entiendan el
funcionamiento del mismo (script kiddies).
Revelación parcial
La políticas de revelación revelación parcial (en inglés partial disclosure) intentan establecerse
como punto intermedio entre la política de seguridad por oscuridad y las política de revelación
completa. Intentan aprovechar buenas ideas de una y otra política para situarse en un punto
intermedio con mejores características. Se han desarrollado distintos modelos pero cada uno tiene
sus inconvenientes considerándose el problema de la política de revelación como un problema
abierto y pendiente de solución.
Mercado de vulnerabilidades
Alrededor del mundo de los agujeros de seguridad se ha ido creando una importante actividad
económica, dando lugar a negocios a veces muy lucrativos. El activo con el que se negocia es la
información sobre la vulnerabilidad. El negocio suele estar en:
La venta de productos (Ej. antivirus, IDS´s, IPS´s o cortafuegos) que detectan, solucionan o
mitigan el impacto de vulnerabilidades.
Se ha propuesto que la existencia de un mercado de vulnerabilidades puede ser una buena idea
para incentivar a los proveedor de sistemas para que se preocupen más en mejorar la seguridad de
sus productos y en arreglar rápidamente las vulnerabilidades que se vayan encontrando.
Motivaciones
Las motivaciones para la existencia de este tipo de mercado son, en última instancia:
Conseguir ganancia económica. Este es el principal motivo para la existencia de este mercado.
Consecución de una herramienta defensiva u ofensiva para poderla utilizar en cierto tipo de
conflictos (netwar y ciberguerra).
Actores
Productores de información:
Hackers
investigadores
Consumidores:
Gobiernos (netwar, ciberguerra)
Atacantes maliciosos
Intermediarios
Los proveedores de productos juegan un papel especial en este mercado ya que el mercado se
basa en la existencia de fallos en sus productos, lo que les puede provocar la pérdida de confianza
y finalmente la pérdida de clientes. La existencia de un mercado de vulnerabilidades no les
beneficia ya que:
Cuanto más mercado haya más competencia por obtener la información, más vale esa
información y por tanto será más difícilmente accesible para los proveedores.
Cuanto más mercado haya más competencia por obtener la información, más vale esa
información y por tanto más se incentiva al descubrimiento de estas vulnerabilidades.
Por tanto intentan no fomentarlo aunque están siendo obligados por su crecimiento a entrar poco a
poco en él para no verse excluidos cada vez más del conocimiento de las vulnerabilidades de sus
propios productos. Por ejemplo cada vez es más frecuente la convocatoria de concursos
remunerados para la búsqueda de vulnerabilidades.
Para fomentar la revelación de la información sin pagar están tomando una serie de iniciativas
como por ejemplo:
Establecimiento de buenas relaciones con investigadores para fomentar que les revelen la
información. Ejemplos:
Participación en conferencias de hackers e investigadores (Ej. Black Hat Briefings)
Invitar a sus dependencias a investigadores para que les enseñen como consiguen encontrar
vulnerabilidades en sus productos.
Tipos de mercado
Atraer la confianza de los investigadores. Para ello es habitual anunciarse en los entornos de
los investigadores como las conferencias Blackhat y DEF CON de Estados Unidos o
RootedCON de España.
Ganar aceptación en la industria y por tanto clientes para sus productos. El objetivo es implantar
la idea de que esta industria permite protegerse frente a vulnerabilidades que posiblemente ya
circulan en el mercado ilícito. Para ello suelen utilizar políticas de revelación responsable y
colaboran de forma activa para la corrección de dichas vulnerabilidades. También se suele pedir
que el propio proveedor dé cierta publicidad al descubridor de la vulnerabilidad.
Desarrollar el negocio de forma que permita obtener beneficios. El objetivo es crear productos (Ej
boletines de información, productos software como antivirus, IDS´s, IPS´s o cortafuegos) que
permitan protegerse frente a las vulnerabilidades antes de que el proveedor arregle la
vulnerabilidad.
Inconvenientes
Los principales inconvenientes de este tipo de mercado tienen que ver con la revelación de la
información, la incentivación a los investigadores y el aumento de los precios de las
vulnerabilidades
Revelación de la información
La existencia del mercado de vulnerabilidades provoca una resistencia a que los agujeros de
seguridad sean revelados para que puedan ser arreglados. La información sobre la vulnerabilidad
pierde valor cuanto más gente la conoce y pierde totalmente el valor cuando el problema es
arreglado y ya no existe. Por tanto hay una tendencia, para proteger el valor de la información, a
mantener la información oculta. Todo esto repercute en una menor seguridad de los productos.
En general las más importantes empresas que se dedican a este negocio están comunican a los
proveedores sobre las vulnerabilidades que encuentran. Sin embargo hay algunas compañías
pequeñas que no lo hacen. Esta política de no revelación de vulnerabilidades es muy criticada pero
no se suele considerar ilegal ya que la información es vendida con descargo de responsabilidad
diciendo que esa información debería ser usado para pruebas internas, no para burlar la ley.
Los gobiernos, dependen del tipo de vulnerabilidad que encuentren, informan al proveedor del
producto o no. Si se trata de un punto débil de sistemas que ellos mismos usan entonces
comunicarán al proveedor. Si por ejemplo se trata de una vulnerabilidad utilizada en una
herramienta ofensiva, entonces no revelará al proveedor la información sobre dicha vulnerabilidad
La existencia de un mercado donde vender las vulnerabilidades provoca que haya una mayor
investigación de vulnerabilidades, lo que provoca que se descubran más y por tanto haya un
conjunto más amplio de vulnerabilidades activas que causas inseguridad a los usuarios
La existencia de un mercado cada vez más amplio de vulnerabilidades provoca que los precios
suban. Esto provoca que la información sea menos accesibles a los proveedores que en definitiva
son los que arreglan la vulnerabilidad para todos sus clientes.
Ejemplos
Casi desde el principio de los sistemas de información ha habido, y sigue habiendo, un mercado
negro o mercado underground e ilícito de vulnerabilidades en el que los atacantes venden
información no revelada públicamente sobre vulnerabilidades para que otros puedan
aprovecharlas de forma ilícita (Ej robar dinero, causar daños, espionaje, recopilar información
para chantaje, divulgación de información falsa como verdadera (para por ejemplo hacer pump
and dump) o adware indeseado. Un ejemplo contrastado de uso del mercado underground para
la venta de información sobre vulnerabilidades es el caso de la vulnerabilidad del Microsoft
Windows WMF rendering fue vendida en el mercado ilícito.[12] Hay dos tipos de negocios
relacionados con este tipo de mercado: La contratación para atacar un objetivo específico (Ej
persona u organización) y por otro lado la compra de productos ya elaborados y listos para ser
usados (exploits). Para ponerse en contacto, las partes de este tipo de mercado usan canales de
IRC y sitios web (Ej https://web.archive.org/web/20130926061307/http://web-hack.ru/ )
específicos. Al ser un mercado ilícito los negocios no son públicos y esto facilita la venta del
mismo producto a distintos compradores y así sacar un mayor beneficio.
TippingPoint, una división de 3Com, ofrece sistemas de detección de intrusos para protegerse
contra vulnerabilidades. Esta compañía aplica una política de seguridad de revelación
responsable.
Algunos proveedores de productos convocan Bug Bounty's que son convocatorias para que
hackers e investigadores sobre seguridad investiguen sus productos y, si encuentran e informan
sobre vulnerabilidades se les gratifica por ello. Algunas de las organizaciones que han convocado
este tipo de concursos son Mozilla, Microsoft, Google o Facebook.[13]
Muchos gobiernos tienen programas en los que vulnerabilidades que no son públicas pueden ser
usados de forma defensiva u ofensiva con el objetivo de defender los intereses de los que
detentan el poder. En 2001 ya se pensaba[14] que más de 20 países tenían o estaban desarrollado
capacidades para desarrollar ataques informáticos (netwar y ciberguerra).
Wabisabi Labi era un site que permitía la adquisición de vulnerabilidades. Permitía cuatro tipo de
transacciones: Subastas tradicionales, subastas con más de un ganador, compras inmediatas y
compras de un comprador exclusivo.
Argeniss, Inmunity y GLEG Ltd son pequeñas compañías que contratan a sus propios
investigadores y venden suscripciones a sus servicios para proveer información sobre las
vulnerabilidades que encuentran. Esta información no la comunican a los proveedores de los
productos a que se refieren. De esta forma incrementan el valor y el tiempo de vida de las
vulnerabilidades con las que comercian. Le dan a la información un carácter privado. Esto ha
tenido importantes críticas desde el punto de vista ético.
Gestión de la información
Hay distintas iniciativas cuyo propósito es gestionar información sobre vulnerabilidades. Desde el
gobierno de Estados Unidos destacan:
Casos famosos
El FBI sufrió un ataque de un usuario que usó cuentas de correo, obtuvo contraseñas y otros
datos de relevancia, a través de un puerto que estaba abierto en el código web.[cita requerida]
En Windows 98, ciertas contraseñas de usuario se exponen en las carpetas, que pueden ser
leídas en MS-DOS[cita requerida]
Véase también
Error de software
Exploit
Seguridad informática
Common Vulnerabilities and Exposures (CVE)
Packet Storm
Bugtraq
Referencias
5. Bruce Schneier, "The Strange Story of Dual_EC_DRBG ". Schneier on Security. Noviembre de
2007
9. Thom Holwerda, "More Details Emerge Regarding OpenBSD FBI Backdoors ". OS news. Dec.
2010
11. Michael Sutton y Frank Nagle, "Emerging Economic Models for Vulnerability Research"
13. Caleb Bucker,"Lista de Programas Bug Bounty (Ganando Dinero por reportar
Vulnerabilidades) "
14. Defense Science Board. Protecting the Homeland: Report of the Defense Science Board Task
Force on Defensive Information Operations 2000 Summer Study Volume II
Andrew Cencini et ali., "Software Vulnerabilities: Full-, Responsible-, and Non-Disclosure".
Diciembre de 2005
Michael Sutton y Frank Nagle, "Emerging Economic Models for Vulnerability Research".
Proceedings of the Workshop on the Economics of Information Security -2006.
Enlaces externos
(en inglés) CVE : Listado de vulnerabilidades comunes clasificadas y publicadas junto con
proveedores de soluciones.
(en inglés) Secunia Personal Software Inspector (PSI) : Software que detecta el software
vulnerable y desactualizado instalado en nuestro equipo proporcionándonos un enlace de
descarga a la última versión o parche que corrige las vulnerabilidades
Netcraft