Blog

¿SonarQube o Hdiv? ¿Cuál me conviene?

SonarQube, es una popular herramienta de calidad de código abierto que también realiza análisis de seguridad, puede ser un gran apoyo para la mayoría de los equipos y no desaconsejamos su uso. Sin embargo, se quedará corta para los equipos que consideren la seguridad un requisito importante y tendrá que ser complementada o sustituida por herramientas de análisis de seguridad más potentes.

¿Qué es SonarQube?

SonarQube nació como una herramienta de análisis de la calidad del código fuente y luego se convirtió rápidamente en una de las herramientas DevOps más utilizadas para obtener consejos sobre las mejores prácticas de codificación, la convención y el rendimiento del código. Más recientemente, en 2018, se le añadieron algunas funciones de seguridad. Con el tiempo, la popularidad de SonarQube como herramienta de seguridad también ha aumentado, impulsada por la adopción general de herramientas de pruebas de seguridad de aplicaciones (AST) y una mayor conciencia de la importancia de liberar código seguro.

SonarQube está disponible en versión de código abierto y en varias ofertas comerciales, incluida una versión para empresas.

SonarQube para AppSec

SonarQube incluye una colección de reglas de análisis estático (SAST) para encontrar vulnerabilidades de seguridad en el código de las aplicaciones, pero SonarQube no es una solución construida exclusivamente para el análisis de seguridad. Como referencia, de las más de 600 reglas de Java, menos de 50 reglas se consideran vulnerabilidades de seguridad.

El análisis estático (SAST) funciona mirando el código fuente de la aplicación y simulando la ejecución de la misma para buscar patrones sospechosos que puedan indicar un riesgo de seguridad. SonarQube utiliza el rastreo estático de manchas, que ayuda a encontrar algunos riesgos con más matices que la simple coincidencia de expresiones regulares, pero es bien sabido que produce un gran número de falsos positivos que deben ser validados manualmente por un experto antes de que sean útiles para el desarrollador.

Algunas de las técnicas avanzadas de flujo de datos estáticos no están disponibles en la versión de código abierto y requieren una suscripción de licencia empresarial de pago.

¿Debe su equipo utilizar SonarQube?

El proceso moderno de desarrollo de software es una operación compleja que requiere múltiples equipos y herramientas. Cada aplicación tiene su propio nivel de estabilidad, rendimiento y requisitos de seguridad en función del caso de uso empresarial.

En este contexto, es difícil recomendar o desaconsejar a grandes rasgos herramientas específicas. Echemos un vistazo a los pros y los contras de SonarQube como herramienta de análisis de seguridad, y proporcionemos algunas directrices generales.

Ventajas de SonarQube

  • Amplio soporte de lenguajes: SonarQube soporta más de 25 lenguajes de programación. Sin embargo, algunos de los lenguajes sólo están disponibles en la versión para empresas.
  • Proyecto de código abierto desde hace mucho tiempo: La marca SonarQube cuenta con la confianza de muchos equipos y ha sido validada. Es una de las soluciones de pruebas de seguridad de aplicaciones gratuitas más recomendadas. Es fácil de descargar y experimentar para evaluar su adecuación.
  • Muchas integraciones: Sonarqube se puede integrar fácilmente en la mayoría de los pipelines CI/CD, IDEs y cadenas de herramientas DevOps.

Desventajas de SonarQube

  • Falsos positivos y baja tasa de detección: Según el OWASP Benchmark, una forma científica de medir la precisión de las herramientas de seguridad, SonarQube reporta casi un 20% de falsos positivos. Consulte la sección de OWASP Benchmark para obtener más detalles.
  • Enfoque basado en el escaneo: SonarQube trabaja escaneando el código fuera de línea. Este proceso es lento si el proyecto es complejo, e introduce retrasos en el proceso de desarrollo.
  • Se requiere acceso al código fuente: SonarQube necesita acceso directo al código fuente de la aplicación. Esto significa que no puede validar las dependencias precompiladas, como los paquetes de código abierto, el código heredado y los módulos proporcionados por socios externos.
  • Los resultados estáticos quedan rápidamente obsoletos: En el momento en que la aplicación cambia, los resultados de SonarQube quedan obsoletos y hay que ejecutar un nuevo proceso de escaneo. Esto frustra a todo el mundo porque nadie quiere perder el tiempo con unos resultados que podrían haber cambiado ya.
  • No es aplicable a los sistemas de producción: Debido al enfoque de escaneo y a la necesidad de tener acceso al código fuente, SonarQube no es aplicable a los sistemas de producción.

