codigo

codigo

Software

El código fuente que se curará a si mismo y podrá encontrar virus sin ayuda

El Cyber Grand Challenge organizado por DARPA buscará la creación de un código que se cure a si mismo, que sea capaz de detectar virus y quitárselos.

18 julio, 2016 16:03

Noticias relacionadas

DARPA está cerca de desarrollar un código que se cure a si mismo y sea capaz de enfrentarse a amenazas sin necesidad de programas de terceros o la acción del usuario.

Los expertos de seguridad llevan décadas buscando la manera de dejar obsoletos a los crackers, hackers y creadores de malware, sin éxito. Cada vez que un bando ha conseguido algo de ventaja, el otro ha respondido inmediatamente, y llevamos con este baile mucho tiempo.

¿Realmente es posible crear código fuente que sea independiente, que no necesite de ayuda externa para sobrevivir frente a los ataques que seguro sufrirá? Es una pregunta que DARPA quiere responder lo antes posible, y el próximo 4 de agosto buscará respuestas con una competición.

La competición que busca el código que se cure a si mismo

El Cyber Grand Challenge (CGC) consistirá en una competición de capturar la bandera. No, no tendrán que jugar al Unreal Tournament ni ningún otro videojuego online con un modo semejante.

“Capturar la bandera” es un tipo de competición que consiste en encontrar el punto débil de las defensas de un software, usando diferentes metodologías; por ejemplo, es posible hacer ingeniería inversa del programa para comprender cómo funciona y encontrar puntos débiles, buscar vulnerabilidades ocultas y finalmente, parchear el código para eliminarlas.

Los equipos reciben programas que se ejecutan en arquitecturas creadas por la propia DARPA; cada programa es de una complejidad variable, por lo que la dificultad nunca es la misma. Cada programa tiene un bug, que los equipos tendrán que encontrar sin tener acceso al código fuente.

Lo interesante es que normalmente este tipo de competiciones están reservadas a expertos de seguridad, pero en el Cyber Grand Challenge todos los equipos están compuestos por sistemas informáticos, que lucharán entre si para ser el mejor.

Cómo un programa tendrá que curar a otro

Inteligencia-artificial.jpeg

Inteligencia-artificial.jpeg

Cada sistema tendrá que analizar el programa y comprobar cómo puede activar el bug; la única manera en la que los jueces otorgarán puntos es si el sistema desarrolla un método para explotar el bug y tomar el control del programa.

Entonces, el sistema tendrá que desarrollar un parche, pero no bastará simplemente con que el bug sea tapado; la funcionalidad del programa tiene que permanecer intacta, de nada sirve tapar un agujero de seguridad si el programa deja de hacer lo que debería. Además, también se puntuará en relación al impacto que el parche tiene en el programa (por ejemplo, si es más lento que antes).

En total, siete sistemas participarán en el torneo, y los premios alcanzarán los 4 millones de dólares, así que además de prestigio hay mucho dinero en juego, dinero que puede servir para mejorar aún más estos sistemas.

La idea de crear un programa que se pueda curar a si mismo en caso de problema no es nueva, y aún queda mucho para que la veamos hacerse realidad, pero son pequeños pasos como este los que la harán posible.