La seguridad no se agrega al final

La seguridad no se agrega al final

Autores: Daniel Eduardo Izas Marroquin; Alan Rodrigo Pamal De León

Palabras clave: Seguridad desde el diseño, responsabilidad compartida, desarrollo seguro, gestión de riesgos, ciclo de vida del software

Página 32 de 52

Introducción

La seguridad del software ya no puede considerarse una actividad que se realiza únicamente

después de programar un sistema. Las vulnerabilidades pueden originarse desde la definición

de los requerimientos, la selección de la arquitectura o la configuración inicial del producto.

Por ello, la seguridad desde el diseño propone identificar riesgos y establecer controles desde

las primeras decisiones del proyecto, en lugar de corregir los problemas en producción.

Este enfoque requiere reconocer que la protección del sistema no depende únicamente del

especialista en seguridad. Analistas, arquitectos, programadores, encargados de pruebas y

operadores toman decisiones que pueden aumentar o reducir los riesgos. La seguridad debe

convertirse en una responsabilidad compartida durante todas las etapas del desarrollo.

Desarrollo

Cambio de paradigma

En la ingeniería de software, la seguridad suele revisarse al final, poco antes del despliegue.

Esta práctica resulta insuficiente ante amenazas cada vez más sofisticadas, cuya creación

también puede verse facilitada por la inteligencia artificial.

Tener un software seguro es una necesidad que se debe abordar desde su planeación, y no

como un agregado extra. Es necesario aplicar un enfoque proactivo, y no reactivo, en la seguridad para evitar las pérdidas de tiempo y dinero que pueden surgir por la necesidad de

aplicar un parche en un sistema que ya se encuentra en fases avanzadas de creación.

La responsabilidad compartida

Durante el desarrollo de un software, la seguridad no es algo que sea abordado únicamente

por un especialista. Por el contrario, es una cultura que debe aplicarse durante todo el ciclo de

vida del software por todos los involucrados en su creación. La seguridad comienza desde

que el analista toma las necesidades y las convierte en requerimientos técnicos. Se definen las

distintas reglas de negocio y las restricciones al acceso a la información desde el primer

momento; luego, con esta información, se toman decisiones sobre la estructura del software.

Con la implementación de los asistentes de inteligencia artificial y la generación automática

de código, el rol del programador cambia a dirigir y validar el código generado. Utilizar dicho

código sin revisarlo genera vulnerabilidades, cuya culpa recae sobre el programador. Por lo

tanto, el programador es responsable de leer, probar y validar la seguridad de cada parte del

código durante la creación.

El ciclo finaliza con el paso a producción. Aunque se cuente con despliegues automatizados,

se requiere de una supervisión constante para revisar permisos, configuraciones, credenciales

y secretos que puedan estar accesibles para todos.

Figura 1. Causas principales de los defectos de software. Fuente: Jones (2018).

Monitoreo y continuidad

La seguridad tampoco termina cuando el sistema llega a producción. Es necesario monitorear

registros, configuraciones, accesos y comportamientos anómalos para detectar incidentes oportunamente. La información obtenida debe utilizarse para corregir defectos, actualizar los

Página 33 de 52

Conclusión

La seguridad debe integrarse desde el inicio, pues muchas decisiones que protegen un sistema

se toman antes de escribir el código. Considerarla desde los requerimientos y la arquitectura

reduce vulnerabilidades y evita correcciones costosas. Esta responsabilidad corresponde a

todos los participantes del ciclo de vida del software. La inteligencia artificial facilita la

generación de código, pero sus resultados requieren revisión, pruebas y supervisión humana.

Después del despliegue, el monitoreo continuo ayuda a detectar comportamientos anómalos,

corregir defectos y responder ante incidentes. Las copias de seguridad y los procedimientos

de recuperación también mantienen la continuidad del servicio. Por ello, la seguridad desde el

diseño es necesaria para desarrollar sistemas confiables y protegerlos durante su operación.

Referencias

Jones, Capers. Applied Software Measurement: Global Analysis of Productivity and Quality.

CRC Press, 2018.

National Institute of Standards and Technology (NIST). The NIST Cybersecurity Framework

(CSF) 2.0. NIST Cybersecurity White Paper (CSWP) 29: U.S. Department of Commerce,

2024. https://doi.org/10.6028/NIST.CSWP.29.

National Institute of Standards and Technology (NIST). Secure Software Development

Practices for Generative AI and Dual-Use Foundation Models. NIST SP 800-218A. 2024.

https://doi.org/10.6028/NIST.SP.800-218A.

Ver diseño original de las páginas
Página 32 de la Revista ECYS XXIX
Página 33 de la Revista ECYS XXIX