Adquisición,
Desarrollo y Mantenimiento de los Sistemas de Información

Anexo 14 - ISO 27001

Video tutorial ElevenPaths

Metodologías de desarrollo seguro


Explicación orientativa

El objetivo es:

- Asegurar la inclusión de controles de seguridad y validación de datos en la adquisición y el desarrollo de los sistemas de información.

- Definir y documentar las normas y procedimientos que se aplicarán durante el ciclo de vida de los aplicativos y en la infraestructura de base en la cual se apoyan.

- Definir los métodos de protección de la información crítica o sensible.

El diseño e implantación de los sistemas de información que sustentan los procesos de negocio pueden ser cruciales para la seguridad. 


Aplica a todos los sistemas informáticos, tanto desarrollos propios o de terceros, y a todos los Sistemas Operativos y/o Software que integren cualquiera de los ambientes administrados por la organización en donde residan los desarrollos mencionados.

Los requisitos de seguridad deberían ser identificados y consensuados previamente al desarrollo y/o implantación de los sistemas de información.

Todos los requisitos de seguridad deberían identificarse en la fase de recogida de requisitos de un proyecto y ser justificados, aceptados y documentados como parte del proceso completo para un sistema de información. 

Trabaje estrechamente con las unidades de negocio para desarrollar un eBusiness seguro, incorporando requisitos de seguridad de la información en los proyectos, y con ello en los sistemas de eCommerce, desde el principio (también en cualquier cambio/actualización posterior).

Insista en el valor añadido de la seguridad en la reducción de riesgos comerciales, legales y operativos asociados al eBusiness. Trabaje los 3 aspectos clave de la seguridad: confidencialidad, integridad y disponibilidad.


14.1 Requisitos de seguridad de los sistemas de información

El objetivo es garantizar que la seguridad de la información sea parte integral de los sistemas de información a través de  todo su ciclo de vida.

Esto también incluye los requisitos para los sistemas de información que proporcionan servicios accesibles mediante redes públicas.

Se deberían considerar las implicaciones de seguridad asociadas con el uso de servicios de comercio electrónico, incluyendo transacciones en línea y los requisitos para los controles.

La integridad y disponibilidad de la información electrónica publicada a través de sistemas disponibles de publicidad deberían ser también consideradas.

Dentro de los sistemas de información se incluyen los sistemas operativos, infraestructuras, aplicaciones de negocio, aplicaciones estándar o de uso generalizado, servicios y aplicaciones desarrolladas por los usuarios.

Una falta de control en estos aspectos permite la materialización de potenciales amenazas, entre otras posibles, como:

- Compromiso de información (intercepción, espionaje en remoto, recuperación desde medios reciclados o deshechados, divulgación, datos de fuentes no fiables, manipulación de software, detección de posición, ...)

- Fallos técnicos (falla o mal funcionamiento del equipo, saturación del sistema de información, mal funcionamiento del software, exposición de la mantenibilidad del sistema de información...)

- Acciones no autorizadas (uso no autorizado de equipos, copia fraudulenta del software, corrupción de datos, comportamientos no autorizados, procesamiento ilegal de datos, ...)

- Compromiso de las funciones (error en el uso, abuso de privilegios, suplantación de identidad, denegación de acciones, ...)

14.1.1 Análisis y especificación de los requisitos de seguridad: Los requisitos relacionados con la seguridad de la información se deberían incluir en los requisitos para los nuevos sistemas o en las mejoras a los sistemas de información ya existentes.

14.1.2 Seguridad de las comunicaciones en servicios accesibles por redes públicas: La información de los servicios de aplicación que pasan a través de redes públicas se deberían proteger contra actividades fraudulentas, de disputa de contratos y/o de modificación no autorizada.

14.1.3 Protección de las transacciones por redes telemáticas: La información en transacciones de servicios de aplicación se debería proteger para evitar la transmisión y enrutamiento incorrecto y la alteración, divulgación y/o duplicación no autorizada de mensajes o su reproducción.

Porcentaje de sistemas y aplicaciones corporativas para los que los "propietarios" adecuados han:
(a) sido identificados,
(b) aceptado formalmente sus responsabilidades,
(c) llevado a cabo -o encargado- revisiones de accesos y seguridad de aplicaciones, basadas en riesgo y (d) definido las reglas de control de acceso basadas en roles.

