background preloader

Cross-site scripting

Cross-site scripting
Un article de Wikipédia, l'encyclopédie libre. Le cross-site scripting est abrégé XSS pour ne pas être confondu avec le CSS (feuilles de style)[1], X se lisant « cross » (croix) en anglais. Définition[modifier | modifier le code] Le terme cross-site scripting n'est pas une description très précise de ce type de vulnérabilité. « Le problème n'est pas simplement le 'scripting', et il n'y a pas forcément quelque chose entre plusieurs sites. — Mark Slemko, « Cross Site Scripting Info », sur The Apache HTTP Server Project,‎ février 2000 Le principe est d'injecter des données arbitraires dans un site web, par exemple en déposant un message dans un forum, ou par des paramètres d'URL. La détection de la présence d'une faille XSS peut se faire par exemple en entrant un script Javascript dans un champ de formulaire ou dans une URL : <script type="text/javascript">alert('bonjour')</script> Risques[modifier | modifier le code] Types de failles XSS[modifier | modifier le code]

Attaque par déni de service Un article de Wikipédia, l'encyclopédie libre. Une attaque par déni de service (denial of service attack, d'où l'abréviation DoS) est une attaque informatique ayant pour but de rendre indisponible un service, d'empêcher les utilisateurs légitimes d'un service de l'utiliser. Il peut s'agir de : l’inondation d’un réseau afin d'empêcher son fonctionnement ;la perturbation des connexions entre deux machines, empêchant l'accès à un service particulier ;l'obstruction d'accès à un service à une personne en particulier. L'attaque par déni de service peut ainsi bloquer un serveur de fichiers, rendre impossible l'accès à un serveur web ou empêcher la distribution de courriel dans une entreprise. Les attaques en déni de service se sont modifiées au cours du temps (voir historique). Tout d'abord, les premières n'étaient perpétrées que par un seul « attaquant » ; rapidement, des attaques plus évoluées sont apparues, impliquant une multitude de « soldats », aussi appelés « zombies ». Par exemple :

XSS - Cross-Site Scripting Injection de code malicieux Les attaques de type Cross-Site Scripting (notée parfois XSS ou CSS) sont des attaques visant les sites web affichant dynamiquement du contenu utilisateur sans effectuer de contrôle et d'encodage des informations saisies par les utilisateurs. Les attaques Cross-Site Scripting consistent ainsi à forcer un site web à afficher du code HTML ou des scripts saisis par les utilisateurs. Le code ainsi inclus (le terme « injecté » est habituellement utilisé) dans un site web vulnérable est dit « malicieux ». Il est courant que les sites affichent des messages d'information reprenant directement un paramètre entré par l'utilisateur. L'exemple le plus classique est celui des « pages d'erreur 404 ». Ainsi, si aucun contrôle n'est effectué sur le contenu fourni par l'utilisateur, il est possible d'afficher du code HTML arbitraire sur une page web, afin d'en changer l'aspect, le contenu ou bien le comportement. Conséquences Persistance de l'attaque Exemple Attaque croisée

Empoisonnement du cache DNS Un article de Wikipédia, l'encyclopédie libre. L'empoisonnement du cache DNS ou pollution de cache DNS (DNS cache poisoning ou DNS cache pollution en anglais) est une technique permettant de leurrer les serveurs DNS afin de leur faire croire qu'ils reçoivent une réponse valide à une requête qu'ils effectuent, alors qu'elle est frauduleuse. Une fois que le serveur DNS a été empoisonné, l'information est mise dans un cache, rendant ainsi vulnérable tous les utilisateurs de ce serveur. Ce type d'attaque permet, par exemple, d'envoyer un utilisateur vers un faux site dont le contenu peut servir à de l'hameçonnage (dans le cas du DNS, on parle de pharming) ou comme vecteur de virus et autres applications malveillantes. Un ordinateur présent sur Internet utilise normalement un serveur DNS géré par le fournisseur d'accès. Introduction[modifier | modifier le code] Cette technique peut être employée pour substituer un contenu, que les victimes s'attendent à obtenir, par un autre contenu.

Vulnérabilité de type « Cross Site Scripting » Affaire suivie par : Objet : Vulnérabilité de type « Cross Site Scripting » Une gestion de version détaillée se trouve à la fin de ce document. Une vulnérabilité de type Cross Site Scripting, injection de code indirecte en français, est exploitable sur les serveurs web ou sur les applications web qui publient du texte fourni par le visiteur sans l'avoir filtré. Le terme anglais Cross Site Scripting est abrégé en XSS car l'acronyme CSS est déjà utilisé dans le monde du web pour Cascading Style Sheet. Les vulnérabilités de type Cross Site Scripting sont apparues lors de la généralisation de l'usage des langages de script dans les pages web. Depuis, leur exploitation s'est diversifiée et concerne toutes sortes de services (webmails, enchères en ligne, forums...). 3.1 Moteur de recherche d'un serveur web Cet exemple est extrêmement fréquent. Dans ce cas, un serveur web propose un formulaire de recherche à ses visiteurs. 14 documents trouvés pour la recherche de CERTA. sujet : du texte anodin