Resumen: algunas pautas generales sobre Sonarqube como herramienta de AppSec

  • SonarQube puede añadir valor a su SDLC: Al estar bien probado, ser gratuito y de código abierto, SonarQube añadirá valor a la mayoría de los equipos, por lo que es una adición segura a casi todas las cadenas de DevOps, sin embargo…
  • SonarQube requerirá configuración y triaje: En general, los enfoques SAST requieren la configuración de reglas, el ajuste y la validación de los resultados. Por no hablar de los largos escaneos de horas e incluso días de duración. Esto significa que habrá que reservar algunos recursos para el funcionamiento de SonarQube.
  • SonarQube pasará por alto algunos riesgos graves: Si la seguridad es una alta prioridad para el equipo, se deben utilizar herramientas de seguridad adicionales además de SonarQube. Muchos riesgos sólo son observables cuando la aplicación se está ejecutando, por lo que la recomendación es utilizar otros enfoques además de la técnica de análisis estático.

SonarQube vs Hdiv Detection (IAST)

El siguiente cuadro resume las principales diferencias entre ambos enfoques. Algunos de los aspectos más importantes que nos gustaría destacar son:

Hdiv y el enfoque IAST pasivo

Desde el punto de vista tecnológico, la detección de Hdiv (IAST) es una solución pasiva de pruebas de seguridad de aplicaciones interactivas (IAST). Esto significa que no es necesario escanear ni atacar la aplicación porque el tráfico regular es suficiente para realizar el análisis de seguridad. Además, la combinación de visibilidad en tiempo de ejecución y estática significa que la precisión es ultra alta, gracias a que se tiene el contexto completo de cómo funciona realmente la aplicación.


Funciones de seguridad avanzadas

Algunos riesgos de seguridad de las aplicaciones no pueden ser detectados con sólo mirar el código de la aplicación porque sólo se manifiestan durante el tiempo de ejecución de la misma. Algunos ejemplos graves de riesgos no detectables por SonarQube son:

  • A1:2017 Inyección NoSQL: A medida que las bases de datos modernas empiecen a sustituir a SQL, SonarQube pasará por alto los riesgos de inyección avanzados porque no mira la semántica en tiempo de ejecución.
  • A6:2017 Desconfiguración de la seguridad: Esto incluye la configuración correcta de las cabeceras de seguridad, las cookies, la caducidad de la sesión y la configuración de autocompletar los formularios.
  • A3:2017 Exposición de datos sensibles: Los datos sensibles, como la información personal y los stacktraces, son aspectos en tiempo de ejecución, por lo que cualquier enfoque estático no podrá detectar esta familia de riesgos.

Actualización de la protección contra los ataques

Otra ventaja clave de Hdiv con respecto a SonarQube es la capacidad de pasar de la detección de Hdiv (IAST) a la protección de Hdiv (RASP) para permitir la protección automática de todas las vulnerabilidades que no se han podido solucionar. Se trata de una enorme mejora estratégica con respecto a SonarQube. Después de todo, es casi imposible arreglar todos los problemas de seguridad antes de pasar a producción, y el RASP proporciona la tranquilidad de que ninguna vulnerabilidad será explotada.

Resumen de SonarQube vs Hdiv IAST