"Estado de la eSeguridad", es decir, un informe sobre el nivel global de confianza de la dirección, basado en el análisis de los últimos tests de penetración, incidentes actuales o recientes, vulnerabilidades actuales conocidas, cambios planificados, etc.

Applipedia: Base de datos proporcionada en abierto por Palo Alto Network Research y su equipo de investigación para que aprender más sobre el nivel de riesgo de las aplicaciones que utilizan la red.


CSIRT Comunitat Valenciana: Informes sobre realizados por CSIRT-CV con guías para la configuración segura de servicios como Dropbox o dispositivos móviles entre otros.


CVE Details: La web proporciona un fácil utilizar el interfaz web para los datos de vulnerabilidades CVE. Se puede buscar por proveedores, productos y versiones, y ver las entradas CVE y vulnerabilidades relacionadas con ellos. Puede ver las estadísticas sobre proveedores, productos y versiones de los productos.


ENISA: El presente documento en español permite realizar una evaluación informada de los riesgos y ventajas para la seguridad que presenta el uso de la computación en nube, y ofrece orientaciones sobre protección para los usuarios actuales y futuros de la computación en nube.


FFIEC: Guía del FFIEC (Federal Financial Institutions Examination Council), en inglés, sobre cómo implantar un proceso de desarrollo y adquisición de TI eficaz en una organización. La acompaña una lista de verificación -checklist-, útil para auditar dicho proceso.


ISO: ISO/IEC 21827 es la norma, en inglés, que especifica el "Systems Security Engineering - Capability Maturity Model", que describe las características esenciales del proceso de ingeniería de seguridad en una organización. ISO/IEC 21827 no prescribe un proceso o secuencia particular, sino que recoge las prácticas generales del sector.


Métrica 3: La metodología MÉTRICA Versión 3 ofrece a las organizaciones un instrumento útil para la sistematización de las actividades que dan soporte al ciclo de vida del software. Está promovida por el Gobierno español.


OWASP: La guía de desarrollo de OWASP (Open Web Application Security Project) ayuda a crear aplicaciones web seguras. Disponible también en español..


ISACA: Guía de ISACA sobre aspectos relevantes a riesgos y seguridad en el Comercio Electrónico vía dispositivos móviles..


PCI DSS: (Payment Card Industry Data Security Standard) es un estándar internacional para la seguridad en los pagos mediante tarjeta de crédito.


FOCA: Herramienta para la realización de procesos de fingerprinting e information gathering en trabajos de auditoría web. La versión Free realiza búsqueda de servidores, dominios, URLs y documentos publicados, así como el descubrimiento de versiones de software en servidores y clientes. FOCA se hizo famosa por la extracción de metadatos en documentos públicos.


UNMASK: Los hackers explotan las vulnerabilidades de seguridad en los sites de Internet más populares, tales como blogs, foros, CMS, galerías de imágenes y los wikis para insertar contenido ilícito oculto en páginas web de inocentes sitios Web de terceros. Miles de propietarios de sitios web no son conscientes de que sus sitios son hackeados e infectados con parásitos. Herramienta para comprobar posibles infecciones en su sitio Web.



14.2 Seguridad en los procesos de desarrollo y soporte

El objetivo de este control es garantizar la seguridad de la información en los entornos de diseño e implementación dentro del ciclo de vida de
desarrollo de los sistemas de información

Se deberían controlar estrictamente los entornos de desarrollo de proyectos y de soporte.

Los directivos responsables de los sistemas de aplicaciones deberían ser también responsables de la seguridad del proyecto o del entorno de soporte. Ellos deberían garantizar que todas las propuestas de cambio en los sistemas son revisadas para verificar que no comprometen la seguridad del sistema o del entorno operativo.

Incorpore la seguridad de la información al ciclo de vida de desarrollo de sistemas en todas sus fases, desde la concepción hasta la desaparición de un sistema, por medio de la inclusión de "recordatorios" sobre seguridad en los procedimientos y métodos de desarrollo, operaciones y gestión de cambios.

Trate el desarrollo e implementación de software como un proceso de cambio. Integre las mejoras de seguridad en las actividades de gestión de cambios (p. ej., documentación y formación procedimental para usuarios y administradores).

Una falta de control en estos aspectos permite la materialización de potenciales amenazas, entre otras posibles, como:

- Compromiso de información (intercepción, espionaje en remoto, espionaje en proximidad, robo de equipos o documentos, recuperación desde medios reciclados o deshechados, divulgación, datos de fuentes no fiables, manipulación de hardware, manipulación de software, detección de posición, ...)

