Le Web 2.0 et ses insuffisances

Slides:



Advertisements
Présentations similaires
Active Directory Windows 2003 Server
Advertisements

CRÉER UNE APPLICATION INTERNET RELIEE A UNE BASE DE DONNEES
Internet et le client- serveur Licence Pro IE Cours Internet / Intranet Le Web HTML Protocoles Le client universel Contenus dynamiques.
Page d accueil.
Botnet, défense en profondeur
1re STG INTERNET Patrick DUPRE.
Présentation de l’Internet
Internet.
- Couche 7 - Couche application. Sommaire 1)Introduction 1)DNS 1)FTP et TFTP 1)HTTP 1)SNMP 1)SMTP 1)Telnet.
Comment monter son propre site WEB Présenté au ClubRIB par Daniel Pelletier le 10 février 2011.
DUDIN Aymeric MARINO Andrès
Conception de la sécurité pour un réseau Microsoft
Les Firewall DESS Réseaux 2000/2001
Exposé de Système - Informatique et Réseau
Vue d'ensemble Implémentation de la sécurité IPSec
Cours 6 : XML et les architectures N-tiers – Tier Applicatif
2-Generalites FTP:Protocole De transfert de fichiers sur un réseau TCP/IP. Permet de copier des fichiers depuis ou vers un autre ordinateur du reseaux,d'administrer.
Xavier Tannier Yann Jacob Sécurite Web.
Les virus informatiques
Un peu de sécurité Modal Web Modal Baptiste DESPREZ
Active Directory Windows 2003 Server
Le Téléphone Russe Le Téléphone Russe. Le Téléphone Russe Le Téléphone Russe.
LOG 02 Bases de Données Avancées Rappels sur JSP / Servlet
MODEX WEB BAPTISTE DESPREZ Un peu de sécurité. Avant dentrer dans le vif du sujet JavaScript Langage de script (comme PHP) Exécuté par votre navigateur.
Etude des Technologies du Web services
SECURITE DU SYSTEME D’INFORMATION (SSI)
Développement dapplications web Initiation à la sécurité 1.
1 Sécurité Informatique : Proxy Présenter par : Mounir GRARI.
Analyse des protocoles de la couche application
Ajax. Contexte Dabord, il y a eu les terminaux des ordinateurs centraux (environnements TSO, CICS, etc.) et les terminaux plein écran des environnements.
Applications Chapitre B17 et C18
Lycée Louis Vincent Séance 1
La sécurité - Les attaques
Le filtrage IP Ahmed Serhrouchni ENST’Paris CNRS.
Les instructions PHP pour l'accès à une base de données MySql
Xavier Tannier Sécurite Web.
Les relations clients - serveurs
Gestion des bases de données
Jeudi, 20 août 2009 Sécurité informatique Cégep de St-Hyacinthe Par Hugo St-Louis.
Développement dapplications web Authentification, session.
Clients riches RIA (Rich Internet Application) / RDA
PhP-MySQL Pagora 2012/2013 CTD 1 - Presentation de moi ^^
Module 8 : Maintenance des logiciels à l'aide des services SUS
Le Modele OSI.
MODEX WEB BAPTISTE DESPREZ Un peu de sécurité. Avant dentrer dans le vif du sujet JavaScript Langage de script (comme PHP) Exécuté par votre navigateur.
Les NAC Network Access Control
JEE 5 F.Pfister 2 institut eerie JEE – Une plateforme serveur  Développement et exécution d'applications réparties.
4 - Annuaires Les Annuaires d ’Entreprises Offres et solutions
Internet et le client- serveur Licence Pro IE Cours Internet / Intranet Le Web HTML Protocoles Le client universel Contenus dynamiques.
1 Architecture orientée service SOA Architecture orientée service SOA (Service Oriented Architecture)
Cours de programmation web
Les virus informatiques
PHP & MySQL Master1 ICD Claire Jacquot Emilie Hot le 24/10/2006.
Auvray Vincent Blanchy François Bonmariage Nicolas Mélon Laurent
Séminaire (6-12 Février 2007) Promo. M2 ESCE-Tunis 2006/07
Sage Contact Nouvelle Version 6.00 Dix raisons de choisir La nouvelle version 6.00 de Sage Contact (à partir de janvier 2003)
Groupe 3 De Greef Didier Oozeer Tommy Piette Marc Renard Guy
Développement d’application Web.  Internet  WWW  Client/Serveur  HTTP.
Page 1Dernière mise à jour: 17 avril 2015 Service de l'enseignement des technologies de l'information, © HEC Montréal, Tous droits réservés.
Présentation ESTRABOX
Développement et design Web Awaves academy Stockholm 2006.
Ingénierie des réseaux
Les évolutions du WEB Des technologies,... et un peu plus...
CPI/BTS 2 Programmation Web Les sites dynamiques Prog Web CPI/BTS2 – M. Dravet – 02/10/2003 Dernière modification: 02/10/2003.
LE SERVEUR PROXY Un serveur proxy (traduction française de «proxy server», appelé aussi «serveur mandataire») est à l'origine une machine faisant fonction.
ARCHITECTURE LOGIQUE DES RESEAUX
Sécurité des Web Services
Table Ronde Bulletins de Sécurité MS Bulletin de sécurité hors cycle.
Chapitre 8 Protection du trafic réseau à l'aide de la sécurité IPSec et de certificats Module S43.
Chapitre8 Configuration de l'adressage TCP/IP et de la résolution de noms Module S41.
Transcription de la présentation:

