
En la actualidad, la inteligencia artificial (IA) se está incorporando a casi todos los aspectos de nuestras vidas. Se la utiliza para desarrollar código, comunicarse con clientes y escribir en diversos medios. La ciberseguridad, en especial la seguridad de los productos, es otra área en la que la IA puede provocar un efecto considerable. La IA en Ciberseguridad la vemos que se está integrando en las herramientas de seguridad y, como contracara, en el ámbito de la explotación. El uso de la IA en Ciberseguridad se ha generalizado y no hay miras de que desaparezca en el corto plazo, por lo que los profesionales de la seguridad deben aprender a aprovecharla al máximo para mejorar la seguridad de sus sistemas y productos.
La IA en Ciberseguridad y sus implicancias
El término “inteligencia artificial” se refiere al uso de sistemas informáticos para simular la inteligencia humana. Los sistemas de IA son capaces de realizar una variedad de tareas cada vez mayor, como el reconocimiento de patrones, el aprendizaje y la resolución de problemas. La IA comprende diversas áreas: el aprendizaje automático (machine learning o ML), que permite a los sistemas aprender y mejorar a lo largo del tiempo; el procesamiento de lenguaje natural (NLP), que intenta imitar el habla del ser humano; y la visión por computadora, que utiliza cámaras como fuentes de información para realizar diversas tareas, entre otras cosas.
Estas aplicaciones de la IA se entrelazan con una amplia gama de sistemas para automatizar, analizar y mejorar los actuales procesos. En el mundo de la ciberseguridad, la IA desempeña o presta ayuda a una serie de funciones y procesos. Se la utiliza para analizar registros, predecir amenazas, leer código fuente, identificar vulnerabilidades y hasta para crear o sacar provecho de puntos débiles.
IA en ciberseguridad y cómo detectar ataques
La enorme capacidad de la IA para reconocer patrones hace que la detección de anomalías de ciberseguridad sea un caso de uso lógico. Un buen ejemplo sería la detección de anomalías en el comportamiento. Mediante el uso del aprendizaje automático, un modelo es capaz de identificar cómo sería el comportamiento normal dentro de un sistema y señalar cualquier desvío de la norma. Al detectar valores atípicos en el comportamiento, esto puede ayudar a identificar posibles ataques y aquellos sistemas que no están funcionando como deberían.
El reconocimiento de patrones u otros mecanismos impulsados por IA también pueden detectar el comportamiento potencialmente problemático de los usuarios, como la filtración accidental o el robo de datos. El uso de conjuntos de datos creados o utilizados por una empresa también sirve para buscar patrones y comportamientos atípicos a mayor escala a fin de determinar la probabilidad de que sea el blanco de incidentes de ciberseguridad que estén ocurriendo en todo el mundo.
Caso de uso 1: Detección de anomalías
La detección de anomalías, es decir, la identificación de patrones inusuales, extraños o anómalos en registros, el tráfico u otros datos, es una excelente candidata de la capacidad de reconocimiento de patrones del ML. Ya se trate del tráfico en las redes, de actividades de usuarios u otros datos, con el algoritmo y el entrenamiento adecuados, la IA y el ML son ideales para detectar valores atípicos y potencialmente dañinos. Esto puede ocurrir de diversas maneras, por ejemplo, mediante el monitoreo y la activación de alertas en tiempo real. Este método parte de normas preestablecidas para un sistema, como el tráfico de red, las llamadas a la API o los registros, y puede utilizar el análisis estadístico para supervisar el comportamiento y las actividades del sistema en forma continua. El modelo es capaz de activar una alerta cada vez que descubre actividades anómalas o extrañas.
La IA y el ML no solo son estupendos para detectar patrones, sino también para categorizarlos y agruparlos. Esto es fundamental para asignar niveles de prioridad a los diversos eventos y ayudar a evitar la “fatiga de alertas”, que puede ocurrir si un usuario o un equipo se ve abrumado por las alertas, muchas de las cuales pueden carecer de sustento. Lo que suele suceder es que las alertas pierden importancia y muchas de ellas, si no todas, se consideran intranscendentes y dejan de investigarse debidamente. Estas capacidades de la IA y el ML pueden proporcionar información inteligente y ayudar a los usuarios a tomar decisiones más razonadas.
Caso de uso 2: Inteligencia de ciberamenazas impulsada por IA
La capacidad de monitorear sistemas y proporcionar alertas en tiempo real puede ser de vital importancia, pero la IA y el ML también pueden usarse para ayudar a reforzar la seguridad de los sistemas antes de que ocurra un evento de seguridad. La IA en Ciberseguridad como de amenazas cibernéticas (CTI) funciona recopilando información sobre ataques y eventos de ciberseguridad. El objetivo de la CTI es estar informado de las amenazas actuales o nuevas con la intención de preparar proactivamente a los equipos ante la posibilidad de un ataque a la empresa antes de que este se produzca. La CTI también es valiosa a la hora de hacer frente a los ataques en curso, ya que ayuda a los equipos de respuesta a incidentes a comprender mejor con qué están lidiando.
Históricamente, tanto la recopilación como la organización y el análisis de estos datos corría por cuenta de los profesionales de seguridad, pero la IA y el ML pueden ocuparse de muchas de las tareas rutinarias o mundanas y ayudar en la organización y el análisis. De este modo, los equipos pueden enfocarse en la toma de decisiones necesaria una vez que disponen de la información requerida en un formato práctico.
El uso de IA para prevenir vulnerabilidades
Si bien es valioso aprovechar la IA y el ML para detectar y prevenir ataques de ciberseguridad, también es sumamente importante prevenir las vulnerabilidades en el software. En muchos ámbitos de la TI, los asistentes de IA en editores de código, los procesos de compilación y las herramientas utilizadas para probar o validar sistemas en funcionamiento se están convirtiendo rápidamente en moneda corriente.
Al igual que la CTI, los sistemas de IA en Ciberseguridad pueden ayudar a alivianar las tareas cotidianas y liberar a los humanos para que se dediquen más tiempo a proyectos e innovaciones más valiosos. En tanto la revisión de código es importante, puede optimizarse si se aprovechan las pruebas estáticas de seguridad de aplicaciones (SAST). Aunque las plataformas SAST existen desde hace tiempo, su mayor problema es la gran cantidad de falsos positivos que suelen generar. Aquí es donde entra en juego la capacidad de la IA y el ML de examinar el código fuente, la infraestructura y el código de configuración. La IA también se está empezando a utilizar para ejecutar pruebas dinámicas de seguridad de aplicaciones (DAST) con el fin de probar si los ataques comunes tendrían éxito en las aplicaciones en ejecución.
Caso de uso 3: Escaneo de códigos impulsado por IA
Desde hace tiempo, las SAST utilizan un enfoque de “fuentes y sumideros” para escanear código. Se refiere a la forma de rastrear el flujo de datos en busca de errores comunes. Las distintas herramientas producidas para el escaneo de código estático suelen emplear este modelo. Si bien es una forma válida de examinar el código, puede dar lugar a muchos falsos positivos que requieran una validación manual posterior.
En este caso, la IA y el ML pueden ser de gran utilidad porque aprenden y comprenden el contexto o la intención que rodea a los posibles hallazgos en la base de código, lo cual reduciría los falsos positivos y los falsos negativos. Además, como las herramientas SAST y los asistentes de IA se han añadido a los editores de código, los desarrolladores pueden detectar esos errores antes de su envío. Aun así, existen ciertas limitaciones con las bases de código muy grandes, como la compatibilidad de idiomas y la escalabilidad, que se están resolviendo con rapidez.
Caso de uso 4: Automatizar la identificación de vulnerabilidades
La revisión de código puede ser un proceso extenso, pero las pruebas no suelen terminar tras el envío. Las DAST se utilizan para probar ataques comunes contra una aplicación que se está ejecutando. En el mercado existen algunas herramientas que ayudan con este tema, pero, al igual que la codificación, requieren cierto tiempo de familiarización. El usuario necesita entender estos tipos de ataque, cómo replicarlos a través de la herramienta DAST y luego automatizarlos.
Últimamente, tanto las DAST como las herramientas para la prueba de aplicaciones relacionadas han comenzado a implementar la IA y el ML, ya sea directamente en sus plataformas o como plugins, lo que permite realizar una gran cantidad de escaneo automático optimizado. Esto no solo libera al personal que necesitaría contar con ese tiempo de preparación y con el necesario para ejecutar los diferentes ataques, sino que también libera el tiempo y el dinero necesarios para realizar pruebas de penetración completas. Estas pruebas aún requieren bastante intervención del humano, capaz de pensar como atacante y reconocer los posibles puntos débiles, quien a menudo genera formas novedosas de demostrar que esos puntos pueden ser objeto de ataques.
Proteger la propia IA
Si bien la IA puede ayudar a eliminar muchos errores humanos, no deja de ser vulnerable. En primer lugar, está la calamidad de muchos problemas informáticos: una configuración deficiente o inadecuada. De cerca le sigue la necesidad de entrenar y validar el modelo y sus procesos de una forma más segura. No hacerlo podría derivar rápidamente en un sistema que los usuarios no logran entender del todo, lo cual crearía una especie de caja negra y un proceso de gestión deficiente del ciclo de vida del modelo.
Uno de los problemas de seguridad relacionados con la IA que más se debaten es el envenenamiento de datos. Los seres humanos a menudo recopilamos datos que luego utilizamos para entrenar algoritmos de IA y ML y, como seres humanos que somos, podemos introducir sesgos. Es un concepto bastante simple al que debemos estar atentos, pero, a veces, ese sesgo se añade adrede. A través de diversos mecanismos, los atacantes pueden envenenar intencionadamente el conjunto de datos que se utiliza para entrenar y validar los sistemas de IA y ML. Es razonable creer que el nuevo resultado sesgado del sistema podría utilizarse con fines nefastos.
A medida que el uso de la IA se generaliza con rapidez, nuestra comprensión y capacitación van quedando rezagadas, en particular la capacitación en seguridad en torno a la IA y el ML. Muchas personas ajenas a la comunidad tecnológica no logran comprender bien gran parte del funcionamiento interno de los sistemas de IA y ML, algo que puede empeorar si los sistemas se descuidan y carecen de transparencia.
Esto genera otro problema bastante común en tecnología: la documentación adecuada. Los sistemas requieren contar con documentación que sea fácil de entender y lo suficientemente completa como para abarcar la gran mayoría del sistema del que trata.
Por último, gobiernos de todo el mundo están analizando y planificando (o incluso elaborando) normativas relacionadas con los sistemas de IA y ML. Dada la posibilidad de que se elaboren certificaciones de IA y ML seguros, hacer lo posible por garantizar que los sistemas que se desarrollan hoy en día sean lo más seguros y válidos posible probablemente nos ahorre trabajo en el futuro.
Reflexiones finales de la IA en Ciberseguridad
A medida que nos volvemos cada vez más dependientes de los sistemas de IA, la velocidad y la precisión del aprendizaje automático para proteger los sistemas que utilizamos dejará de ser algo “aconsejable” para pasar a ser “imprescindible”. No hay duda de que los atacantes utilizarán sistemas de IA y ML para pergeñar sus ataques, por lo que los defensores necesitarán implementar estos sistemas para ayudar a proteger y defender sus organizaciones y sistemas.
Lo ideal sería que los estudiantes que se preparan para ingresar al mercado laboral aprendan sobre los sistemas de IA y ML, pero los veteranos también tendrán que adoptarlos. Lo mejor que pueden hacer las personas es asegurarse de tener al menos conocimientos básicos de IA y lo mejor que pueden hacer las empresas es empezar a analizar cómo pueden aprovechar mejor la IA y el ML en sus productos, sistemas y seguridad.
Cómo puede ayudar Red Hat
Red Hat OpenShift AI puede ayudar a crear modelos e integrar la IA en las aplicaciones. Para las empresas del sector de la seguridad, OpenShift AI puede ayudarlas a integrar el poder de la IA en Ciberseguridad en sus productos.
Las aplicaciones basadas en IA van a ser cada vez más frecuentes y OpenShift AI es una plataforma de desarrollo de IA potente y escalable capaz de ayudar a llevar esas aplicaciones a producción.