Microsoft propose sonar, un outil open source qui va vous permettre de scanner votre site Web
à la recherche de vulnérabilités
En 2013, Microsoft a lancé modern.IE avec un outil d'analyse statique pour détecter les optimisations pour les anciennes versions de IE, les bibliothèques obsolètes, les préfixes manquants, et plus encore. Cependant, le Web a évolué. Par conséquent l’éditeur a décidé de mettre à jour ses outils pour répondre au mieux aux nouvelles réalités. C’est dans cette optique qu’il a présenté sonar, « un nouvel outil de filtrage et un scanner de site pour le web moderne. »
Microsoft explique que « Sonar apporte de nombreuses améliorations par rapport aux scanners précédents : une exécution du code du site au lieu d'une simple analyse statique, un ensemble de règles plus flexible et modernisé, une exécution de tests parallèles, une intégration avec d'autres services, une base de code complètement open source dès le premier jour, etc. En outre, sonar peut également être utilisé comme un outil de ligne de commande (CLI) que vous pouvez intégrer directement dans vos flux locaux de travail de développement Web. »
Sonar est un projet open source disponible sous deux formes : la première consiste en un utilitaire de ligne de commande à intégrer au worflow de développement Web en local, la seconde se présente comme un service en ligne.
Une fois l’analyse effectuée, sonar pointe non seulement les problèmes, mais « plutôt que simplement dire aux développeurs ce qui n'allait pas, [il] dit aussi pourquoi dans un rapport détaillé. »
Sonar prend actuellement en charge cinq catégories de règles clés :
- l'accessibilité : pour le moment avec axe (le moteur d'accessibilité pour les tests automatisés d'interfaces utilisateur basées sur HTML) et meta-charset-utf-8 ;
- l’interopérabilité : notamment avec content-type, highest-available-document-mode, html-checker, meta-viewport et no-friendly-error-pages ;
- performance : ici avec amp-validator, image-optimization-cloudinary et no-html-only-headers ;
- progressive Web App (PWA, une Web App qui va associer le meilleur du web avec le meilleur des applications natives) : Pour rappel, une PWA permet :
- un chargement instantané : grâce au Service Worker, l'accès au réseau devient optionnel,
- les Notification Push : la Notification API Notification et la Push API permettent de faire parvenir à l'utilisateur des notifications contextuelles et adéquates, même si le navigateur est fermé (grâce au Service Worker),
- responsive : l'utilisateur accède à votre application par différents périphériques, votre application doit faire de même et suivre l'utilisateur sur son téléphone, sa tablette ou son ordinateur (voire sa montre),
- sécurisée : l’utilisation de HTTPS est indispensable pour le Service Worker, et aussi pour les Progressive Web Apps,
- la disponibilité sur l'écran d'accueil : c'est ici qu’intervient le Web App Manifest va servir.
Concernant les PWA, sonar apporte apple-touch-icons, manifest-app-name, manifest-exists et manifest-file-extension ;- la sécurité : ici, sonar propose disallowed-headers, disown-opener, no-protocol-relative-urls, ssllabs, strict-transport-security, x-content-type-options, validate-set-cookie-header et no-vulnerable-javascript-libraries.
Selon Microsoft, Sonar améliore les scanners statiques disponibles en exécutant du code de site Web, tout en s'intégrant à d'autres services de numérisation tels que le service de test de configuration de certificats SSL de Qualys, le projet AMP fondé par Google, et snyk.io, qui est le scanner de Sonar pour les bibliothèques JavaScript vulnérables.
D’ailleurs Snyk explique que, par défaut, Sonar vérifie la présence de bibliothèques JavaScript avec des vulnérabilités connues. Sonar analyse les bibliothèques et les versions utilisées, puis vérifie les vulnérabilités JavaScript côté client de Snyk et génère un rapport avec des liens vers des problèmes sur Snyk, qui contient des informations permettant de remédier à cette vulnérabilité. Snyk note que les développeurs devront toujours vérifier le code côté serveur pour des bogues similaires.
Suite à une étude l'an dernier qui a trouvé que 37 % des 133 000 sites Web de son univers avaient au moins une bibliothèque JavaScript avec une vulnérabilité connue, Snyk a analysé les 5000 URL les plus courantes et constaté que 76,6 % utilisaient une bibliothèque JavaScript avec au moins une bibliothèque vulnérable.
Le projet, open source, a été confié par Microsoft à la JS Foundation cet été afin que la communauté puisse y participer activement. Dans le futur, Microsoft compte ajouter des options de configuration pour Sonar en mode SaaS ainsi que le proposer sous forme de plugin pour Visual Studio.
en savoir plus sur sonar
essayer sonar en ligne
Source : annonce sonar, blog Snyk
Et vous ?
Que pensez-vous de cette initiative ?
Partager