OP.PL.3 Adquisición de nuevos componentes
Documentos de referencia
- Son de especial relevancia los siguientes principios básicos:
- Artículo 9. Reevaluación periódica.
- ISO/IEC 27000
- 27002:2013
- 14.1.1 - Análisis de requisitos y especificaciones de seguridad de la información
- 27002:2013
- NIST 800-53 rev.4
- [PL-1] Security Planning Policy and Procedures
- [PL-2] System Security Plan
- [PL-7] Security Concept of Operations
- [PL-8] Information Security Architecture
- [SA-1] System and Services Acquisition Policy and Procedures
- [SA-3] System Development Life Cycle
- [SA-4] Acquisition Process
- [SA-8] Security Engineering Principles
- [SA-12] Supply Chain Protection
- Otras referencias:
- NIST SP 800-18 - Guide for Developing Security Plans for Federal Information Systems
- NIST SP 800-65 - Integrating IT Security into the Capital Planning and Investment Control Process
Guía de implantación
- La adquisición de nuevos componentes debe:
- tener en cuenta el análisis de riesgos [op.pl.1]
- ajustarse a la arquitectura de seguridad [op.pl.2]
- prever los recursos necesarios, esfuerzo y medios económicos para:
- la implantación inicial.
- el mantenimiento a lo largo de su vida útil.
- atender a la evolución de la tecnología.
- en todo momento se atenderá tanto a las necesidades técnicas como a la necesaria concienciación y formación de las personas que van a trabajar con los componentes.
Implementación en la plataforma
Marco de Adquisición Segura
Política de Adquisición de Componentes
La organización implementa un proceso estructurado para la adquisición de nuevos componentes que garantiza:
- Evaluación de seguridad previa a la adquisición
- Análisis de riesgos específico según op.pl.1
- Conformidad con la arquitectura definida en op.pl.2
- Evaluación del ciclo de vida completo del componente
- Consideración de aspectos regulatorios (FDA, EU MDR, ENS)
Principios de Adquisición Segura
Principios Fundamentales:
- Security by Design: Componentes con seguridad integrada
- Supply Chain Security: Validación de la cadena de suministro
- Vendor Risk Management: Evaluación de proveedores
- Total Cost of Ownership: Coste completo del ciclo de vida
- Regulatory Compliance: Cumplimiento normativo desde el diseño
- Open Source Due Diligence: Evaluación rigurosa de componentes FOSS
Proceso de Evaluación y Selección
Fases del Proceso de Adquisición
Fases del proceso de adquisición:
El proceso de adquisición sigue un flujo secuencial de 11 fases con validaciones en cada etapa:
| Fase | Actividad | Objetivo |
|---|---|---|
| 1 | Identificación de Necesidad | Determinar la necesidad de un nuevo componente |
| 2 | Evaluación Inicial | Valorar alternativas y viabilidad técnica |
| 3 | Análisis de Seguridad | Evaluar requisitos y riesgos de seguridad |
| 4 | Evaluación de Proveedores | Seleccionar y evaluar proveedores potenciales |
| 5 | Prueba de Concepto | Validar funcionalidad en entorno controlado |
| 6 | Análisis de Riesgos | Análisis detallado según op.pl.1 |
| 7 | Evaluación Económica | Calcular TCO y ROI del componente |
| 8 | Decisión de Adquisición | Aprobación formal por comité de evaluación |
| 9 | Implementación Piloto | Despliegue controlado en entorno de prueba |
| 10 | Despliegue Producción | Puesta en producción gradual |
| 11 | Monitorización Continua | Seguimiento del rendimiento y seguridad post-despliegue |
Flujo de proceso: Las fases son secuenciales y cada fase debe completarse exitosamente antes de avanzar a la siguiente. Cualquier hallazgo crítico en fases intermedias puede requerir volver a fases anteriores o cancelar la adquisición.
Criterios de Evaluación
Matriz de Evaluación por Categorías:
| Categoría | Peso | Criterios de Evaluación |
|---|---|---|
| Seguridad (40%) | ||
| - Certificaciones | 15% | Common Criteria, FIPS 140-2, ISO 27001 |
| - Historial CVEs | 10% | Número y severidad de vulnerabilidades |
| - Security Response | 10% | Tiempo respuesta a vulnerabilidades |
| - Documentación | 5% | Calidad documentación de seguridad |
| Cumplimiento (25%) | ||
| - Regulatory Alignment | 15% | FDA, EU MDR, GDPR, ENS |
| - Standards Compliance | 10% | ISO, IEC, HL7, FHIR |
| Técnico (20%) | ||
| - Funcionalidad | 10% | Cobertura de requisitos |
| - Performance | 5% | Rendimiento y escalabilidad |
| - Integración | 5% | Facilidad de integración |
| Económico (15%) | ||
| - Coste Inicial | 5% | Licencias, implementación |
| - Coste Operacional | 10% | Mantenimiento, soporte, actualizaciones |
Evaluación de Componentes por Tipo
Software de Terceros (SOUP - Software of Unknown Provenance)
Componentes SOUP Críticos en la plataforma:
| Componente | Categoría | Evaluación de Seguridad |
|---|---|---|
| FastAPI | Web Framework | ✓ Análisis de vulnerabilidades |
| ✓ Revisión de dependencias | ||
| ✓ SBOM (Software Bill of Materials) | ||
| PyTorch | ML Framework | ✓ Model security assessment |
| ✓ Supply chain verification | ||
| ✓ Vulnerability monitoring | ||
| OpenCV | Image Processing | ✓ Buffer overflow analysis |
| ✓ Input validation review | ||
| ✓ Memory safety assessment |
Proceso de Evaluación SOUP:
-
Análisis de Dependencias
Herramientas utilizadas para análisis de dependencias:
| Herramienta | Ámbito | Función |
|---|---|---|
| npm audit | Node.js dependencies | Auditoría de vulnerabilidades en dependencias npm |
| pip-audit | Python packages | Auditoría de seguridad de paquetes Python |
| safety check | Python security | Verificación de vulnerabilidades conocidas en Python |
| snyk test | Multi-language scanning | Escaneo de vulnerabilidades en múltiples lenguajes |
| trivy fs | Container scanning | Escaneo de vulnerabilidades y configuraciones |
Estas herramientas se ejecutan de forma automatizada en cada cambio de dependencias para identificar vulnerabilidades conocidas antes de la integración del componente.
-
Generación de SBOM (Software Bill of Materials)
Herramientas para generación y análisis de SBOM:
| Herramienta | Función |
|---|---|
| syft | Genera SBOM completo en formato JSON de todos los paquetes |
| grype | Analiza el SBOM generado para identificar vulnerabilidades |
El proceso genera un inventario completo de todos los componentes de software (SBOM) y posteriormente lo analiza para detectar vulnerabilidades conocidas. El SBOM se almacena como parte de la documentación del componente para trazabilidad y auditoría.
- Validación de Integridad
- Verificación de checksums/hashes
- Validación de firmas digitales
- Comprobación de fuentes oficiales
Servicios Cloud (AWS)
Evaluación de Servicios AWS:
| Servicio | Función | Controles Evaluados |
|---|---|---|
| ECS/Fargate | Container Runtime | IAM roles, network isolation, logging |
| DocumentDB | Database | Encryption, backup, access controls |
| S3 | Object Storage | Bucket policies, versioning, encryption |
| KMS | Key Management | HSM level, key rotation, access logging |
| CloudWatch | Monitoring | Log retention, access controls, alerting |
Criterios de Selección AWS:
- Certificaciones de cumplimiento (SOC 2, ISO 27001, HIPAA)
- Disponibilidad de controles de seguridad granulares
- Capacidades de auditoría y logging
- Soporte para cifrado en reposo y en tránsito
- Integración con herramientas de security
Bibliotecas de Machine Learning
Evaluación Específica para ML:
| Aspecto | Criterio | Implementación |
|---|---|---|
| Model Security | Model tampering protection | Digital signatures, checksums |
| Data Privacy | Training data protection | Differential privacy, federated learning |
| Bias Assessment | Algorithmic fairness | Bias testing frameworks |
| Explainability | Model interpretability | SHAP, LIME integration |
| Adversarial Robustness | Attack resistance | Adversarial testing |
Gestión de Proveedores
Evaluación de Proveedores
Cuestionario de Evaluación de Proveedores:
Cuestionario de evaluación de proveedores:
Security Assessment (Evaluación de Seguridad):
| Criterio | Opciones de respuesta |
|---|---|
| ISO 27001 certification | Yes / No |
| Vulnerability disclosure program | Yes / No |
| Security incident response | < 24h / < 1 week / > 1 week |
| Penetration testing frequency | Quarterly / Annual / Ad-hoc |
| Employee security training | Mandatory / Optional / None |
Development Practices (Prácticas de Desarrollo):
| Criterio | Opciones de respuesta |
|---|---|
| Secure SDLC implementation | Yes / No |
| Code review requirements | All code / Critical only / Optional |
| Static analysis tools | Yes / No |
| Dependency scanning | Yes / No |
| Container security scanning | Yes / No |
Compliance (Cumplimiento Normativo):
| Criterio | Opciones de respuesta |
|---|---|
| GDPR compliance | Certified / Self-assessed / No |
| HIPAA compliance | Yes / No / N/A |
| SOC 2 Type II | Yes / No |
| Medical device experience | Yes / No |
| FDA QSR experience | Yes / No |
Due Diligence de Proveedores
Proceso de Verificación:
- Verificación Legal
- Registro mercantil
- Estados financieros
- Referencias comerciales
- Seguros de responsabilidad
- Evaluación Técnica
- Capacidades técnicas
- Roadmap de producto
- Soporte técnico
- Documentación
- Auditoría de Seguridad
- Certificaciones vigentes
- Políticas de seguridad
- Gestión de vulnerabilidades
- Respuesta a incidentes
Análisis de Riesgos de Componentes
Integración con el Sistema de Gestión de Riesgos
Vinculación con el registro de riesgos:
Cada nuevo componente genera automáticamente:
Estructura de registro de riesgo para nuevo componente:
Cada nuevo componente genera automáticamente un registro de riesgo con la siguiente estructura:
| Campo | Valor para nuevo componente |
|---|---|
| ID | R-NEW (asignado automáticamente) |
| Tipos de riesgo | Product, Cybersecurity |
| Peligro o error de uso | Introducción de vulnerabilidades por nuevo componente |
| Propiedades de seguridad | Confidentiality, Integrity, Availability |
| Referencias modelo amenaza | Modelo de amenazas de ciberseguridad |
| Referencias componente | COMP-XXX (identificador del componente nuevo) |
| Severidad inicial | TBD (a determinar durante evaluación) |
| Severidad controlada | TBD (a determinar tras implementación de controles) |
| Requisitos de mitigación | Evaluación previa obligatoria, Monitorización continua post-despliegue |
Este registro se actualiza a lo largo del proceso de adquisición conforme se completan las fases de evaluación y se implementan controles de mitigación.
Análisis de Impacto
Matriz de Impacto por Componente:
| Tipo de Componente | Impacto Potencial | Controles Requeridos |
|---|---|---|
| SOUP Critical | Alto | Análisis exhaustivo, sandbox testing |
| SOUP Non-Critical | Medio | Análisis estándar, monitoring |
| Cloud Services | Variable | Service-specific assessment |
| ML Libraries | Alto | Bias testing, adversarial testing |
| Crypto Libraries | Crítico | FIPS validation, expert review |
Proceso de Implementación
Implementación Gradual
Fases de Implementación:
Fases de implementación gradual:
La implementación sigue un modelo de despliegue progresivo con testing específico en cada fase:
| Fase | Testing asociado | Objetivo |
|---|---|---|
| Development | Unit Testing | Validación de funcionalidad básica del componente |
| Staging | Integration Testing | Pruebas de integración con sistemas existentes |
| Pre-Production | Security Testing | Validación de controles de seguridad |
| Production Pilot | User Acceptance | Validación con usuarios reales en entorno limitado |
| Full Deployment | Full Monitoring | Despliegue completo con monitorización exhaustiva |
Flujo de implementación: Cada fase debe completarse exitosamente incluyendo su testing asociado antes de avanzar a la siguiente. El componente se despliega progresivamente desde entornos controlados (Development) hasta producción completa (Full Deployment), permitiendo detectar y corregir problemas en cada etapa.