Seguridad

Buenas prácticas, normativa y procedimientos a tener en cuenta en proyectos de desarrollo desde el punto de vista de la seguridad.

SOPORTE

Ante cualquier duda, se aconseja consultar con la persona responsable del contrato por parte del Cabildo de Tenerife o, en su ausencia, con el equipo de Informática (gesdesa@tenerife.es).

ÚLTIMA ACTUALIZACIÓN

2 de abril de 2024.

Acciones preventivas y buenas prácticas de desarrollo


En este apartado se relacionan una serie de directrices en base a las medidas del Anexo II del Esquema Nacional de Seguridad mp.sw.1 Desarrollo de aplicaciones y mp.sw.2 Aceptación y puesta en servicio, que se consideran fundamentales, sin embargo la empresa desarrolladora podrá y deberá tener en cuenta otras buenas prácticas que considere apropiadas para optimizar la calidad del software desde el punto de vista de la seguridad.

  • Seguir las normas, estándares y requisitos de seguridad en todas las fases del desarrollo. Adopción de conjuntos de buenas prácticas o recomendaciones reconocidas sobre desarrollo seguro como BP/28 Recomendaciones de seguridad sobre desarrollo seguro.
  • Disponer de normas de programación segura, especialmente en lo relativo al control de asignación y liberación de la memoria y al desbordamiento de la memoria.
  • Cumplir con el Marco de Trabajo  dispuesto en esta guía en relacion a: los mecanismos de identificación y autenticación, los mecanismos de protección de la información tratada y la generación y tratamiento de logs.
  • La capacitación y concienciación de los y las profesionales que intervienen en el proyecto.
  • Realizar seguimiento diario a las publicaciones de nuevas vulnerabilidades. Como fuentes de información se aconseja la atención a las recomendaciones de los fabricantes y proveedores de las tecnologías utilizada, así como a las publicaciones de entidades públicas como por ejemplo INCIBE CCN-CERT
  • Utilización de herramientas y procedimientos para la evaluación de la seguridad del código.
  • Realización de pruebas de seguridad automatizada con herramientas de análisis de código para asegurar la detección de vulnerabilidades u otros eventos que puedan impactar en la seguridad del software. Se deberían verificar las checklists asociadas a la normativa de desarrollo seguro de software basadas en guías de estándares y metodologías Open Source Security Testing Methodology Manual (OSSTMM), Open Web Application Security Project (OWASP), o equivalentes.
  • Una vez confirmada una vulnerabilidad, estudiar, planificar y priorizar su resolución en función de su gravedad y potencial impacto.
  • Revisión regular del código con el fin de mantener librerías, sistemas operativos, parches de seguridad, etc. lo más actualizados posible.
  • Evaluación de la seguridad de las dependencias de terceros como librerías o APIs antes de su integración.
  • Utilizar mecanismos robustos de autenticación, como LDAP y/o Certificado electrónico.
  • Atender siempre al principio de menor privilegio.
  • Cifrado adecuado para proteger los datos sensibles durante el almacenamiento, la transmisión o el procesamiento de acuerdo a la CCN STIC 807 Criptología de empleo en el Esquema Nacional de Seguridad y conforme al refuerzo 3 que el Esquema Nacional de Seguridad nos propone como parte de su medida mp.sw.1.
  • Como medida fundamental de salvaguarda ante potenciales vulnerabilidades se establece la reducción del software a instalar al mínimo imprescindible, por lo que las personas desarrolladoras del software deberán tener en cuenta esta premisa, especialmente a la hora de crear las imágenes de los contenedores Docker.
  • La empresa acordará con la persona responsable por parte de Cabildo, si será necesaria la integreación del software con ciertos microservicios corporativos destinados a garantizar la seguridad entre otros fines, por ejemplo el denominado BDO-Connector.
  • En relación al tratamiento de datos sensibles en los entornos de preproducción o desarrollo, la empresa deberá recurrir a la anonimización o a la seudonimización de los mismos, minimizando la utilización de datos personales no disociados y priorizando el empleo de datos sintéticos o creados artificialmente. La utilización en los referidos entornos de los datos de producción, quedará restringida a los casos en los que no sea posible trabajar de otra forma y deberá justificarse debidamente.

Normativa y procedimientos


Será de obligado cumplimiento la siguiente normativa, que será accesible desde la intranet del Cabildo de Tenerife. La persona responsable del proyecto por parte del Cabildo la pondrá a disposición de la empresa desarrolladora si ésta no tuviese acceso a la intranet:

  • Desarrollo de aplicaciones: Normativa de seguridad para el desarrollo de aplicaciones.
  • Aplicaciones web: Medidas de seguridad para el desarrollo aplicaciones web.
  • Aplicaciones móviles: Medidas de seguridad para el desarrollo aplicaciones móviles.
  • Aplicaciones que hagan uso de servicios en la nube: Medidas de seguridad en la nube.
  • Auditorías internas: Todo el software desarrollado para el Cabildo de Tenerife será susceptible de ser auditado por el equipo de Seguridad. Tras la evaluación se informará a la empresa desarrolladora de los resultados y de las correcciones que deberá realizar de forma obligatoria si fuese necesario, así como de otras mejoras recomendadas.
  • Acciones correctivas: La empresa adjudicataria deberá atender con la urgencia que se le requiera en función de cada caso, las comunicaciones, solicitudes e indicaciones que la persona interlocutora por parte del Cabildo de Tenerife, del proyecto o del equipo de seguridad, les hagan llegar en relación a posibles vulnerabilidades del software. Todo ello dentro del marco establecido por la norma Procedimiento de gestión del mantenimiento y parches de seguridad (vulnerabilidades) .

Protección de datos personales


Se considera especialmente importante en materia de seguridad la protección de los datos personales y la seguridad de la información, por este motivo las empresas desarrolladoras deberán tener presente la siguiente normativa a la hora de desarrollar o proponer mejoras: