Contribuez à SecuObs en envoyant des bitcoins ou des dogecoins.
Nouveaux articles (fr): 1pwnthhW21zdnQ5WucjmnF3pk9puT5fDF
Amélioration du site: 1hckU85orcGCm8A9hk67391LCy4ECGJca

Contribute to SecuObs by sending bitcoins or dogecoins.



Les navigateurs web, une porte dérobée vers l'intranet d'entreprise ?

Par Rédaction, secuobs.com
Le 24/11/2006


Résumé : La compléxification et les fonctionnalités grandissantes des sites web et des technologies associées font actuellement des navigateurs web un point d'entrée non négligeable pour la compromission des réseaux internes aux entreprises ; d'autant plus si l'on considére leur capacité à contourner les rêgles de filtrage mises en place.



Déjà auteur de la présentation « Phishing with Superbait » en 2005 ( lien ) sur les risques liés aux codes «Javascript » entre autres, le fondateur de la société « WhiteHat Security » ( lien ), Jeremiah Grossman, récidive cette année. Avec « Hacking Intranet Websites from the Outside : JavaScript malware just got a lot more dangerous » ( lien ), le « CTO » de « WhiteHat Security » est revenu sur ces risques lors de la dernière édition des conférences « Black Hat » ( lien ) qui s'est déroulée à Tokyo en octobre ( Asia 2006 - lien ).

Pour la plupart des utilisateurs, se positionner en tant qu'internaute, derrière un pare-feu d'entreprise en utilisant la technologie « NAT » (Network Translation Address) couplée à un réseau d'adresses IP privées, constitue aujourd'hui encore une garantie de sécurité ; cette impression permet dès lors d'observer des comportements à risques.

Parmi ces comportements, on retrouve l'absence de mises à jour et les mots de passe par défaut sur les matériels actifs présentant une interface web pour leur configuration ; de même le firewall propre à chaque machine n'est en général pas configuré de façon fine ; quand il est activé dans le meilleur des cas.

Le filtrage repose alors sur la seule solution « corporate » entre la structure interne et les réseaux extérieurs d'où les risques de contournements via l'exécution de code « Javascript » dans les flux web autorisés par le filtrage périmétrique .

Sachant qu'un code « Javascript » malicieux peut être placé de façon invisible, pour l'internaute, dans une page web appartenant ou pas à l'attaquant, il en résulte la possibilité d'effectuer différentes actions plus ou moins mal intentionnées au niveau du système d'exploitation : voler les cookies de l'utilisateur, consulter l'historique des sites web visités par celui-ci et des frappes qu'il aura effectuées à l'aide de son clavier.

Il est donc possible en combinant différents éléments d'imaginer reconfigurer automatiquement ces éléments actifs (routeurs, téléphone pour la « VOIP », passerelles antivirales, imprimantes) offrant une configuration « web-based » en utilisant n'importe quel navigateur web de l'entreprise comme une porte dérobée et cela indépendamment du système d'exploitation.

Le navigateur web agit alors comme une « backdoor » ( lien ) et devient le point de lancement des attaques vers les machines de votre « LAN » (Local Area Network) ; de nombreuses possibilités de « hacking » ont récemment été démontrées via l'exécution de code javascript.

Ces codes permettent par exemple de réaliser l'exploration de réseaux « NATtés » pour retrouver les adresses « IPs » privées des machines à attaquer afin d'exécuter un scan de port pour faire ensuite un relevé d'empreinte sur les serveurs « HTTP/HTTPS » qui auront été trouvés ; le « fingerprinting » peut s'opérer via la reconnaissance des messages d'erreurs sur la présence ou non des images par défaut (icônes) du serveur web ; le tout via le seul langage « Javascript ».

Il est important de noter qu'en aucun cas ces possibilités ne sont offertes par des failles inhérentes aux navigateurs web, mais seulement par l'utilisation de technologies « standards » supportées par ceux-ci ; outre le javascript on retrouve des risques d'exploitation liés au support des feuilles de style en cascade ou « CSS » ( Cascading Style Sheet – wikipedia.org - lien ) au même titre que les contrôleurs « ActiveX » et les applets « Java » malicieux.

