• Home
  • Química
  • Astronomía
  • Energía
  • Naturaleza
  • Biología
  • Física
  • Electrónica
  • ¿Podría la inteligencia artificial hacer la vida más difícil para los piratas informáticos?

    El estudiante de doctorado Jacob Harer (izquierda) y el profesor de investigación Peter Chin trabajaron con investigadores de Draper para desarrollar tecnología que pudiera encontrar el tipo de fallas de software que a menudo son explotadas por los piratas informáticos. Crédito:Jackie Ricciardi

    A medida que el volumen de información digital en las redes corporativas sigue creciendo, así crece el número de ciberataques, y su costo. Un proveedor de ciberseguridad, Juniper Networks, estima que el costo de las violaciones de datos en todo el mundo alcanzará los 2,1 billones de dólares en 2019, aproximadamente cuatro veces el costo de las infracciones en 2015.

    Ahora, dos informáticos de la Universidad de Boston, trabajando con investigadores en Draper, una empresa de soluciones de ingeniería sin fines de lucro ubicada en Cambridge, han desarrollado una herramienta que podría dificultar que los piratas informáticos encuentren su camino hacia redes a las que no pertenecen.

    Peter Chin, profesor investigador de ciencias de la computación y afiliado del Instituto Rafik B. Hariri de Computación y Ciencia e Ingeniería Computacional, y Jacob Harer, un doctorado de cuarto año. estudiante de informática, trabajó con los investigadores de Draper para desarrollar tecnología que pueda escanear los sistemas de software en busca de los tipos de vulnerabilidades que los ciberdelincuentes utilizan a menudo para ingresar. La herramienta, que utilizó el aprendizaje profundo para entrenar redes neuronales a fin de identificar patrones que indiquen fallas de software, puede escanear millones de líneas de código en segundos, y algún día tendrá la capacidad de corregir los errores de codificación que detecte.

    Chin dice la idea del proyecto, llamado DeepCode y financiado por el programa MUSE de DARPA (Agencia de Proyectos de Investigación Avanzada de Defensa) y el Laboratorio de Investigación de la Fuerza Aérea, llegó a él hace cuatro años mientras daba una conferencia en su clase de aprendizaje automático (CS 542). Chin estaba describiendo el gran logro de los científicos de Google y la Universidad de Stanford, que usaron el aprendizaje profundo para enseñar a una red neuronal a detectar patrones comunes en millones de imágenes y usar los patrones para identificar gatos en videos de YouTube. Se preguntó si una red similar podría extraer grandes cantidades de datos de programas de código abierto y encontrar patrones que indiquen vulnerabilidades de software.

    Chin sabía que era posible representar visualmente un programa de software, como un diagrama de flujo de control. También sabía que había una biblioteca de más de 10, 000 errores de codificación comunes, llamado CWE (enumeraciones de debilidades comunes), que había sido elaborado por el Instituto Nacional de Estándares y Tecnología (NIST). Si esos errores de codificación comunes en CWE de NIST pudieran presentarse como una imagen, razonó, una red neuronal posiblemente podría entrenarse en ellos para encontrar patrones comunes de vulnerabilidades, al igual que la red neuronal de Stanford aprendió a identificar las características comunes de los gatos.

    Con esa inspiración inicial, Barbilla, quien en ese momento era un científico jefe en sistemas de decisión en Draper, así como un profesor en BU, ayudó a asegurar la financiación para el proyecto de DARPA. Él, Harer (Draper Fellow en BU), y sus colegas de Draper comenzaron a probar sus suposiciones en programas de computadora basados ​​en funciones de código abierto C y C ++.

    Desde el inicio del proyecto en 2014, los investigadores se han dado cuenta de que necesitaban algo más que una imagen del gráfico de flujo de control para detectar vulnerabilidades. Desde entonces han mejorado sus técnicas, agregando características adicionales, como una representación analizada de código similar al utilizado por los compiladores modernos, y han adoptado redes de uso común para el procesamiento del lenguaje natural. Su investigación, que, según Chin, ilustra la promesa de tales asociaciones entre la universidad y la industria, ahora se describe en dos artículos, "Detección automatizada de vulnerabilidades en el código fuente mediante el aprendizaje de representación profunda, "que ha sido aceptado en IEEE ICMLA 2018, y "Aprender a reparar vulnerabilidades de software con redes generativas de enfrentamiento, "que fue aceptado en 2018 NIPS.

    Chin dice que la segunda función de DeepCode, arreglar los errores de codificación, sigue siendo un proyecto de trabajo. "Es muy difícil, ", dice." Corregir un software defectuoso es muy parecido a corregir una mala gramática. Alguien podría decir "Fui al mercado" cuando debería haber dicho "Fui al mercado". Entrena a la red para identificar el patrón erróneo y reemplazarlo con el patrón adecuado. Al menos esa es la idea básica ".

    Harer dice que un problema es que los investigadores no saben lo suficiente sobre cómo las máquinas reconocen las vulnerabilidades. "Estos modelos de redes neuronales son en gran medida modelos de caja negra, ", dice." Están capacitados con grandes cantidades de datos y esperamos que puedan averiguar qué está pasando. Este es un problema del aprendizaje profundo en general ".

    Barbilla, Harer, y los investigadores de Draper continuarán trabajando en DeepCode, y planear ofrecer una versión que pueda implementarse en una computadora portátil y enviarse a corporaciones, la mayoría de los cuales son reacios a compartir su código con terceros, incluso para un examen que podría ahorrarles decenas de millones de dólares.


    © Ciencia https://es.scienceaq.com