Le Web 2.0 et ses insuffisances

Sommaire Danger et but des attaques en Web 2.0 Problématique de Traces Rappel des attaques existantes Le DNS Pinning Cas d’école: Stormworm Le piratage accessible à tous Défenses et solutions Futur de ces attaques

Danger et but des attaques Code exécuté sur le poste client, de manière transparente Vol d’identifiants (mail, sites) Données bancaires Prise de contrôle du poste Rebond pour attaque Attaque réseau local Attaque orientée Web

Problématique de traces Le navigateur possède un cache Les résultats de requête Ajax n’y sont pas nécessairement stockés, ils peuvent être aisément écrasés A la fermeture du navigateur il ne reste plus rien: Aucun journal ne recense l’activité réseau Tout était en mémoire vive et sera réalloué très vite

Rappel des attaques existantes Cross Site Scripting Injections SQL HTTP Smuggling Web cache poisonning Phishing Vol de session Anti DNS Pinning Ajax

DNS Pinning Mécanisme de protection pour protéger l’utilisateur des détournements faits sur le DNS Le navigateur met en cache le résultat de la requête du domaine et le conserve pendant toute la session courante Par exemple: www.nbs-system.com se résout en 212.43.229.196

DNS Pinning Problème Pour être compatible avec les bascules de serveur DNS, une entrée du cache de DNS Pinning est vidé lorsque le site demandé est indisponible.

Anti DNS Pinning Par exemple, sur un site avec deux serveurs frontaux: www.nbs-system.com 212.43.229.196 62.23.95.18 Pendant toute la session utilisateur, le site nbs-system sera associé avec la première IP retenue par le navigateur: considérons 212.43.229.196 Si le serveur à cette adresse est indisponible; le navigateur effectuera une autre requête DNS. A ce moment précis, une personne malveillante pourrait renvoyer une réponse DNS pour détourner www.nbs- system.com vers 123.123.123.123

Anti DNS Pinning L’intérêt: Il est possible de faire basculer le navigateur d’une adresse IP à une autre sur un même nom de domaine Cette possibilité permet de contourner le mécanisme de défense bien connu: « Same Origin Policy » Cette bascule DNS reste « lente », il est nécessaire de faire jouer les Timeout pour que le navigateur décide que le serveur est indisponible

