Nuestro equipo maximizó la seguridad de las aplicaciones de ACHS mediante el análisis de código estático, su configuración para detectar funciones potencialmente vulnerables, y mantenimiento.
Sobre el cliente
La Asociación Chilena de Seguridad (ACHS) es una mutualidad privada, sin fines de lucro, administradora del seguro social contra riesgos de accidentes laborales y enfermedades profesionales. contemplado en la Ley 16.744. Ofrece 3 tipos de prestaciones: prevención de riesgos laborales, de salud y económicas.
El desafío
Ante la necesidad de contar con aplicaciones más confiables, ACHS buscó la ayuda de Abstracta para realizar análisis estáticos de seguridad de sus aplicaciones, con el objetivo de detectar funcionalidades potencialmente vulnerables, elevar su seguridad, fiabilidad y mantenibilidad.
Gestionamos nuestra colaboración en tres etapas:
- Fase de levantamiento: análisis del estado inicial del desarrollo, para comprender cómo se gestionaba el código fuente y qué atributos de calidad se estaban analizando.
- Fase de configuración: analizamos el código estático, orientado a detectar vulnerabilidades. Transformamos el código fuente en un modelo de programa que permite detectar funciones potencialmente vulnerables, que pueden ser aprovechados por atacantes durante la ejecución de la aplicación.
- Fase de mantenimiento: diseñamos un plan de acción para la revisión continua del software de ACHS, en busca de mejorar su calidad interna y facilitar su mantenimiento.
Highlights
- Priorizamos los proyectos del área de Transformación Digital para el análisis estático de código. Los proyectos legacy o con metodologías tradicionales no entraron en esta definición, ya que no cuentan con integración continua ni con metodologías que manejen pruebas unitarias.
- Analizamos problemas típicos de seguridad, tales como cross site scripting, injection, known vulnerabilities, etc., mediante validaciones estáticas del código fuente.
- Evaluamos patrones en la búsqueda de malas prácticas, que llevaban a la falta de cumplimiento de estándares, la existencia de potenciales defectos o vulnerabilidades, código duplicado, complejidad de código y cobertura de pruebas.
- Generamos una métrica de deuda técnica para aportar el diseño de pruebas de calidad.
- Configuramos la herramienta SonarQube para poder analizar de código estático; chequear vulnerabilidades; detectar potenciales bugs; y revisar la calidad del código, mediante el chequeo de reglas que refuerzan el uso de estándares de codificación.
- Para lograr su mantenimiento, realizamos tareas que abarcan desde actividades de desarrollo de software y de infraestructura, hasta la gestión del código. Entregamos feedback y resultados continuamente, y gestionamos el cumplimiento de las normas que ofrece SonarQube.
Resultados
Logramos maximizar el estado de seguridad de todos los proyectos de ACHS, gracias a la implementación de casi la totalidad de los proyectos en SonarQube. Incrementamos la cobertura de pruebas unitarias: en 2021, de la totalidad de 62 proyectos analizados por SonarQube, ninguno disponía de cobertura de pruebas unitarias.
Al día de hoy, tienen 75 proyectos, de los cuales 52 tienen una cobertura de pruebas unitarias del 50% al 80% . Actualmente, nos encontramos trabajando en la fase de mantenimiento.
👉 Conoce aquí otros aspectos destacados de este caso de éxito.
¿Buscas un partner para detectar errores críticos y vulnerabilidades en tu software? ¿Quieres asegurarte de que cumpla con todos los estándares de seguridad y de la industria?
En Abstracta podemos realizar validaciones estáticas de tu código fuente y reducir el costo de los defectos desde el inicio del desarrollo. Contáctanos y conoce cómo nuestros expertos pueden mejorar la mantenibilidad del código y reducir la deuda técnica, con herramientas como SonarQube, en beneficio de la calidad.
Posts Relacionados
¿Cómo optimizar los costos de las pruebas de software?
Para mantener la continuidad del negocio sin afectar la calidad, mire cómo optimizar los costos de las pruebas de software de forma eficiente.
El error más común en el ciclo de vida del bug
Buenas prácticas para reducir el ciclo de vida del bug de software, gracias al trabajo conjunto de testers y desarrolladores.