|
Le Mem-Jacking s'attaque à l'espace d'adressage mémoire des navigateurs Web
Par Rédaction,
secuobs.com
Le 26/01/2009
Résumé : Le Mem-Jacking est une nouvelle technique de compromission à destination de l'espace d'adressage mémoire des navigateurs Web et cela afin de subtiliser des informations sensibles. Par ce biais, il est également possible de forcer la redirection des utilisateurs vers des sites malicieux. - Lire l'article
La sécurité liée aux navigateurs Web est à l’heure actuelle un point primordial ( lien ), de récents exemples d’attaques plus évoluées, comme le « In-session Phishing » ( lien ), sont là pour le rappeler régulièrement aux utilisateurs et aux développeurs. Après le Session-Hijacking ( lien ), le Click-Jacking ( lien ) et le Cookie-Hijacking ( lien ), c’est au tour du Mem-Jacking de voir le jour et de renforcer l’impression latente d’insécurité.
Transfuge des techniques de cassage de protections ( Cracking - lien ) qui sont utilisées pour le piratage des jeux vidéo, le Mem-Jacking consiste à s’infiltrer malicieusement au sein même de l’espace d’adressage mémoire d’un navigateur pour y subtiliser des informations sensibles. On ne parle pas ici du cache ( lien ) du navigateur dont les fonctionnalités de stockage mémoire temporaire ont déjà fait l’objet de techniques d’exploitation auparavant.
Concrètement, le contexte d’exploitation de cette attaque par Mem-Jacking est le suivant : un utilisateur lance un navigateur lambda depuis un système d’exploitation de type Microsoft Windows. Ne présentant aucune vulnérabilité connue à ce jour, le système d’exploitation en présence et la dernière version en date du navigateur utilisé permettent à l’utilisateur de profiter d’un environnement de navigation qui est supposé être sain et sécurisé. L’exploitation à venir ne pourra donc pas être imputée à des failles tierces qui leur seraient directement relatives.
Cet utilisateur choisit délibérément d’enregistrer des informations d’authentification pour des services en ligne. Le navigateur chiffrant ces informations avec un algorithme fort avant stockage, l’utilisateur confiant n’aura alors plus besoin de les introduire ultérieurement. Elles peuvent par exemple être des identifiants et des mots de passe pour des services de messagerie ou de réseaux sociaux. L’utilisateur a par ailleurs décidé d’installer préalablement la barre d’outils Google qui lui permettra, après une authentification initiale, d’accéder aisément aux services proposés.
Les données, enregistrées par l’utilisateur, sont bien chiffrées initialement par le navigateur avant d’être stockée en mémoire. Cependant, à un moment donné du processus de réutilisation, il reste nécessaire que ces données soient temporairement stockées en clair quelque part pour être ensuite envoyées vers le formulaire d’authentification du service en question. C’est à cet endroit précisément que va se trouver le point d’interception sur lequel repose les attaques par Mem-Jacking, une technique proposée par Aodrulez ( lien ).
De plus, lorsqu’un navigateur ouvre une page Web, toutes les données relatives à cette page (code HTML, CSS, images) sont stockées dans la mémoire, mais également l’ensemble des informations liées aux communications réseaux établies entre le navigateur et le serveur Web en charge de cette page. Il est alors envisageable pour l’attaquant de développer un code spécifique qui lui va permettre de scanner cet espace d’adressage mémoire avec pour l’objectif d’y effectuer des recherche de motifs sur les informations souhaitées en collecte.
Lors des tests de recherche et pour la seule navigation sur le service Orkut depuis la barre d’outils Google, il a ainsi été possible d’obtenir, après analyse statique, une liste de mille cinq cents occurrences d’une chaîne de caractères équivalente à l’extension « .com », dont de nombreux mails pouvant alimenter une base pour le SPAM ( lien ). Une analyse en temps réel reste par ailleurs envisageable afin d’augmenter les probabilités de collecte d’informations sensibles, les doublons pouvant être traités automatiquement alors que la verbosité pourra quant à elle être réduite par un choix judicieux des motifs de recherche.
Une preuve de concept ( POC - lien ), portant sur ces recherches statiques de motifs, est dès à présent disponible dans le papier de recherche mis à disposition ( lien ) de tous ; elle a été testée avec succès à l’encontre de la version 3.0.4 du navigateur Mozilla Firefox. Outre la récupération de données sensibles, la technique du Mem-Jacking pourrait également permettre à un attaquant d’effectuer une réécriture à la volée des adresses URL relatives aux pages Web que l’utilisateur ciblé souhaiterait visiter.
Dans ce cadre, l’utilisateur entre l’URL de la page qu’il désire visualiser et il valide ensuite sa requête, le navigateur récupère la valeur de l’URL dans un endroit précis de son espace d’adressage mémoire puis il va se connecter au serveur Web qui prend en charge la page associée à cette URL. Si l’attaquant parvient à surveiller précisément cet endroit et qu’il réussit à interférer nuisiblement avec la valeur de l’URL qui y est stockée, il lui sera alors possible de rediriger le navigateur de l’utilisateur vers une page Web du site de son choix.
Comment peut-on alors se prémunir contre le Mem-Jacking ? Comme on vient de le constater, ses formes les plus avancées nécessitent la surveillance de certaines zones de l’espace d’adressage mémoire du navigateur voir la modification, une randomisation des adresses mémoire liées à ce stockage pourrait déjà être mise en œuvre par les développeurs afin de complexifier le travail de l’attaquant. Par ailleurs, si le Mem-Jacking se concentre ici plus particulièrement sur les navigateurs Web, il reste néanmoins transposable à d’autres applications.
Source : PacketStorm ( lien )
- Article suivant : Le cloud computing est-il sûr ?
- Article précédent : Injection en mémoire de codes malicieux pour Apple Mac OS X
- Article suivant dans la catégorie Failles : Les serveurs DNS toujours utilisés pour les attaques DDoS basées sur l'usurpation IP
- Article précédent dans la catégorie Failles : Injection en mémoire de codes malicieux pour Apple Mac OS X
Mini-Tagwall des articles publiés sur SecuObs : | | | | sécurité, exploit, windows, attaque, outil, microsoft, réseau, audit, metasploit, vulnérabilité, système, virus, internet, usbsploit, données, source, linux, protocol, présentation, scanne, réseaux, scanner, bluetooth, conférence, reverse, shell, meterpreter, vista, rootkit, détection, mobile, security, malicieux, engineering, téléphone, paquet, trames, https, noyau, utilisant, intel, wishmaster, google, sysun, libre |
Mini-Tagwall de l'annuaire video : | | | | curit, security, biomet, metasploit, biometric, cking, password, windows, botnet, defcon, tutorial, crypt, xploit, exploit, lockpicking, linux, attack, wireshark, vmware, rootkit, conference, network, shmoocon, backtrack, virus, conficker, elcom, etter, elcomsoft, server, meterpreter, openvpn, ettercap, openbs, iphone, shell, openbsd, iptables, securitytube, deepsec, source, office, systm, openssh, radio |
Mini-Tagwall des articles de la revue de presse : | | | | security, microsoft, windows, hacker, attack, network, vulnerability, google, exploit, malware, internet, remote, iphone, server, inject, patch, apple, twitter, mobile, virus, ebook, facebook, vulnérabilité, crypt, source, linux, password, intel, research, virtual, phish, access, tutorial, trojan, social, privacy, firefox, adobe, overflow, office, cisco, conficker, botnet, pirate, sécurité |
Mini-Tagwall des Tweets de la revue Twitter : | | | | security, linux, botnet, attack, metasploit, cisco, defcon, phish, exploit, google, inject, server, firewall, network, twitter, vmware, windows, microsoft, compliance, vulnerability, python, engineering, source, kernel, crypt, social, overflow, nessus, crack, hacker, virus, iphone, patch, virtual, javascript, malware, conficker, pentest, research, email, password, adobe, apache, proxy, backtrack |
|
|
|
|
|