Analizar tu código es esencial para mantenerte seguro y cumplir con la Ley Fintech e ISO 27002
En esta cuarta edición de nuestra saga sobre herramientas de cumplimiento, hablaremos del análisis de código estático. Si, es tu primera vez por aquí o si es el primer artículo sobre herramientas con el te te topas te sugerimos echarle un vistazo a estas lecturas:
Herramientas de cumplimiento: Centralizadores de LOGS
Herramientas de cumplimiento: Firewalls y protección de dirección IP
Análisis de código dinámico: ¿Qué herramientas usar para cumplir?
De igual manera, puedes empezar por este artículo o el que te sea de mayor interés.
Analicemos el código fuente
Cuándo hablamos sobre análisis estático de código, nos referimos a evaluar el código de una aplicación sin ejecutarlo. Este tipo de evaluación es útil para encontrar problemas de seguridad, performance y sintaxis en la aplicación.
Con el análisis de código estático es posible prevenir futuros problemas del software y con esto, futuros gastos también. Como dicen por ahí, es mejor prevenir que lamentar.
El código de tu aplicación debe ser confiable, seguro y mantenible para un mejor rendimiento. Cuando hablamos de evaluar estas características con análisis de código estático, nos referimos a aplicar herramientas que puedan extraer información del código fuente.
El objetivo de este análisis es determinar y combatir las causas que hacen que tu software sea inseguro.
Cumpliendo con ISO 27002
ISO 27002 dicta los controles de seguridad que hay que aplicar para mantener el Sistema de Gestión de la Seguridad de la información (SGSI) que definiste con ISO 27001.
Cuando hablamos de análisis de código estático nos referimos específicamente a los controles A.14.1.1 y A.14.2.2 de ISO 27002.
El control A.14.1.1 te pide que la seguridad sea parte integral de tus sistemas de información. Es decir, que toda la información de tu empresa se encuentre asegurada, sí o sí. Por otro lado, el control A.14.2.2 pide que los cambios a los softwares sean controlados, probados y aprobados.
Esto es súper importante porque si desde un principio el código fuente de tus aplicaciones no es seguro, tendrás más problemas a futuro.
Cumpliendo con la Ley Fintech
La Ley Fintech mexicana toca estos temas en el capítulo VI de la disposición general y en el anexo 1 de la disposición de interfaces de programación de aplicaciones informáticas estandarizadas.
Es aquí donde se implementa el desarrollo seguro y el análisis de código estático para validarlo. En pocas palabras esta ley exige que las fintechs que operan en México cuenten con desarrollo seguro durante la metodología del ciclo de vida del software. Así mismo, la infraestructura física de tu startup debe estar asegurada, al igual que la estructura de tu red.
Sabemos que cumplir con estándares de seguridad (ISO 27002) y/o con regulaciones nacionales (Ley Fintech México), puede ser algo laborioso. Por eso, te proponemos algunas herramientas que te facilitarán el cumplimiento de estos controles de seguridad.
Herramientas
En corto, lo que hacen estas herramientas es analizar tu código fuente para saber si es seguro o si tiene vulnerabilidades. Así mismo, las herramientas que mencionamos a continuación, están enfocadas en análisis de código estático para CI/CD.
CI/CD se refiere a la automatización continua para que tengas control sobre tus aplicaciones permanentemente. Desde que inicia el ciclo de vida del software en el desarrollo hasta la etapa de prueba, integración, distribución e implementación. Aquí nuestra lista de herramientas recomendadas:
- SonarQube: esta herramienta tiene una versión open-source y cubre 17 lenguajes. Sin embargo, si buscas un paquete con actividades más sofisticadas tiene otras 3 opciones que se pueden adaptar a tus necesidades (todas cuentan con una prueba gratis).
- Sonarcloud: una alternativa SaaS a SonarQube que cubre más de 24 lenguajes como Python, Java, C + +, etc.
- Snyk: puede integrarse con diferentes aplicaciones y lenguajes; dice por ahí que te permite resolver vulnerabilidades en 5 minutos …
Para terminar ..
En pocas palabras, es de suma importancia que tu código sea seguro desde la etapa de desarrollo hasta la etapa de implementación.
La Ley Fintech de México y el estándar ISO 27002 quieren asegurarse de que cumplas con este requisito.
Para hacer esta tarea más fácil te recomendamos apoyarte en algunas de estas herramientas: Sonarcloud, Snyk o SonarQube.