Cómo mitigar los ataques de desbordamiento de búfer en la era de los grandes datos y la inteligencia artificial


El desbordamiento de búfer ha estado apareciendo en las noticias recientemente después de que se descubrieran varios problemas de seguridad en el navegador Chrome. Google ha publicado una solución para una falla de día cero en Chrome junto con otros problemas, en particular, un desbordamiento de búfer de almacenamiento dinámico en SQLite.

¿Qué es un desbordamiento de búfer y por qué es importante conocerlo a la luz de la inminente presencia de big data y el auge de la inteligencia artificial? Siga leyendo para obtener más información sobre esta vulnerabilidad de software que destaca la importancia de manejar datos confidenciales en las aplicaciones.

Desbordamiento de búfer: una vulnerabilidad común

Las amenazas de un ataque de desbordamiento de búfer son bastante comunes. No son nuevos; han existido durante varias décadas. Se han identificado vulnerabilidades de desbordamiento de búfer en el software, particularmente en navegadores web y aplicaciones móviles. En particular, estas debilidades de seguridad están asociadas con varias infracciones de seguridad, incluido el gusano «Código rojo» que causó estragos en las computadoras a principios del siglo XXI.

La vulnerabilidad de desbordamiento del búfer existe cuando un programa intenta escribir datos en un búfer que es más de lo que el búfer puede manejar. El búfer actúa como almacenamiento temporal de datos utilizados o transmitidos a diferentes componentes de un programa o entre dos o más programas, dispositivos o redes. Escribir más datos de los que un búfer está diseñado para manejar sobrescribe datos adyacentes, lo que puede causar consecuencias no deseadas, incluida la falla de un programa. Los desbordamientos de búfer también pueden causar operaciones inesperadas o no deseadas, como la ejecución de código malicioso, lo que puede permitir violaciones de seguridad y la toma de control de un dispositivo.

Debido a su potencial para permitir la ejecución de código malicioso arbitrario, el desbordamiento de búfer se considera una de las debilidades de seguridad de software más peligrosas. Esta vulnerabilidad se encontró en el código de Microsoft Exchange Server y permitió a los atacantes ejecutar código arbitrario en el servidor. Está en el corazón del error Heartbleed, que permitió a los actores de amenazas acceder a datos confidenciales de las memorias del servidor web. La vulnerabilidad de Apache Struts reportada en 2017 también es una forma de debilidad de desbordamiento de búfer que permitió a los ciberdelincuentes obtener datos confidenciales de la agencia de informes crediticios Equifax. Por otro lado, el ransomware WannaCry logró infectar los sistemas al explotar una vulnerabilidad de desbordamiento de búfer en el protocolo de bloque de mensajes del servidor de Windows.

Cómo afecta el big data al problema del desbordamiento del búfer

Big data ofrece varios beneficios, pero también puede empeorar el problema del desbordamiento del búfer. Primero, facilita la expansión de las superficies de ataque. El almacenamiento y procesamiento de cantidades masivas de datos de una multitud de fuentes hace que sea más difícil supervisar y proteger las superficies de ataque. Da como resultado una mayor complejidad del software, lo que agrava la dificultad de mitigar las vulnerabilidades de desbordamiento del búfer.

El uso de arquitecturas distribuidas en sistemas de big data también crea más oportunidades para que surjan problemas de desbordamiento de búfer. En particular, el uso de varios nodos y componentes hace que la administración de la memoria sea más desafiante.

Además, está el problema de los datos no confiables. Algunos sistemas de big data no emplean o pueden tener dificultades para implementar procedimientos de saneamiento y validación de datos. Este puede no ser el vector de ataque más grande que involucra vulnerabilidades de desbordamiento de búfer, pero no obstante es una debilidad de seguridad potencial. Este problema se ve agravado por el procesamiento en tiempo real, donde se hacen concesiones para garantizar un procesamiento rápido a expensas de medidas de seguridad como la validación de entrada y los controles fronterizos.

El impacto de la inteligencia artificial en el desbordamiento del búfer

De manera similar, la IA tiene consecuencias significativas en la vulnerabilidad de desbordamiento del búfer. Es un impulsor de mayor complejidad, ya que los sistemas de IA a menudo involucran varios componentes y algoritmos que hacen que los problemas de desbordamiento sean más difíciles de detectar y mitigar. Muchas aplicaciones hoy en día integran inteligencia artificial, lo que significa que la mayor complejidad no se limita a unas pocas clases de aplicaciones.

Por otro lado, la llegada de los creadores de código impulsados ​​por IA potencialmente exacerba el problema de desbordamiento. A medida que las organizaciones adoptan la IA para producir aplicaciones rápidamente, es inevitable que se vuelvan demasiado dependientes de las capacidades de la IA y la seguridad se desvanecerá en un segundo plano o se convertirá en una ocurrencia tardía. AI también puede usar bibliotecas y marcos de código abierto o gratuitos que están plagados de vulnerabilidades, lo que resulta en más software con fallas de seguridad.

Además, la IA puede servir como herramienta para ataques contradictorios. Los ciberdelincuentes pueden desarrollar sistemas de aprendizaje automático que detectan automáticamente las vulnerabilidades de desbordamiento del búfer para reducir los objetivos potenciales. Pueden probar la susceptibilidad de los sistemas a los ataques de desbordamiento de memoria a un ritmo más rápido que el reconocimiento convencional. Además, la inteligencia artificial puede automatizar la explotación de las vulnerabilidades detectadas.

Cómo lidiar de manera efectiva con las amenazas de desbordamiento de búfer

Los ataques de desbordamiento de búfer representan una seria amenaza, pero no son exactamente abrumadores. Con las mejores prácticas de seguridad, puede prevenirlas o asegurarse de que no existan vulnerabilidades, para empezar.

  • Prevenir la aparición de la vulnerabilidad. La vulnerabilidad de desbordamiento de búfer se puede prevenir. Los desarrolladores pueden evitar esta debilidad de seguridad implementando controles de validación de datos para garantizar que las aplicaciones solo procesen datos válidos. También se puede detener utilizando mecanismos de protección de la memoria para garantizar la asignación y el acceso seguros a la memoria con la ayuda de tecnologías como la aleatorización del diseño del espacio de direcciones (ASLR). Además, es importante seguir las mejores prácticas de seguridad, como actualizar su software regularmente y realizar auditorías de seguridad periódicas.
  • Aprovecha el big data y la inteligencia artificial. Los controladores de amenazas de desbordamiento de búfer también pueden servir como herramientas para tratar problemas. Los marcos de seguridad y las plataformas de inteligencia de amenazas utilizan big data para adelantarse a las últimas vulnerabilidades y ataques. Del mismo modo, la inteligencia artificial se puede utilizar para automatizar la detección de problemas de seguridad y la pronta respuesta a los mismos. En otras palabras, puede utilizar plataformas de ciberseguridad y marcos de trabajo de ciberseguridad avanzados basados ​​en IA para abordar los desbordamientos de búfer y otras amenazas de seguridad.
  • Evita depender demasiado de la inteligencia artificial. La inteligencia artificial ha progresado significativamente a lo largo de los años, pero aún no es aconsejable depender completamente de ella para producir software o sistemas. Evite crear y distribuir aplicaciones que funcionen únicamente o en gran parte con IA. Observe la debida diligencia en el uso de herramientas de IA, pero haga un buen uso de la IA para detectar vulnerabilidades y maximizar la seguridad. Muchas plataformas de ciberseguridad integran inteligencia artificial para fortalecer la detección, mitigación, prevención y remediación de amenazas.

Reconocer las amenazas y aprovecharlas

Big data e inteligencia artificial no son inherentemente buenos o malos. Se pueden usar para crear amenazas, pero también pueden servir como herramientas para suprimir ataques. La vulnerabilidad de desbordamiento de búfer demuestra la importancia de comprender los aspectos buenos y malos de las nuevas tecnologías. Las amenazas pueden aumentar, pero las soluciones disponibles también están mejorando.

La publicación Cómo mitigar los ataques de desbordamiento de búfer en la era de los grandes datos y la IA apareció por primera vez en Datafloq.