- Fallos técnicos (falla o mal funcionamiento del equipo, saturación del sistema de información, mal funcionamiento del software, exposición de la mantenibilidad del sistema de información...)

- Acciones no autorizadas (uso no autorizado de equipos, copia fraudulenta del software, uso de software falsificado o copiado, corrupción de datos, comportamientos no autorizados, procesamiento ilegal de datos, ...)

- Compromiso de las funciones (error en el uso, abuso de privilegios, suplantación de identidad, denegación de acciones, exposición de la disponibilidad del personal, ...)

14.2.1 Política de desarrollo seguro de software: Se deberían establecer y aplicar reglas para el desarrollo de software y sistemas dentro de la organización.

14.2.2 Procedimientos de control de cambios en los sistemas: En el ciclo de vida de desarrollo se deberían hacer uso de procedimientos formales de control de cambios.

14.2.3 Revisión técnica de las aplicaciones tras efectuar cambios en el sistema operativo: Las aplicaciones críticas para el negocio se deberían revisar y probar para garantizar que no se han generado impactos adversos en las operaciones o en la seguridad de la organización.

14.2.4 Restricciones a los cambios en los paquetes de software: Se deberían evitar modificaciones en los paquetes de software suministrados por terceros, limitándose a cambios realmente necesarios. Todos los cambios se deberían controlar estrictamente.

14.2.5 Uso de principios de ingeniería en protección de sistemas: Se deberían establecer, documentar, mantener y aplicar los principios de seguridad en ingeniería de sistemas para cualquier labor de implementación en el sistema de información.

14.2.6 Seguridad en entornos de desarrollo: Las organizaciones deberían establecer y proteger adecuadamente los entornos para las labores de desarrollo e integración de sistemas que abarcan todo el ciclo de vida de desarrollo del sistema.

14.2.7 Externalización del desarrollo de software: La organización debería supervisar y monitorear las actividades de desarrollo del sistema que se hayan externalizado.

14.2.8 Pruebas de funcionalidad durante el desarrollo de los sistemas: Se deberían realizar pruebas de funcionalidad en aspectos de seguridad durante las etapas del desarrollo.

14.2.9 Pruebas de aceptación: Se deberían establecer programas de prueba y criterios relacionados para la aceptación de nuevos sistemas de información, actualizaciones y/o nuevas versiones.

"Estado de la seguridad en sistemas en desarrollo", es decir, un informe sobre el estado actual de la seguridad en los procesos de desarrollo de software, con comentarios sobre incidentes recientes/actuales, vulnerabilidades actuales de seguridad conocidas y pronósticos sobre cualquier riesgo creciente, etc.

GLPI: Inventario preciso de todos los recursos técnicos junto a la gestión y la historia de las acciones de mantenimiento y los procedimientos consolidados. Esta aplicación es dinámica y está conectada directamente a los usuarios que pueden publicar solicitudes a los técnicos. Una interfaz de este modo autoriza a este último con, si es necesario prevenir el servicio de mantenimiento y la indexación de un problema que se encuentra con uno de los recursos técnicos para los que tienen acceso.


OCS Inventory NG: Solución de gestión técnica de los activos de TI.


GMF: Implementación de las recomendaciones ITIL (IT Infrastructure Library) para la gestión de servicios de TI (IT Service Management o ITSM). GMF es un producto de software libre distribuido bajo licencia GPL y incluye módulos de gestión de incidencias (Trouble Ticketing), gestión de inventario, gestión del cambio (Change Management), SLA y reporting.


SVN Subversion: Herramienta de control de versiones software open source basada en un repositorio cuyo funcionamiento se asemeja enormemente al de un sistema de ficheros.


CVS: Información sobre herramientas y manuales para el control de versiones software.


ISO/IEC 15408: Criterios de evaluación de seguridad TI. Software desarrollado bajo un proceso evaluado y certificado debería ser menos sensible a la fuga de información por vulnerabilidades.


FFIEC: Guía del FFIEC (Federal Financial Institutions Examination Council), en inglés, para la adecuada supervisión de proveedores de servicios TI. La acompaña una lista de verificación -checklist-, útil para auditar dicho proceso.


OllyDbg: Debugger para análisis de código a nivel ensamblador, incluso cuando el código fuente no está disponible.

