A finales del año pasado, David Haynes, ingeniero de seguridad de la empresa de infraestructura de Internet Cloudflare, se encontró mirando una imagen extraña. “Era puro galimatías”, dice. “Un montón de píxeles grises y negros, hechos por una máquina”. Se negó a compartir la imagen, diciendo que sería un riesgo para la seguridad.
La cautela de Haynes era comprensible. La imagen fue creada por una herramienta llamada Mayhem que investiga el software para encontrar fallas de seguridad desconocidas, creada por una empresa emergente de la Universidad Carnegie Mellon llamada ForAllSecure. Haynes lo había estado probando en el software Cloudflare que cambia el tamaño de las imágenes para acelerar los sitios web y le proporcionó varias fotos de muestra. Mayhem los transformó en imágenes malditas y con fallas que colapsaron el software de procesamiento de fotos al activar un error inadvertido, una debilidad que podría haber causado dolores de cabeza a los clientes que pagaban a Cloudflare para mantener sus sitios web funcionando sin problemas.
Desde entonces, Cloudflare ha hecho de Mayhem una parte estándar de sus herramientas de seguridad. La Fuerza Aérea, la Armada y el Ejército de los EE. UU. también lo han utilizado. El mes pasado, el Pentágono otorgó a ForAllSecure un contrato de 45 millones de dólares para ampliar el uso de Mayhem en el ejército estadounidense. El departamento tiene muchos errores para encontrar. Un informe del gobierno de 2023 encontró que casi todos los sistemas de armas que probó el Departamento de Defensa entre 2012 y 2023 tenían vulnerabilidades de software graves.
Mayhem no es lo suficientemente sofisticado como para reemplazar por completo el trabajo de los buscadores de errores humanos, que utilizan el conocimiento del diseño de software, las habilidades de lectura de códigos, la creatividad y la intuición para encontrar fallas. Pero el cofundador y director ejecutivo de ForAllSecure, David Brumley, dice que la herramienta puede ayudar a los expertos humanos a hacer más. El software del mundo tiene más agujeros de seguridad de los que los expertos tienen tiempo de encontrar, y cada minuto se envían más fallas. “La seguridad no se trata de estar seguro o inseguro, se trata de qué tan rápido puede moverse”, dice Brumley.
Mayhem se originó en un inusual concurso de piratería de 2023 en el salón de baile de un casino de Las Vegas. Cientos de personas se presentaron para ver el Cyber Grand Challenge, organizado por la agencia de investigación del Pentágono, DARPA. Pero no había ningún ser humano en el escenario, solo siete servidores de computadora llamativamente iluminados. Cada uno albergaba un bot que intentaba encontrar y explotar errores en los otros servidores, al mismo tiempo que encontraba y reparaba sus propios defectos. Después de ocho horas, Mayhem, creado por un equipo del laboratorio de seguridad Carnegie Mellon de Brumley, ganó el premio mayor de $2 millones. Su servidor iluminado en magenta aterrizó en el Smithsonian.
Brumley, quien todavía es profesor de Carnegie Mellon, dice que la experiencia lo convenció de que la creación de su laboratorio podría ser útil en el mundo real. Dejó de lado las capacidades ofensivas del bot de su equipo, razonando que la defensa era más importante, y se dedicó a comercializarlo. “El Cyber Grand Challenge demostró que la seguridad totalmente autónoma es posible”, dice. “Las computadoras pueden hacer un trabajo razonablemente bueno”.
contrato de EE. UU.
Los gobiernos de China e Israel también lo pensaron. Ambos ofrecieron contratos, pero ForAllSecure firmó con el Tío Sam. Obtuvo un contrato con la Unidad de Innovación de Defensa, un grupo del Pentágono que trata de acelerar nuevas tecnologías en el ejército de EE. UU.
ForAllSecure fue desafiado a probar el valor de Mayhem al buscar fallas en el software de control de un avión comercial de pasajeros con una variante militar utilizada por las fuerzas estadounidenses. En minutos, el hacker automático encontró una vulnerabilidad que posteriormente fue verificada y reparada por el fabricante de la aeronave.
Otros errores encontrados por Mayhem incluyen uno descubierto a principios de este año en el software OpenWRT utilizado en millones de dispositivos de red. El otoño pasado, dos pasantes de la compañía obtuvieron un pago del programa de recompensas por errores de Netflix después de que usaron Mayhem para encontrar una falla en el software que permite a las personas enviar videos desde su teléfono a un televisor.
Brumley dice que el interés de las empresas automotrices y aeroespaciales es particularmente fuerte. Los automóviles y los aviones dependen cada vez más del software, que debe funcionar de manera confiable durante años y se actualiza rara vez, si es que se actualiza.
Mayhem funciona solo en programas para sistemas operativos basados en Linux y encuentra errores de dos maneras, una dispersa y la otra más específica.
La primera es una técnica llamada fuzzing, que consiste en bombardear el software de destino con entradas generadas aleatoriamente, como comandos o fotos, y observar si algún disparador explotable falla. La segunda, denominada ejecución simbólica, implica la creación de una representación matemática simplificada del software de destino. Ese doble simplificado se puede analizar para identificar posibles puntos débiles en el objetivo real.
Fuzzing se ha vuelto más ampliamente utilizado en la seguridad informática en los últimos años. El año pasado, Google lanzó una herramienta de fuzzing que, según dice, encontró más de 16,000 errores en su navegador Chrome. Pero Haynes de Cloudflare dice que la técnica aún no se usa comúnmente en la industria porque las herramientas de fuzzing generalmente requieren una adaptación demasiado cuidadosa para cada programa de destino. ForAllSecure ha diseñado Mayhem para que sea más adaptable, dice, lo que le permite a Cloudflare usar fuzzing de forma más rutinaria. La ejecución simbólica puede encontrar errores más complejos y anteriormente se ha utilizado principalmente en laboratorios de investigación, dice Haynes.
Los humanos siguen siendo necesarios
Ruoyu Wang, profesor de la Universidad Estatal de Arizona, espera que Mayhem sea solo el comienzo de un futuro más automatizado para la seguridad informática, pero dice que requerirá que los bots de búsqueda de errores colaboren más con los humanos.
Mayhem muestra que la automatización puede hacer un trabajo útil, dice Wang, pero los buscadores de errores automáticos existentes no pueden ser de mucha ayuda con servicios de Internet o paquetes de software complejos. El mejor software no es lo suficientemente inteligente como para comprender la intención y el funcionamiento de los programas como lo hace la gente. La capacidad de Mayhem para probar muchas cosas diferentes más rápidamente que cualquier humano no es un sustituto. “Muchos de los problemas difíciles en la búsqueda automática de vulnerabilidades están lejos de ser resueltos”, dice Wang.
Wang formó parte de un equipo llamado Mechanical Phish que quedó en tercer lugar en el torneo DARPA de 2023 que dio inicio a Mayhem. Ahora trabaja en un nuevo programa de investigación de la agencia llamado CHESS, tratando de crear un software de detección de errores más poderoso que recurra a los humanos para obtener ayuda con cosas que las máquinas no pueden asimilar. “En este momento, la automatización de última generación no sabe cuándo está chocando con una barrera”, dice Wang. “Debería darse cuenta de eso y consultar a un humano”. Hoy, Mayhem busca errores por su cuenta, pero sus descendientes pueden ser jugadores de equipo.
Este artículo apareció por primera vez en wired.com.