MISC N°
Numéro
108

Sécurité des navigateurs web : où en sommes-nous ?

Temporalité
Mars/Avril 2020
Image v3
Sécurité des navigateurs web : où en sommes-nous ?
Article mis en avant

Résumé

Il y a maintenant 5 ans, MISC dédiait un dossier complet à la sécurité des navigateurs web [1]. Il y était traité de sandboxing sous Firefox, de JIT, de cloisonnement JavaScript, d’exploitation du navigateur Chrome sous Android. Une grande partie de ce qui a été écrit à l’époque est encore en partie valide et je vous invite à y jeter un œil si vous ne connaissez pas déjà ce dossier.

Dans ce numéro...


Si pour le domaine de la sécurité, la décennie 2010 a été marquée par la prise de conscience par le grand public de la surveillance de masse au niveau étatique, le début de la nouvelle décennie semble être celle du développement exponentiel des capacités offensives aux mains d’acteurs étatiques, privés, voire mafieux.
En juillet 2019, je me suis penché sur la sécurité d'un antivirus grand public, connu sous le nom de « Avira ». Lors de cette analyse, j'ai identifié, dans le driver en charge d'authentifier un programme exécutable, une vulnérabilité menant à une élévation de privilèges. Après une brève présentation du composant noyau, nous étudierons en détail la vulnérabilité et préparerons les éléments nécessaires à la réussite d'une exploitation.
Le mouvement latéral est une composante essentielle des tests d’intrusion. Cette phase peut être fastidieuse si les cibles sont correctement protégées. L’outil « lsassy » répond à ce besoin en permettant d’extraire à distance les secrets présents sur des machines.
La dernière étape dans la mise en place d’un environnement de travail complet en UEFI va être l’installation d’un debugger. Celui-ci va permettre de, non seulement faciliter le développement au sein du micrologiciel, mais aussi de comprendre dynamiquement le code source. Dès lors, il sera possible de mieux appréhender ce code afin de l’éditer et créer son propre UEFI.
À quoi ressemblent les vulnérabilités découvertes sur les navigateurs actuels ? Cet article fait état de l’évolution des vulnérabilités modernes, notamment au travers d’exemples sur le navigateur Safari.
Les navigateurs sont depuis plusieurs années une cible de choix pour obtenir une exécution de code arbitraire initiale dans la chaîne de compromission d’un équipement « client », que ce soit une station de travail classique ou un smartphone. La prolifération des vulnérabilités et techniques d’exploitation encourage les éditeurs à mettre en place de la défense en profondeur afin de supprimer des classes entières de vulnérabilités ou rendre leur exploitation particulièrement complexe.
C’est théoriquement impossible, et pourtant c’est faisable en pratique. En s’inspirant d’une technique d’apprentissage statistique (Machine Learning) habituellement réservée au traitement du langage naturel, il est possible de déterminer avec une très grande précision si un bout de code en JavaScript est malveillant. Ces résultats s’étendent naturellement à tout langage interprété, mais sont mis en défaut par l’arrivée du WebAssembly.
Pendant un Red Team, l’exhaustivité des découvertes est mise de côté pour privilégier l’efficacité en se concentrant sur l’identification des vulnérabilités à fort impact permettant de mettre rapidement un pied dans le système d’information ciblé.
Nous avions vu dans MISC n°103 comment déployer une base KeePass en mode SaaS ciblant les particuliers ou de petits périmètres professionnels. Dans un autre monde, les pratiques DevOps se démocratisent et demandent d’augmenter l’agilité des développements tout en réduisant les délais de mise en production. Cet article est le fruit d’une collaboration entre un DevOps et un ingénieur SSI pour voir de quelle manière il est possible de tirer profit de KeePass dans ces environnements.
Près de trois quarts des sanctions prononcées par la Commission Nationale de l’Informatique et des Libertés (CNIL) ont parmi leurs causes des vulnérabilités techniques de sécurité. À partir de ce constat, et au prisme de notre expérience à la fois en cybersécurité technique et en protection des données à caractère personnel, nous avons analysé les sanctions de la CNIL publiées sur le site https://www.legifrance.gouv.fr/. Nous avons notamment établi une correspondance avec les catégories de vulnérabilités techniques identifiées dans la nomenclature du top 10 de l'OWASP 2017 (Open Web Application Security Project). Nous avons également étudié les fuites de données majeures survenues en Europe et dans le monde. Il en ressort que les vulnérabilités les plus communes sont liées à l’authentification, au contrôle d’accès et à la protection des données au repos et en transit.

Magazines précédents

Les derniers articles Premiums

Les derniers articles Premium

Du graphisme dans un terminal ? Oui, avec sixel

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

On le voit de plus en plus, les outils en ligne de commandes s'étoffent peu à peu d'éléments graphiques sous la forme d'émojis UTF8. Plus qu'une simple décoration, cette pointe de « graphisme » dans un monde de texte apporte réellement un plus en termes d'expérience utilisateur et véhicule, de façon condensée, des informations utiles. Pour autant, cette façon de sortir du cadre purement textuel d'un terminal n'est en rien une nouveauté. Pour preuve, fin des années 80 DEC introduisait le VT340 supportant des graphismes en couleurs, et cette compatibilité existe toujours...

Game & Watch : utilisons judicieusement la mémoire

Magazine
Marque
Contenu Premium
Spécialité(s)
Résumé

Au terme de l'article précédent [1] concernant la transformation de la console Nintendo Game & Watch en plateforme de développement, nous nous sommes heurtés à un problème : les 128 Ko de flash intégrés au microcontrôleur STM32 sont une ressource précieuse, car en quantité réduite. Mais heureusement pour nous, le STM32H7B0 dispose d'une mémoire vive de taille conséquente (~ 1,2 Mo) et se trouve être connecté à une flash externe QSPI offrant autant d'espace. Pour pouvoir développer des codes plus étoffés, nous devons apprendre à utiliser ces deux ressources.

Body