Si alguna vez has leído sobre ciberseguridad, es probable que el término «día cero» haya aparecido de vez en cuando para describir las vulnerabilidades que han sido explotadas por los hackers. También descubrirá rápidamente que éstas suelen ser las más mortíferas. Lo que son y cómo funcionan ya ha sido tratado sucintamente por mi colega Simon Batt.

Pero a medida que se profundiza en el tema, se descubren algunas cosas que tal vez no se sabían y se empieza a pensar dos veces en todo lo que se ejecuta en los dispositivos (lo que no es necesariamente malo). Estudios de ciberseguridad como esta investigación de la gente de RAND Corporation (un grupo de expertos de las Fuerzas Armadas de Estados Unidos) demuestran que los exploits de día cero tienen muchas formas de mostrarnos lo frágil que es nuestro mundo digital.

Los exploits de día cero no son tan difíciles de hacer

zeroday-programación

El estudio de la RAND confirma algo que muchos programadores que se han adentrado en el hackeo de pruebas de concepto han sospechado: no se necesita mucho tiempo para desarrollar una herramienta que simplifique el proceso de explotar una vulnerabilidad una vez que se ha encontrado. Citando directamente el estudio,

Hay que tener en cuenta que esto es la media. En realidad, muchos exploits se terminan en cuestión de días, dependiendo de la complejidad que conlleve la elaboración del software y del alcance que se quiera dar al efecto del malware.

RELACIONADO:  Cómo activar/desactivar la contraseña de imagen en Windows 10

A diferencia del desarrollo de software para millones de usuarios finales, la creación de malware sólo tiene en cuenta a una persona en lo que respecta a la comodidad: su creador. Como «conoce» su código y su software, no hay ningún incentivo para concentrarse en la facilidad de uso. El desarrollo de software para el consumidor se enfrenta a muchos obstáculos debido al diseño de la interfaz y a la comprobación del código, por lo que lleva más tiempo. Escribes para ti y, por lo tanto, no necesitas que te lleven de la mano, lo que hace que el proceso de programación sea extremadamente fluido.

Viven una cantidad de tiempo impactante

zeroday-spread

Es un punto de orgullo para un hacker saber que un exploit que ha hecho funciona durante mucho tiempo. Así que puede ser un poco decepcionante para ellos saber que esto es algo común. Según RAND, la vulnerabilidad media vivirá 6,9 años, y la más corta que han medido vivirá un año y medio. Para los piratas informáticos esto es decepcionante, ya que así descubren que no son necesariamente especiales cuando hacen un exploit que arrasa en la red durante años. Para sus víctimas, sin embargo, esto es aterrador.

La vulnerabilidad «longeva» media tarda 9,53 años en ser descubierta. Eso es casi una década que tienen todos los hackers del mundo para encontrarla y utilizarla en su beneficio. Esta problemática estadística no es una sorpresa, ya que la comodidad a menudo se convierte en el principal objetivo mientras que la seguridad se queda en el asiento de atrás en el proceso de desarrollo. Otra razón por la que existe este fenómeno es por el viejo adagio: «No sabes lo que no sabes». Si tu equipo de diez programadores no puede descubrir que hay una vulnerabilidad en tu software, seguramente uno de los miles de hackers que la buscan activamente te echará una mano y te la mostrará por las malas. Y entonces tendrás que parchearlo, lo cual es otra lata de gusanos en sí misma, ya que podrías terminar introduciendo otra vulnerabilidad, o los hackers podrían encontrar rápidamente una manera de eludir lo que has implementado.

RELACIONADO:  ¿Cuánto cuesta volver a abrir una cerradura?

El altruismo no es muy abundante

Finifter, Akhawe y Wagner descubrieron en 2013 que, de todas las vulnerabilidades descubiertas, solo entre el 2 y el 2,5 por ciento de ellas fueron comunicadas por buenos samaritanos que se encontraron con ellas en un paseo matutino como parte de un programa de recompensas por vulnerabilidad (es decir, «te damos golosinas si nos dices las formas en que nuestro software puede ser hackeado»). El resto fueron descubiertas por el propio desarrollador o por un hacker que «iluminó» penosamente a todo el mundo sobre su existencia. Aunque el estudio no distingue entre código cerrado y abierto, sospecho que el software de código abierto recibe más informes altruistas (ya que al tener el código fuente abierto es más fácil que la gente informe exactamente de dónde se produce una vulnerabilidad).

Lo que hay que decir

Mi esperanza aquí es que esto proporcione una perspectiva sobre lo fácil que es ser víctima de un exploit y cómo los exploits de día cero no son tan raros como parecen. Todavía hay muchas preguntas sin respuesta sobre ellos, y quizás un estudio más detallado nos ayude a equiparnos con las herramientas que necesitamos para combatirlos. La idea es que debemos estar atentos.

¿Te han sorprendido estos hallazgos? Cuéntanoslo todo en un comentario!