En la versión de SonarQube 8.4 se ha agregado una nueva regla de seguridad relacionada con Cross Site Scripting (XSS) - el tipo de vulnerabilidad más común.
Cross-Site Scripting pertenece a la categoría A7 en el OWASP Top 10, pero además se ha dado cobertura con nuevas reglas en otras cuatro categorías:
A2 - Autenticación rota
A3 - Exposición de datos confidenciales
A4 - entidades externas XML (XXE) y
A6 - configuración incorrecta de seguridad
En las ediciones comerciales se ha agregado la detección de vulnerabilidades XSS en las plantillas DTL y Jinja2, que son los archivos HTML que utilizan Django y Flask para generar la información para el usuario.
Esas reglas ahora también reconocen los tipos declarados en Django, Flask, la biblioteca estándar de Python y las otras bibliotecas de las que dependen Django y Flask. De esta forma se podrá rastrear con precisión los datos proporcionados por el usuario, donde además, se ha mejorado la detección cuando estos datos se pasan a colecciones.
Python no es el único lenguaje que agregó detección XXE, ahora también encontramos esas vulnerabilidades en C y C++ para detectar funciones inseguras.
También en esta versión se ha añadido la detección de vulnerabilidades de deserialización para C# y Java. La deserialización insegura esta en la categoría A8 en el Top 10 de OWASP.
La detección de XSS para C# se ha extendido a las soluciones .NET Core y .NET Framework que dependen del motor de plantillas de Razor.
Python agrega 14 nuevas reglas para detección de bugs y 8 nuevos code smells, incluyendo cuatro reglas sobre la verificación de tipos.
Además, el análisis de Python ahora comprende los tipos TypeShed, por lo que las reglas existentes se vuelven más inteligentes.
Y finalmente, los usuarios de Flake8 podrán importar fácilmente las evidencias a SonarQube.
Aquí puedes ver todas las reglas de Python disponibles.
El análisis se acelera en esta versión para C, C++, Objective-C y C# al eliminar el trabajo innecesario y redundante durante el análisis.
Para C, C++ y Objective-C, la pruebas de SonarSource mostraron reducciones de hasta el 80% dependiendo del número de dependencias externas utilizadas por el proyecto. Para el análisis de C#, el tiempo mejoró un promedio del 25%.
Configurar nuevos proyectos desde instancias de Bitbucket Server y GitHub Enterprise será mucho más fácil ahora con un asistente de incorporación de proyectos que te guiará a través de la selección de los proyectos para analizar.
Ahora podrás configurar automáticamente el proyecto para la decoración de Pull Requests. Y para los usuarios de Bitbucket Server, el nuevo tutorial en la aplicación les guiará a través de la configuración mínima requerida para configurar la pipeline en Jenkins.
Operar en tu instancia de SonarQube ahora será más fácil. Podrás hacer copias de seguridad de la base de datos sin tener que parar SonarQube y sin miedo a perder los datos o a corromperlos.
Además, ahora SonarQube estará disponible más rápido que nunca. SonarQube acepta y procesa informes de análisis antes de que se complete la indexación de evidencias durante el arranque. Eso significa que incluso antes de que la interfaz esté completamente disponible, los estados de Quality Gate se actualizarán, los webhooks se enviarán y se decorarán los Pull Request.
Mientras tanto, cada proyecto se vuelve navegable una vez que se han indexado sus evidencias. En resumen, el ciclo de vida de desarrollo puede continuar normalmente mientras el inicio progresa en segundo plano.
JAVA
PHP
C, C++
Prueba la la versión de SonarQube 8.4 y si necesitas más informaciones contacta con nosotros, estaremos encantados de acompañarte y guiarte en tu camino de inspección continua y apuesta por la calidad de código.