L'âge d'or des codes malicieux semblerait donc être arrivé via la demande toujours plus croissante de contenus interactifs demandant de puissantes fonctionnalités du langage choisi pour le développement du site ou du service. Les navigateurs web ne sont pas encore prêts à assurer une telle demande de sécurisation via par exemple des solutions de restrictions de contenus ( Gervase Markham - lien ).

Vous pouvez néanmoins vous prémunir en prenant dès maintenant la bonne habitude de visualiser le « contenu » des liens sur lesquels vous cliquez, surtout pour les sites qui ne sont pas dits de confiance. Une longueur trop importante pour une « URL » donnée est un facteur de risque important par exemple ; aucun navigateur ne se distingue aujourd'hui des autres de par ses propres dispositifs de sécurité

Les usagers de « Firefox » ( mozilla-europe.org - lien peuvent néanmoins installer l'extension « NoScript » ( addons.mozilla.org - lien ) ou la barre d'outils « Netcraft » ( netcraft.com - lien ). Le navigateur de « Mozilla » reste pour l'instant toujours la solution à privilégier ; penser également à désactiver, si possible, le support des technologies « Javascript » et « Java » ainsi que celui des contrôles « ActiveX » au niveau de votre applicatif web.

Votre attention ne doit toutefois pas se cantonner aux sites personnels ; pour amener ces « malwares » à l'utilisateur final il est possible d'utiliser les sites dits de confiance via des vulnérabilités de type « XSS » ou « XSRF » ; ces failles sont caractéristiques des attaques les plus courantes (1400 recensées selon securityfocus.com - lien ) consistant non pas à attaquer le site web en lui-même mais ses utilisateurs.

Huit sites sur dix présenteraient des failles de type « XSS » ( « WHID » - The Web Hacking Incidents Database » - lien ) ; le principe des failles « XSS » ( wikipedia.org - lien ) consiste à profiter de la confiance d'un utilisateur en un site donné. Plusieurs exemples récents sur des sites ou des services « importants » :

- le Samy Worm exploitant « MySPACE », résultat un million d'utilisateurs infectés en vingt quatre heures ( namb.la – lien ),

- le « JS-Yamanner » sur « Yahoo Mail » ( ha.ckers.org - lien ).


A l'inverse, les failles dites « CSRF » ou « XSRF » (Cross Site Request Forgery – wikipedia.org - lien ) exploitent la confiance d'un site en un utilisateur donné via une « URL » spécialement forgée afin d'usurper l'identité de l'utilisateur à l'origine de la requête ; là aussi plusieurs exemples récents :

- compromission d'une liste de contact « GMAIL » ( webappsec.org – lien

- contournement de la politique de sécurité sur « BlogSpot » ( ha.ckers.org - lien ).


Si vous êtes l'administrateur d'un serveur hébergeant des sites web et que vous ne désirez pas en faire des relais pour ce genre d'attaques, plusieurs solutions dites « WaF » (Web Application Firewall) sont disponibles comme « Mod_Security » ( modsecurity.org - lien ), « SecureIIS » ( eeye.com - lien ) et « URL Scan » ( microsoft.com - lien ).

Pour les développeurs de sites Web, il est recommandé de prendre soin d'auditer le code ( « SEO Egghead » - lien ) afin de le protéger de ces différentes attaques dont il pourrait se faire le complice. N'oubliez pas non plus de filtrer le plus d'entrées possibles (URL, requêtes de recherche, entêtes, données des formulaires) tout en implémentant d'autres solutions comme les jetons de session ou les tests de turing « Captcha » qui permettent d'empecher l'automatisation de ces attaques ; plusieurs solutions d'automatisation d'audit de code existent comme « RATS » ( « Secure software ».- lien ).

Pour les administrateurs systèmes et réseaux, n'hésitez pas à changer les mots de passe par défaut des interfaces « web-based » des éléments qui constituent votre infrastructure ; dans le même temps ne négligez pas les mises à jour des postes utilisateurs aptes à naviguer sur le web même si votre infrastructure comporte un « firewall » et des adresses « IP » privées « NATteés ». Ne mésestimez pas non plus l'importance d'une configuration fine des « firewalls » présents sur chaque machine en complément du « firewall » classique d'entreprise.