Cómo la detección de Hdiv (IAST) resuelve los problemas de SonarQube

  • Falsos positivos y baja tasa de detección: Hdiv Detection (IAST) informa de una tasa de falsos positivos del 0% en la misma puntuación. Esto significa que se pierde menos tiempo en validar los resultados del escaneo.
  • Enfoque basado en el escaneo: como Hdiv Detection (IAST) trabaja continuamente en tiempo real, no es necesario lanzar un proceso de escaneo.
  • Se requiere el código fuente: Hdiv Detection (IAST) trabaja con código compilado, lo que combinado con las capacidades incorporadas de SCA proporciona una cobertura de análisis completa de la base de código de la aplicación.
  • Los resultados estáticos quedan rápidamente obsoletos: Los resultados del análisis de Hdiv Detection (IAST) están siempre actualizados gracias al enfoque de análisis continuo.
  • No es aplicable a los sistemas de producción: La Detección de Hdiv (IAST) presenta muy poca sobrecarga de rendimiento y, por lo tanto, funciona muy bien en entornos de producción.

SonarQube vs Hdiv ROI

Examinamos el retorno de la inversión de SonarQube frente a Hdiv analizando los costes que conllevan las siguientes actividades:

  • Análisis de vulnerabilidad: SonarQube requiere que los equipos inviertan alrededor de 10 horas para revisar los resultados de la vulnerabilidad debido a la naturaleza estática, el tiempo de escaneo y la falta de precisión, en comparación con 1 hora para Hdiv
  • Triaje para eliminar los falsos positivos: SonarQube tendrá muchos falsos positivos que requieren una evaluación manual. Para un proyecto medio, esto puede llevar entre 40 y 80 horas de trabajo especializado, en comparación con menos de 3 horas para Hdiv, debido a la baja tasa de falsos positivos
  • Informar a los desarrolladores: SonarQube requerirá alguna información adicional para encontrar el equipo correcto a cargo del código, unos dos días o 16 horas. Esto se compara con medio día para Hdiv, ya que el análisis de seguridad incluye toda la información relevante para encontrar y solucionar el problema.

Teniendo en cuenta los costes típicos de licencia y de mano de obra, Hdiv Detection (IAST) representa un ahorro de costes anual del 88% respecto a SonarQube. Háganos saber si quiere ver estos números con más detalle, incluyendo nuestras suposiciones de tiempo y costes.

Cómo evaluar SonarQube vs Hdiv por usted mismo

SonarQube tiene una versión de código abierto que cualquier equipo puede probar fácilmente. Si quieres comparar Hdiv contra SonarQube o cualquier otra herramienta de pruebas de seguridad de aplicaciones, háznoslo saber y te llevaremos a través del proceso.

Artículos Relacionados

Protege tus aplicaciones Web y API

Accede a una evaluación completamente funciona

La primera solución completa que cubre los errores de seguridad y fallas de la lógica empresarial en todo el SDLC
Ir al Demo
Alterta Temprana de Riesgos
Reduce tu ventana de exposición al riesgo a las amenazas externas, mejorando la eficiencia en la detección y respuesta ante ciberamenazas.
Más Info
Hdiv - Protege tus aplicaciones Web y API
La primera solución completa que cubre los errores de seguridad y fallas de la lógica empresarial en todo el SDLC
Accede al Demo Gratuito
Protección de Dominios - Sendmarc
Evita y protege activamente los dominios de tu organización contra los ataques de suplantación de identidad y phishing
Más Info
Endpoint - Panda Security
Endpoint Protection Platform, EDR y Servicios de 100% Atestación y Threat Hunting integrado
Más Info

Últimos Artículos

Hablemos

Si tienes alguna duda o pregunta con nuestros servicios, puedes comunicarte directamente con nosotros o completar el formulario, y nos pondremos en contacto contigo en breve.

Email

contacto@cronup.com

Ubicación

Providencia, Santiago de Chile

Twitter

@Cronup_CyberSec

Linkedin

Cronup Ciberseguridad

CronUp Newsletter

Suscríbete a nuestro resumen semanal de noticias y alertas de seguridad para mantenerte actualizado sobre el panorama de amenazas en la región y el mundo.

* indicates required