Ítem
Embargo

Securing software development lifecycle using artificial intelligence and security chaos engineering


Archivos
Fecha
2024-04-16

Directores
Díaz López, Daniel Orlando

ISSN de la revista
Título del volumen
Editor
Universidad del Rosario

Buscar en:

Métricas alternativas

Resumen
Aunque los procesos de desarrollo de software se han optimizado sustancialmente en los últimos años, las brechas de seguridad siguen representando un factor de riesgo importante para las organizaciones. Los procesos de transformación digital que no implementan la seguridad como pilar tienden a generar reprocesos y costos adicionales por remediación; en el peor de los casos, fugas de información, ataques de ransomware, denegación de servicio y otros ciberataques que generan fuerte impacto reputacional, legal o monetario. A lo largo de los años, las prácticas de desarrollo seguro han evolucionado, y hoy en día los frameworks de desarrollo ayudan a prevenir intrínsecamente las vulnerabilidades. También han surgido los Programas de Seguridad de Aplicaciones, que son un mecanismo que engloba las políticas, directrices, procesos, herramientas y personas que las organizaciones implementan para proteger sus aplicaciones. Aumentar el nivel de madurez de un programa de seguridad de aplicaciones requiere automatizar actividades y definir formas novedosas de desafiar la seguridad de las aplicaciones. Uno de los mecanismos en auge para automatizar las actividades de seguridad es la Inteligencia Artificial, con el surgimiento de los Large Language Models es posible resolver tareas en cada fase del ciclo de vida del software, reduciendo el tiempo empleado por las organizaciones para generar sistemas seguros. Por otro lado, a través de Security Chaos Engineering es posible descubrir nuevas formas de riesgo que no son fácilmente descubiertas a través de métodos tradicionales de pen-testing o herramientas automatizadas, lo que mejora la postura de seguridad de las aplicaciones. Esta tesis de máster genera una serie de aportaciones que permiten a las organizaciones mejorar sus Programas de Seguridad de Aplicaciones. Este trabajo introduce ideas sobre la identificación temprana de amenazas aplicando Procesamiento del Lenguaje Natural sobre historias de usuario, demuestra la automatización de modelos de amenazas basados en árboles de ataque-defensa utilizando Large Language Models, y propone casos de uso de Security Chaos Engineering aplicables a prácticas DevSecOps.
Abstract
Although software development processes have been substantially optimized in recent years, security breaches continue to represent a major risk factor for companies. Digital transformation processes that do not implement security as a pillar tend to generate reprocesses and additional costs for remediation, in the worst cases, information leaks, ransomware attacks, denials of service, and other cyber-attacks that generate strong reputational, legal, or monetary impact. Over the years, secure development practices have evolved, and today frameworks help to intrinsically prevent vulnerabilities. Application Security Programs have also emerged, which are a mechanism that encompasses the policies, guidelines, processes, tools, and people that companies implement to protect their applications. Increasing the maturity level of an application security program requires automating activities and defining novel ways to challenge application security. One of the mechanisms in ague to automate security activities is Artificial Intelligence, with the advent of Large Language Models it is possible to solve tasks in each phase of the software life cycle, reducing the time spent by companies to generate secure systems. On the other hand, through Security Chaos Engineering it is possible to discover new forms of risk that are not easily discovered through traditional pen-testing methods or automated tools, which improves the security posture of applications. This master thesis generates a series of contributions that allow companies to improve their Application Security Programs. This work introduces ideas on early threat identification by applying Natural Language Processing on user stories, demonstrates the automation of threat models based on attack-defense trees using Large Language Models, and proposes Security Chaos Engineering use cases applicable to DevSecOps practices.
Palabras clave
Security Chaos Engineering , DevSecOps , Inteligencia Artificial , Modelado de Amenazas , Seguridad en Aplicaciones , Large Langage Models , Árboles de Ataque
Keywords
Application Security , DevSecOps , Artificial Intelligence , Security Chaos Engineering , Large Language Models , Threat Modeling , Attack Trees
Buscar en:
Enlace a la fuente
Enlaces relacionados
Set de datos