Llegamos a ustedes gracias a:



Noticias

MIT evalúa los 'trasplantes de software' para reparar código con bugs

[03/07/2015] De la misma forma en que se visita una chatarrería para encontrar repuestos baratos para un vehículo viejo, investigadores del Massachusetts Institute of Technology (MIT) han creado una forma para reparar el software con bugs, insertando código que funciona de otro programa.

Mediante el uso de un sistema que llaman CodePhage, los investigadores pudieron reparar fallas en siete programas comunes de código abierto usando, en cada caso, funcionalidades tomadas de entre dos a cuatro programas "donantes.

La nueva tecnología CodePhage del MIT puede prestarse los bits exitosos de un programa para reparar otro.
CodePhage MIT

Reparar estos errores puede ayudar a hacer más seguro el código, ya que los hackers maliciosos usualmente explotan las fallas para obtener la entrada a un sistema. CodePhage puede reconocer y reparar los errores comunes de programación, como la ausencia de enlaces de acceso, integer overflows y errores de divisiones entre cero.

Los investigadores describen su enfoque en la edición del lunes del journal Phys.Org. También lo discutieron en una conferencia sobre programación realizada el mes pasado por la Association for Computing Machinery.

Para reparar un programa con bugs, CodePhage requiere de dos inputs de muestra, uno que cause que el programa se cuelgue, y otro que no lo haga.

Corre estos inputs a través de un segundo programa, conocido como el programa donante, que tiene funcionalidades similares. Internet se encuentra inundada de software de código abierto que podría proporcionar las partes de los programas donantes, aunque no hay una razón en particular para que el código donante sea de código abierto.

Al ver al programa donante procesar el input que no se cuelga, CodePhage anota todas las acciones realizadas. Luego corre el input que causó que el programa original se colgara, nuevamente anotando las acciones, en lógica simbólica. CodePhage luego analiza la forma en que los dos inputs fueron manejados de forma diferente, y usa esa información para corregir el programa original.

En muchos casos, el programa que está siendo analizado carece de las revisiones de seguridad necesaria presentes en el programa donante. Hasta el 80% de una aplicación típica puede ser código para realizar revisiones de seguridad. CodePhage puede reducir el tiempo que los desarrolladores utilizan escribiendo esas revisiones, insertándolas automáticamente en el proceso de construcción, sostuvieron los investigadores.

El MIT no es la única organización que busca formas nuevas de reparar el software vulnerable. Este año, la empresa proveedora de seguridad Qualys lanzó software que puede aplicar parches virtuales en las vulnerabilidades conocidas, eliminando la necesidad de esperar a que el proveedor del software parche el problema.

Joab Jackson, IDG News Service