Burpsuite: Proyecto ampliamente utilizado para probar aplicaciones web. Fue desarrollado en Java y mantenido por PortSwigger. Proporciona una interfaz gráfica con un conjunto de muchas funciones y herramientas útiles para ayudar en todas las fases incluido la intrusión.

API-University: Se han propuesto muchos enfoques para el diseño y desarrollo adecuados de API. Aunque no existe un enfoque correcto o incorrecto, sí existe un enfoque que se adapta mejor a la cultura de una empresa específica que a otras.  Este portal indica adicionalmente referencias en seguridad relevantes en el desarrollo.



14.3 Datos de prueba

El objetivo es asegurar la protección de los datos que se utilizan en las pruebas de los sistemas de información

Se debería evitar la exposición de datos sensibles en entornos de prueba.

Para proteger los datos de prueba se deberían establecer normas y procedimientos que contemplen prohibir el uso de bases de datos operativas.

En caso contrario se deberían despersonalizar los datos antes de su uso y aplicar idénticos procedimientos de control de acceso que en la base de producción.

Procedimientos para la solicitud de autorización formal para realizar copias de la base operativa como base de prueba y de eliminación inmediata, una vez completadas las pruebas de la información operativa utilizada.

Una falta de control en estos aspectos permite la materialización de potenciales amenazas, entre otras posibles, como:

- Compromiso de información (intercepción, espionaje en remoto, espionaje en proximidad, robo de equipos o documentos, recuperación desde medios reciclados o deshechados, divulgación, datos de fuentes no fiables, detección de posición, ...)

- Acciones no autorizadas (corrupción de datos, comportamientos no autorizados, procesamiento ilegal de datos, ...)

- Compromiso de las funciones (abuso de privilegios, suplantación de identidad, denegación de acciones, ...) 

14.3.1 Protección de los datos utilizados en prueba: Los datos de pruebas se deberían seleccionar cuidadosamente y se deberían proteger y controlar.

Porcentaje de sistemas evaluados de forma independiente como totalmente conformes con los estándares de seguridad básica aprobados, respecto a aquellos que no han sido evaluados, no son conformes o para los que no se han aprobado dichos estándares.

BSI: Guidelines for the Use of Personal Data in System Testing (Second Edition).


Microsoft: Esta sección de MSDN Library es sobre pruebas de toda la aplicación, ya sea manualmente o mediante pruebas de sistema automatizadas.


Generate Data: Herramienta para generar grandes volúmenes de datos personalizados y en una variedad de formatos para su uso en las pruebas de software, las bases de datos, etc.

Digi.Me: Servicio de datos personales, sin ánimo de lucro y comercial. Digi.me y Personal se fusionaron en 2017 y han sido ampliamente reconocidos desde 2009 por ser pioneros en el control individual sobre los datos y al mismo tiempo mejorar la privacidad y la seguridad. La arquitectura distribuida centrada en el usuario transfiere el poder a las personas al facilitar que las personas agreguen sus propios datos y compartan de forma privada con aplicaciones y empresas que cumplen con estas nuevas reglas.

Midata: Servicio de datos personales, sin ánimo de lucro y comercial. Los propietarios de una cuenta de datos en MIDATA pueden contribuir activamente a la investigación médica y los estudios clínicos otorgando acceso selectivo a sus datos personales. Pueden convertirse en miembros de la cooperativa y, por lo tanto, controlarla.

SoLID: Servicio de datos personales, sin ánimo de lucro y comercial. Creado por el inventor de la World Wide Web, Sir Tim Berners-Lee su misión es remodelar la web tal como la conocemos. Solid permite a los usuarios y organizaciones separar sus datos de las aplicaciones que los usan. Permite a las personas mirar los mismos datos con diferentes aplicaciones al mismo tiempo. Abre nuevas vías para la creatividad, la resolución de problemas y el comercio.

MyDex: Servicio de datos personales, sin ánimo de lucro y comercial. El objetivo es crear, evolucionar y mantener un ecosistema de datos personales abierto seguro, confiable y conveniente.

Pseudonymisation techniques and best practices: ENISA publica estas nociones básicas de seudonimización, así como soluciones técnicas que pueden apoyar la implementación en la práctica.

Data Pseudonymisation: Advanced Techniques and Use Cases: ENISA publica de forma complementaria esta guía con escenarios más complicados.


© 2005 Aviso Legal - Términos de uso información iso27000.es