Rappel: Same Origin Policy Empêche un document (Web) chargé d’un emplacement de récupérer ou changer des propriétés d’un autre site URL Résultat Raison http://www.example.com/dir2/page.html Succès Même serveur et protocole http://www.example.com/dir/autre/page2.html http://www.example.com:81/dir2/autre.html Echec Même serveur et protocole mais port différent https://www.example.com/dir2/autre.html Protocole différent http://en.example.com/dir2/autre.html Hôte différent http://example.com/dir2/autre.html

DNS Pinning Le véritable problème émergent est posé par les plugins, qui peuvent effectuer des connections par eux-mêmes Il est possible de charger un objet actif (flash, java ...) d’une adresse, de « rebinder » celle-ci puis d’ouvrir du trafic vers une autre destination (par exemple, intranet)

Potentiel Ces plugins ouvrent donc la porte à une nouvelle génération de possibilités offertes par nos navigateurs Web : Le navigateur permet d’effectuer de l’http La fonction XMLHTTPRequest fournit un moyen pour effectuer du « tcp » séquentiellement Flash9 permet d’utiliser des sockets TCP Java fournit le support de TCP et UDP

Scénario Il est possible de contourner la « Same Origin Policy » et d’avoir plusieurs Ips sur un même nom de domaine Il est possible d’utiliser des <Iframes> pour transformer le navigateur en « routeur » La logique de communication est faite en Javascript

Scénario de DNS Rebinding

Scénario de DNS Rebinding

Scénario de DNS Rebinding

Scénario de DNS Rebinding

Scénario de DNS Rebinding

Scénario de DNS Rebinding

Ajax Design des applications Ajax non conventionnel: Il est très aisé de mettre en place la logique applicative côté client, et de ne pas suffisamment verrouiller celle-ci côté serveur La majorité des risques de sécurité liés à Ajax proviennent d’implémentations légères côté serveur

Stormworm Un vers particulièrement complexe et destructeur. Utilisation d’un mix entre ingénierie sociale et polymorphisme rendant inefficace la détection. Un vers possédant des vecteurs d’infection en perpétuelle mutation. Le vers Stormworm a tout d’abord été envoyé par e-mail à différents utilisateurs. Il semblerait que les premières versions datent même de Janvier 2006 même si c’est surtout en Janvier 2007 que la vériable attaque a réellement commencé. Par la suite l’utilisateur se retrouve sur des pages web dont le contenu change toutes les heures, toutes les demi heures ou même parfois à chaque chargement de la page. Il s’agit d’un script javascript tentant d’executer automatiquement le malware. Le malware une fois installé utilise de nombreux autres vecteurs d’attaques tel que par exemple des technologies rootkit ainsi que des techniques de covert channel très intéressante mais ce n’est pas le sujet pour le moment. Nous pouvons voir et c’est très intéressant (du moins il faut essayer de le faire croire) que le malware utilise de très nombreuses et variées techniques d’ingénéries sociale. Ainsi l’utilisateur se retrouve a être hameconné lors de sa visite sur des sites pour adultes, lors de sa consultation des résultats de la NHL (ligue de hockey américaine) ou plus récemment à la réception d’un message du type : ‘Quelqu’un a flashé sur vous veuillez télécharger la petite carte que cette personne vous a très adorablement et amoureusement écrite’. Peu de défense existent à l’heure actuelle à moins de refuser le traffic peer2peer.

Stormworm Apparu en début d’année, ce vers utilise des fonctionnalités avancées, signe de la maturité croissante des codes malveillants. StormWorm est en effet divisé en plusieurs composants, chacun étant dédié à une tache précise : Backdoor, relais SMTP, sniffer d’adresses de messagerie, propagateur, module d’attaque DDoS, utilisation de peer to peer pour les mises à jour.