Zero day Un article de Wikipédia, l'encyclopédie libre. Le terme 0 day ou Zero day (en français « jour 0 ») peut être interprété de différentes manières : Dans le domaine de la sécurité informatique, une vulnérabilité zero-day est une vulnérabilité d'un produit qui est soit inconnue du fournisseur du produit, soit qui ne dispose pas de correctif approprié. Une exploitation 0 day est susceptible d'engendrer la création d'un ver car, par définition, la grande majorité des utilisateurs ne sera pas protégée contre cette faille jusqu'à ce qu'elle soit découverte et corrigée ;Dans le domaine de la contrefaçon numérique, on parle de 0 day lorsqu'un logiciel, film ou toute autre œuvre protégée est mis à disposition avant sa distribution légale, ou le jour de sa diffusion.

Injection SQL De nombreux développeurs web ne sont pas conscients des possibilités de manipulation des requêtes SQL, et supposent que les requêtes SQL sont des commandes sûres. Cela signifie qu'une requête SQL est capable de contourner les contrôles et vérifications, comme les identifications, et parfois, les requêtes SQL ont accès aux commandes d'administration. L'injection SQL directe est une technique où un pirate modifie une requête SQL existante pour afficher des données cachées, ou pour écraser des valeurs importantes, ou encore exécuter des commandes dangereuses pour la base. Cela se fait lorsque l'application prend les données envoyées par l'internaute, et l'utilise directement pour construire une requête SQL. Les exemples ci-dessous sont basés sur une histoire vraie, malheureusement. Avec le manque de vérification des données de l'internaute et la connexion au serveur avec des droits de super utilisateur, le pirate peut créer des utilisateurs, et créer un autre super utilisateur. <?

Botnet Un article de Wikipédia, l'encyclopédie libre. Un botnet (de l'anglais, contraction de « robot » et « réseau ») est un réseau de bots informatiques, des programmes connectés à Internet qui communiquent avec d'autres programmes similaires pour l'exécution de certaines tâches. Historiquement, botnet désignait des réseaux de robots IRC. Le sens de botnet s'est étendu aux réseaux de machines zombies, utilisés pour des usages malveillants, comme l'envoi de spam et virus informatiques, ou les attaques informatiques par déni de service (DDoS). Usage légitime[modifier | modifier le code] Il existe d'autres usages légitimes de botnets, comme l'indexation web : le volume des données à explorer et le nécessaire usage de parallélisation impose l'usage de réseaux de bots. Dérives et usages malveillants[modifier | modifier le code] En 2007, Vint Cerf considérait qu'un ordinateur sur quatre faisait partie d'un botnet[6]. Usages principaux des botnets malveillants[modifier | modifier le code]

Injection SQL Un article de Wikipédia, l'encyclopédie libre. Exemple[modifier | modifier le code] Considérons un site web dynamique (programmé en PHP dans cet exemple) qui dispose d'un système permettant aux utilisateurs possédant un nom d'utilisateur et un mot de passe valides de se connecter. Ce site utilise la requête SQL suivante pour identifier un utilisateur : SELECT uid FROM Users WHERE name = '(nom)' AND password = '(mot de passe hashé)'; L'utilisateur Dupont souhaite se connecter avec son mot de passe « truc » hashé en MD5. SELECT uid FROM Users WHERE name = 'Dupont' AND password = '45723a2af3788c4ff17f8d1114760e62'; Attaquer la requête[modifier | modifier le code] Utilisateur : Dupont' --Mot de passe : n'importe lequel La requête devient : SELECT uid FROM Users WHERE name = 'Dupont' -- ' AND password = '4e383a1918b432a9bb7702f086c56596e'; SELECT uid FROM Users WHERE name = 'Dupont'; L'attaquant peut alors se connecter sous l'utilisateur Dupont avec n'importe quel mot de passe. SELECT ...

Dans la peau d’un hacker black hat Robert Hansen, du site WhitehatSec a mis en ligne sur son blog, une interview passionnante. Durant plusieurs jours, il a eu l'occasion d'échanger avec un black hat, c'est à dire un hacker qui pratique son art illégalement essentiellement pour l'argent. Il a pu lui poser toutes les questions qu'il avait en tête et ainsi mieux connaitre l'envers du décor. J'ai trouvé intéressant de vous la retranscrire ici en français. Ces dernières années, je me suis efforcé de me mettre à l’écoute de la "communauté black hat". La plupart du temps, malgré leurs réticences, mes interlocuteurs dans le domaine de la sécurité informatique ont conscience de l’utilité d’un dialogue avec les cybercriminels. Je crois au contraire qu’il est extrêmement important que les experts en sécurité informatique maintiennent un dialogue ouvert avec la communauté black hat. Un "black hat", qui a choisi le pseudonyme Adam, et avec qui j’ai beaucoup discuté, a récemment déclaré vouloir rentrer dans le droit chemin. 1. 2. 1.

Reseaux-telecoms ANSSI

Related: