Paper DevSecOps
Paper DevSecOps
Paper DevSecOps
Iván Darío Vásquez Hernández1, Francisco Javier Cano Rincón2, Paola Rodríguez Pérez3
Palabras Claves: DevSecOps, DevOps, gerencia de hizo que ambos fueran de la mano mejorando así los
seguridad de información procesos de negocio. Hoy en día un nuevo integrante
se ha vuelto importante e indispensable en esta
Abstract cultura: la seguridad de TI y es por esto que
Security is increasingly important in software actualmente se tiene DevSecOps (Desarrollo,
development and in general terms has become a very
important issue for organizations, which is why this seguridad y Operaciones) (Faustino et al., 2022).
article analyzed a novel approach that integrates
security from the beginning and throughout the life Anteriormente la seguridad no tenía un rol tan
cycle of a product or service. To that extent, we importante, solo hasta la etapa final del desarrollo de
reviewed in detail what DevSecOps consists of,
starting with the conceptual part, then a review of un producto o servicio se tenían en cuenta, pero con
the problems and challenges facing this culture was la evolución que tuvo DevOps debido a que los
carried out. Finally, the possible solutions and best
practices to follow when making a good ciclos de desarrollo se volvieron más agiles, tomó
implementation of DevSecOps within an
1
Ingeniero de Sistemas. Email: [email protected]
2
Ingeniero de Sistemas. Email: [email protected]
3
Ingeniero de Sistemas. Email: [email protected]
2
fuerza la seguridad y empezó a ser tomada en cuenta controla la aparición de problemas de seguridad en
en una etapa más temprana durante el ciclo del el código del producto desde el instante de su
desarrollo. Esto se dio en gran medida porque se creación (Leppänen et al., 2022).
observó que en muchas ocasiones implementarla
Ahora bien, para poder comprender los
solo al final causaba errores que generaban cuellos
problemas, desafíos que enfrenta DevSecOps y
de botella y revertían la eficiencia de las iniciativas
poder entender cuáles son las mejores prácticas para
DevOps. Es por esto que hoy en día la mayoría de
implementar DevSecOps se presentan los conceptos
las organizaciones reconocen que para un óptimo
básicos que componen este modelo. En primera
funcionamiento del departamento de desarrollo se
instancia para poder comprender este concepto se
debe colaborar también con la seguridad (Sentrio,
analizó la definición de DevSecOps en el estudio de
2021).
Yasar y Teplov (2022) como ejemplo de casos
En la actualidad los ciberataques han venido exitosos en organizaciones de desarrollo de software
presentando un aumento significativo, pero la falta como se cita “DevSecOps es un modelo para
de capacitación y la poca visibilidad han hecho que integrar el desarrollo de software y el proceso
la implementación de DevSecOps se encuentre operativo considerando las actividades de
estancadas. Esto lo manifiesta una publicación de TI seguridad: requisitos, diseño, codificación, prueba,
Centro de recursos (It User, 2022). el cual está entrega, implementación y respuesta a incidentes”
fundamentado por un estudio recientemente (Yasar & Teplov, 2022).
realizado por CSA. Esta misma publicación
Así mismo, Yasar y Teplov (2022) manifiesta
manifiesta que DevSecOps es aún una práctica
que DevSecOps se considera una práctica que se
relativamente nueva y no ha alcanzado la madurez
encarga de probar , implementar y validar de forma
necesaria en las organizaciones y aunque muchas
constante que el software cumpla con todos los
van hacia ese camino solo el 30% de los
requisitos y se pueda recuperar de forma rápida en
profesionales de seguridad manifiestan estar
caso de presente algún problema. Con esta
implementando en su totalidad DevSecOps (It
definición podemos ver que hace referencia a la
User, 2022).
integración de la seguridad en el desarrollo y la
Teniendo en cuenta la problemática de los operación (DEVOPS), esto a través de la
ciberataques, se hace necesario que todas las colaboración continua entre los equipos de
compañías que tengan departamento de desarrollo desarrollo, operaciones y seguridad ya que se
apliquen seguridad desde que comienzan de la refuerza la importancia de incorporar la seguridad
construcción de un producto ya que, sí desde la en el ciclo de vida de desarrollo de software.
primera fase de planificación de los desarrollos se
No obstante, parte de lo que es DevSecOps se
comienza a aplicar la seguridad, se evita y se
encuentra en los principios, los cuales son una serie
3
de pautas comunes acordada entre investigadores y Monitoreo: este es una parte también importante
profesionales como se indica en el estudio de Azeem para DevSecOps ya que con esto se puede realizar
et al. (2022), estos principios son los siguientes: monitoreo y análisis que pueden ayudar a los
gerentes de proyectos para poder realizar cambios
Cultura: esto hace referencia a una serie de aspectos
necesarios en los planes existentes. Adicional a esto
que están arraigados en DevSecOps ya que en
se puede hacer monitoreo del progreso, el estado del
primera instancia la comunicación dentro de los
proyecto, el estado de los sistemas involucrados para
equipos es fundamental, adicional a esto
poder notificar a los interesados en tiempo real si
DevSecOps va muy de la mano con los principios
algo no está funcionando de forma correcta, por
de desarrollo Agile los cuales enfatizan en la
ejemplo. Por último, importante tener en cuenta que
comunicación directa y constante entre las partes
este aspecto también tiene mucho que ver con la
interesadas y por último DevSecOps depende de la
comunicación tema revisado en el principio de
organización y de un cambio cultural para poder
Cultura (Azeem et al., 2022).
tener éxito (Azeem et al., 2022).
sistema mapeando factores de riesgo que puedan generando una cultura de cambio que facilite las
darnos la posibilidad de generar una hoja de ruta en tareas y el comportamiento de los equipos de
caso de presentarse un incidente (Mboweni et al., trabajo. De igual manera, un reto importante es
2022). unificar la terminología existente y de esta forma
facilitar la unión de los tres principales actores
Por otro lado, los diferentes riesgos asociados
(desarrollo, operaciones y seguridad). Sí bien es
a la seguridad es otro desafío que enfrenta
cierto, algunos conceptos son únicos para cada actor
DevSecOps en los desarrollos de seguridad. Esta
se pueden establecer criterios transversales que
premisa puede traducirse en pérdidas financieras y
faciliten la implementación desde el inicio del
es una prioridad para que a través de DevSecOps se
desarrollo (Azeem et al., 2022).
fomenten buenas prácticas, se afiance la cultura en
materia de seguridad y se establezca desde el inicio Sin embargo, es responsabilidad de los líderes
las tareas propias de DevOps con el fin de evitar en seguridad asegurar la integración y desarrollo
sobrecostos generados por reproceso y prórrogas en continuo de DevSecOps, procurando que los
las entregas (Azeem et al., 2022). procedimientos implementados anteriormente, se
adapten a las nuevas prácticas para realizar un
En continuidad, el punto de referencia en
empalme que facilite su implementación. En
torno a la percepción del sector industrial que en
consecuencia, se debe tener claro que estos procesos
definitiva es el usuario final de desarrollo, facilita la
son robustos y los resultados requieren de tiempo, lo
identificación de falencias, y a su vez establece
cual va unido a la generación de conciencia sobre la
métricas que permitan medir el funcionamiento de
importancia de DevSecOps para la organización y la
las aplicaciones promoviendo escenarios que
importancia que tiene el área de TI en el
permitan la predicción de eventos adversos y cómo
cumplimiento de estos desarrollos a largo plazo
aplicar los planes de contingencia (Pecka et al.,
(Azeem et al., 2022).
2022). Entre tanto, importante resaltar que
DevSecOps es un concepto relativamente nuevo, Desde ese contexto, se hace necesario
por esta razón se requiere documentar los contemplar escenarios de capacitación conjunta
desarrollos y avances relacionados con el tema, entre los desarrolladores, personal de operaciones y
fomentando la investigación con el fin de afianzar seguridad, con el fin de unificar los equipos de
las buenas prácticas en materia de seguridad. trabajo, en pro de evitar la duplicidad de tareas y de
esta forma reducir reproceso y costos.
A partir de lo anterior, se debe avanzar en
Adicionalmente, es importante referenciar uno de
difundir los términos de automatización y
los retos más relevantes, relacionado con la
sincronización ya que estos dos conceptos hacen que
integración de los ciclos de desarrollo, operaciones
los procesos habituales sean documentados, para
y seguridad, porque requiere la aplicación de fases
posteriormente realizarlos de manera sistemática,
6
generales del proceso, en procura de una mejora Lo anterior, según como se indica en la Figura 1
continua que genere como resultado la maduración desde la perspectiva de Kumar y Goyal (2020) se
de fases siguiendo las practicas que se listan a presenta el ciclo más apropiado para la
continuación: implementación y adaptación del enfoque
DevSecOps.
Analizar, comunicar y educar.
Integrar la seguridad en su ciclo de vida DevOps. Este ciclo está (ver Figura 1) está basado en
Introducir la automatización en su ciclo de vida los principios mencionados anteriormente, cultura,
de DevOps. automatización, infraestructura como código (IaC) y
Colaborar en los cambios de seguridad en sus monitoreo en donde se recomienda tener un enfoque
Fomentar el aprendizaje continuo y la iteración. importantes a tener en cuenta para implementar esta
filosofía como la planificación continua, diseño y
Entonces, de acuerdo con el concepto,
desarrollo continuos, integración continua, pruebas
principios y diferentes situaciones que actualmente
continuas, entrega continua, registro y monitoreo
se presentan en los equipos de desarrollo o en las
continuos, mecanismo de colaboración,
fábricas de software, es muy recomendable la
comunicación y retroalimentación, estas son
implementación de DevOps dentro de la estrategia
prácticas claves que se encuentran en DevOps pero
de desarrollo. Para ello es necesario que en la cultura
son necesarias para que DevSecOps sea adoptada y
empresarial se tenga conciencia que la seguridad
adaptada de manera óptima por lo cual se debe
debe ser transversal y debe estar presente en todo el
incluir la seguridad continua.
ciclo de desarrollo, desde el diseño con el fin de
realizar un sizing apropiado para la infraestructura.
Nota: (Kumar & Goyal, 2020). La aplicación de la filosofía DevSecOps se cumple cuando dentro de cada paso de
desarrollo está involucrada la seguridad.
7
4. Cómo lograr una adecuada implementación necesita para poder establecer un diseño correcto,
utilizando buenas prácticas DevSecOps aquí se podrán definir los entregables y se podrá
dentro del ciclo de desarrollo? hacer de manera constante de acuerdo a la evolución
Lo primero que se debe determinar es el de la organización (Scanlon & Morales, 2022).
objetivo que se quiere alcanzar con la
Diseño y desarrollo continuos: Al entender lo que
implementación de esta metodología.
el cliente necesita se puede iniciar un diseño
Es así como a partir del estudio de Scanlon y arquitectónico adecuado que permita tener
Morales (2022) “DevSecOps. es una operación de lineamientos claros para los desarrolladores, este
desarrollo más ágil, más eficiente y más segura” modelo de diseño y desarrollo continuo permite
(p.77) por lo tanto se debe tener la seguridad como construir aplicaciones más adaptables de acuerdo a
parte integral del desarrollo y la operación. las necesidades y los cambios continuos de los
negocios y las necesidades de los usuarios (Scanlon
Ahora, teniendo establecido el objetivo, se
& Morales, 2022).
podrá colocar en práctica los siguientes lineamientos
basados en la cultura DevSecOps. Es importante Seguridad continua: La seguridad continua ya no
tener en cuenta que esta cultura busca tener un es parte de la conclusión de un proyecto de
ambiente productivo en menor tiempo, y una desarrollo, por el contrario es la forma evolutiva más
evolución de la aplicación mucho más rápida que lo acertada que se puede implementar para el
tradicional, de hecho, se destaca que con la desarrollo ágil y seguro que se requiere en los
metodología tradicional se despliega un release para modelos de negocio actuales, que tienen constantes
cada intervalo de tiempo, mientras se cumple todo el cambios y exigencias en la protección y tratamiento
ciclo de desarrollo y en esta metodología, se busca de los datos, es el socio perfecto del diseño y
tener despliegues en el menor tiempo posible con el desarrollo continuo; la seguridad continua no es un
fin de dar mejor experiencia al cliente. Desde ese apéndice de la construcción de software, se ha
contexto, a continuación, se amplían los conceptos convertido en parte vital de este (Scanlon &
más representativos para la adecuada Morales, 2022).
implementación (Landry et al., 2022).
Integración continua: Corresponde a la capacidad
Planificación continua: esta es una etapa conjunta adaptativa del software en torno a la
en donde se establece el que, es donde queda claro implementación de los diferentes modelos de un
lo que se necesita, normalmente se habla de la sistema o de la interacción con otros actores, aquí es
especificación funcional, refiriéndose a lo que el donde se pueden ver materializados los modelos de
cliente quiere y establece los criterios de aceptación, mejora continua en busca de la solución a las
en este punto es importante la participación de los diferentes necesidades (Kumar & Goyal, 2020).
diferentes actores que deben entender lo que se
8
Pruebas continuas: Este nuevo concepto permite arquitectura, 2) versionamiento de código, 3) ciclo
validar las diferentes funcionalidades aún en de despliegues predecible.
producción con el fin de encontrar fallas y dar
solución a los diferentes errores reportados de
manera más ágil (Kumar & Goyal, 2020). 5. Conclusiones
Entrega continua: Es un diferenciador que da un Frente a los retos que se enfrentan hoy en día
valor agregado y es colocar en producción a medida las organizaciones con los ciberataques y viendo que
que un módulo es funcional, no espera la anteriormente la seguridad no era un factor
conformación de un release para despliegues importante, se identificó cómo a partir de la filosofía
posteriores, sino que permite desplegar y colocar DevSecOps se integró la Seguridad desde el
operativo a medida que se concluyen entregables principio en el proceso de DEVOP,S e impulsó a los
completos (Kumar & Goyal, 2020). equipos de desarrollo y operaciones a ser más
responsables con la seguridad. En su enfoque se
Registro y monitoreo continuos: Permite una
evidenció que se busca entregar un producto o
combinación perfecta entre infraestructura y
servicio más seguro, en el cual se puedan detectar
aplicación, lo que resulta en mejores tiempos de
vulnerabilidades en etapas tempranas para poder
respuesta de acuerdo a los eventos que se presentan
responder de manera ágil a los cambios y de esta
dentro del uso normal de la aplicación (Kumar &
manera se puede lograr una mejor satisfacción al
Goyal, 2020).
cliente.
Mecanismo de colaboración: Se deben construir
Por otor lado, se determinó que el principal
bases de conocimiento que permita crecer, adoptar y
reto de DevSecOps consiste en integrar los actores
adaptar mejores prácticas basados en las lecciones
primarios (desarrolladores, operaciones y
aprendidas de los diferentes desarrollos existentes
seguridad), fomentando una cultura organizacional
(Kumar & Goyal, 2020).
que contemple en su esencia la importancia de la
Por lo tanto, la aplicación de estas prácticas se seguridad, implementando desde el inicio de todos
puede llevar a cabo tras una correcta administración los procesos, generando documentación que pueda
de tres componentes importantes dentro del servir de insumo en caso de incidentes y finalmente
desarrollo, los cuales se deben tener en cuenta para optimizando tareas que permitan una reducción
una adecuada administración de las aplicaciones en significativa en los costos de inversión.
los diferentes ambientes implementados, ya que si
Así mismo, se corroboró que la
no se administran de manera adecuada pueden llevar
implementación de DevSecOps permite llegar a un
o no tener éxito en el ambiente de producción. Los
modelo como el de un Casino, donde fue posible
componentes son: 1) versionamiento de
observar modelos de seguridad eficiente, porque
9
pasó de ser de puertas cerradas a puertas abiertas. No Faustino, J., Adriano, D., Amaro, R., Pereira, R., &
obstante, esto no hace que sea inseguro, por el Silva, M. M. da. (2022). DevOps benefits: A
contrario, ha llevado a una evolución del modelo de systematic literature review. Software:
seguridad igual que con el desarrollo de software. Practice and Experience, 52(9), 1905–1926.
Por lo tanto, se debe optimizar para una mejor https://doi.org/https://doi.org/10.1002/spe.309
experiencia de usuario en donde no sea necesario 6
negociar la seguridad, sino por el contrario, que se Hernández, R., Fernández, C., & Baptista, M.
permita una gestión más eficiente de la misma. En (2014). Metodología de la Investigación (M.
últimas se concluyó que el modelo garantiza que los G. Hill (ed.); Sexta Edic).
usuarios puedan confiar en las plataformas que It User. (2022). Solo el 30% de las organizaciones
utilizan y se sientan cómodos y satisfechos al implementan.
usarlas. https://discoverthenew.ituser.es/DEVOPS/202
2/01/solo-el-30-de-las-organizaciones-
implementan-DEVSECOPS-por-completo
Bibliografía Kumar, R., & Goyal, R. (2020). Modeling
Almeida, F., Simões, J., & Lopes, S. (2022). continuous security: A conceptual model for
and Agile. Future Internet, 14(2), 1–14. software over cloud (ADOC). Computers and
Anisetti, M., Bena, N., Berto, F., & Jeon, G. (2022). https://doi.org/10.1016/j.cose.2020.101967
A DevSecOps-based Assurance Process for Landry, A., Schuette, J., & Schurgot, M. R. (2022).
Big Data Analytics. Proceedings - IEEE DevSecOps for the transition of secure data
International Conference on Web Services, sharing technology. Proc. SPIE 12119, Open
4bf0-bab9- https://doi.org/10.1117/12.2619423
Azeem, M., Smolander, K., Mahmood, S., & Trends for the DevOps Security. A Systematic
Learning DevOps. 2022 International Scanlon, T., & Morales, J. (2022). Revelations from
Conference on Electrical, Computer and an Agile and DevSecOps Transformation in a
Energy Technologies (ICECET). Large Organization: An Experiential Case
https://doi.org/10.1109/ICECET55527.2022.9 Study. ACM International Conference
872968 Proceeding Series, 77–81.
Ordonez, A., Caicedo, O. M., Villota, W., https://doi.org/10.1145/3529320.3529329
Rodriguez-Vivas, A., & da Fonseca, N. L. S. Sentrio. (2021). ¿Qué es DevSecOps? Integra la
(2022). Model-Based Reinforcement Learning seguridad en DevOps.
with Automated Planning for Network https://sentrio.io/blog/que-es-devsecops-vs-
Management. Sensors, 22(16). devops/
https://doi.org/10.3390/s22166301 Yasar, H., & Teplov, S. E. (2022). DevSecOps in
Pecka, N., Ben Othmane, L., & Valani, A. (2022). Embedded Systems: An Empirical Study of
Privilege Escalation Attack Scenarios on the Past Literature. ACM International
DevOps Pipeline Within a Kubernetes Conference Proceeding Series.
Environment. ACM International Conference https://doi.org/10.1145/3538969.3544451
Proceeding Series, 45–49.
https://doi.org/10.1145/3529320.3529325