mise à jour javascript
Les sites web utilisent de plus en plus de codes javascript provenant de librairies tierces, il est donc indispensable d’en assurer le maintien afin de ne pas laisser des failles qui seraient découvertes après la mise en ligne.
En vagabondant sur la toile, je suis tombé sur un article traitant de sécurité dans les développements, sujet qui m’interpelle tant la nature des développements effectués par mon entité sont exposés.
Il demande aux informaticiens de concevoir des programmes qui soient sécurisés dès leur conception, c’est à dire une “security by design.” Une tâche impossible puisque tout logiciel s’appuie sur des empilements de code dont il devient vite impossible de détecter les multiples failles. Ce serait comme demander à tous les conducteurs de ne plus jamais avoir d’accidents de la route sous prétexte qu’ils conduisent prudemment et ont passé le code de la route.
La revue du digital Cyber attaques : l’Etat demande une impossible sécurisation aux informaticiens
Je me suis donc attaqué au security by design qui n’est pas très clair quant aux contour mais néanmoins indispensables dans les travaux autour de la GDPR 1.
Les choses s’éclaircissent avec l’article de l’OWASP (Security by Design Principles) qui présente certains principes de bon sens dont un intéressant intitulé “Fix security issues correctly”. En plus d’inciter les développeurs à corriger les failles trouvées, je pense qu’il est important de vérifier également si les sources utilisées en provenance de l’extérieur ne sont pas également faillibles. Ceci rejoint le principe “Don’t trust services”.
Suite du voyage avec une étude intéressante de mars 2017 sur la vétusté des librairies javascript utilisées dans les principaux sites web :
Using data from over 133 k websites, we show that 37 % of them include at least one library with a known vulnerability; the time lag behind the newest release of a library is measured in the order of years.
Northeastern University Thou Shalt Not Depend on Me: Analysing the Use of Outdated JavaScript Libraries on the Web
L’article explique les résultats ainsi que les méthodologies d’analyse et les outils utilisés, certains font de la découverte des usages comme wappalyzer et d’autres vont plus dans le détail des versions vulnérables des scripts utilisés. Disponible désormais dans la suite OWASP, l’outil retire.js permet cette analyse et propose une extension pour votre navigateur préféré. Pendant votre navigation, l’extension vous affiche les librairies utilisées, leur version et les vulnérabilités connues avec un niveau de priorité dans la prise en charge. Je profite de cette étape pour mettre à jour la librairie jquery utilisée sur ce site, les autres sont à jour à priori, pas de régression, donc assez trivial.
Même si nous ne sommes plus directement dans le security by design, il y a des petites actions qui peuvent être entreprises dans le cadre des travaux de fond sur nos sites web et qui avec un minimum d’énergie peuvent éviter l’exploitation de failles connues (de tous) et qui pourraient avoir potentiellement de l’impact et fâcher vos ops. N’oublions pas que les attaquants utilisent des outils performants pour trouver leur proies et qu’un des principe de la sécurité est qu’il ne faut pas être la proie la plus facile.