Mpack : Le piratage s’industrialise Programmé en PHP, adossé à une base de données MySQL, MPack a tout d'une application web traditionnelle. Il recense une librairie d’exploits visant les navigateurs qu’il est possible d’acheter (700$) et des mises à jour payantes existent Néanmoins, il n’intègre que les vulnérabilités publiées publiquement (metasploit, securityfocus) Donc alors MPACK se vends au prix de 700 $ même si il est possible d’avoir des versions de merde à partir de 350$. Le principe c’est qu’il est alors possible d’acheter de nouveaux exploits dessus pour la modique somme de 50 à 150$. Il s’agit surtout d’un agrégat de pages web contenant chacune des attaques publiques différentes ou l’utilisateur se retrouve redirigé selon Le navigateur qu’il utilise. Il semblerait qu’à l’heure actuelle plus de 10000 sites utilisent ce pack ce qui nous donne une idée de l’argent qu’on pu se faire les créateurs du malware. DEFENSE : D’après la créateur du MPACK le seul moyen d’être sur que l’on ne sera jamais infecté par le malware est d’utiliser Le navigateur opera en désactivant le javascript et les plugins.

Mpack Comme toute application « professionnelle », un suivi de statistiques existe Les statistiques fournissent le nombre de personnes infectées par pays

Mécanismes de défense Désactiver Javascript? Désactiver les plugins Se protéger de l’anti DNS Pinning: DNSWall et Proxy Naviguer sur des sites de confiance?

Technos XAML, nouveaux vecteurs d’attaque ? La technologie Silverlight de Microsoft utilise ce langage permettant de très nombreuses actions ainsi qu’une interaction accrue avec le système d’exploitation. Une exposition aux risques de sécurité accrue. L’accroissement de l’importance du rôle des navigateurs pose de nouveaux et nombreux problème de sécurité. Donc en fait on entends parler de ces technologies depuis 2004, mais c’est surtout maintenant que la véritable évolution de ces technologies va se produire. En fait Silverlight est surtout une alternative à flash en bien plus puissante. La puissance est ici un problème de sécurité étant donné que cela signifie que le script aura un éventail de possibilités beaucoup plus large. Pour le prouver notons que microsoft a inclus à Silverlight une classe entière d’API appellée ‘security’. Qui dit qu’un onglet sécurité est présent dit également qu’il sera mal utilisé par les créateurs de page web ce qui impliquera de nouvelles erreurs récurrentes sur ces pages. Le XAML est en langage basé sur XML ce qui les rends extrèmement pratique à écrire. Il devient alors un jeu d’enfant de réaliser des applications XAML fonctionnant un peu de manière évenementielle à la manière d’un programme VB ou C sharp. Nul doute que par le futur des techniques d’attaque venant abuser les navigateurs par le biais de Silverlight vont voir le jour. DEFENSE : dure à identifier à l’heure actuelle. Utiliser un logiciel comme NoScript sur Firefox qui bloque les scripts Silverlight.

Attaques indirectes Un lien sur un site web ou un ‘contenu actif’ type Ajax peut contenir une attaque déposée par un attaquant. C’est le visiteur du site web qui se retrouve alors à lancer l’attaque. Nombreux problèmes de responsabilité juridique. Cela signifie t’il qu’il suffit pour un attaquant de créer lui-même une page lançant une attaque et de surfer dessus pour revendiquer son innocence? Donc la c’est une attaque qui était déjà plus ou moins possible par le passé mais qui devient encore plus importante maintenant. Le slide représente bien les problématiques de cette attaque et je pense qu’il y a beaucoup de chose à dire dessus. DEFENSE : C’est mort ou alors faire que les navigateurs web vérifient si les connexions effectuées par une page web se cantonnent Bien au même site. Mais dans ce cas là cela veut il dire qu’on ne pourra plus aller sur d’autres site potentiellement hébergé sur Des ports arbitraires ;)

Questions

Cross Site Scripting Moyen détourné pour injecter du contenu dynamique (code client) au sein d’une page tierce: Possibilité d’en modifier le comportement, le contenu et de tromper l’utilisateur L’adresse de base de l’url est bien connue, pourtant la page ne réagira pas comme voulu à l’origine

Injection SQL Des paramètres « utilisateurs » sont repris directement dans le code de génération d’une page et envoyés à la base de données Il est donc possible de modifier la requête initialement prévue pour qu’elle réponde plus ou moins de résultat, voir plus d’informations et éventuellement exécuter des commandes sur le serveur de base de données