XSS – Comment obtenir 20 liens.gov en 20 minutes

Je voudrais préfacer cette entrée en disant que SEOmoz ne pratique pas ou n’approuve pas les techniques de référencement blackhat. Ce n’est pas destiné à être un article pédagogique sur le référencement de blackhat ou une liste de sites Web dont vous devriez tous profiter. L’objectif de ce post est plutôt de « sortir » une faiblesse importante qui peut être exploitée par des utilisateurs avertis.

En lisant le récent article d’EGOL sur les liens gov, j’ai commencé à réfléchir aux moyens possibles d’acquérir de manière créative quelques liens .gov. Ainsi est née ma première incursion dans le monde de blackhat SEO. Il y a environ un an, j’ai entendu dire que les webmasters avaient tous peur parce que les utilisateurs malveillants pouvaient facilement placer du code HTML dans leurs boîtes de saisie de formulaire et manipuler le balisage sur leurs sites (alias XSS). J’étais curieux de savoir à quel point c’était difficile, alors j’ai décidé d’enquêter.

Après avoir exécuté une commande Yahoo site:, j’ai pu obtenir une liste de formulaires de recherche à partir de centaines de sites .gov. J’ai utilisé la barre d’outils du développeur Web pour convertir les méthodes de formulaire HTML de POST à GET, rendant les résultats de recherche liables, inséré quelques balises HTML dans les zones de recherche, et le tour est joué: J’avais 20 liens de sites Web .gov pointant vers mon site. Une fois ces pages créées, en théorie, tout ce que j’aurais à faire est de les lier à partir de divers autres domaines et ils finiraient par se faire espionner et commencer à transmettre l’amour du lien.

Dans la liste ci-dessous, je n’ai lié qu’à www.example.com (un domaine réservé à la documentation – RFC 2606) et utilisé le texte d’ancrage « Regardez, j’ai fait un lien » pour rendre les liens évidents à repérer. La liste ci-dessous montre les pages compromises:

  1. Agence de protection de l’Environnement
  2. Département du Commerce des États-Unis
  3. NASA – Celui-ci était un peu délicat, j’ai dû ajouter un balisage supplémentaire pour m’assurer que le code HTML rendu n’était pas mutilé. À la fin, j’ai réussi à obtenir un lien intégré dans une balise géante h1.
  4. La Bibliothèque du Congrès – J’ai même ajouté une image d’un minou portant un casque de pastèque
  5. US Securities and Exchange Commission
  6. Informations législatives officielles de la Californie
  7. Département du Travail des États-Unis
  8. Office of Defects Investigation – Leur site Web est la seule chose qui est défectueuse 🙂
  9. Instituts nationaux de la Santé
  10. Département de la Santé des États-Unis & Services à la Personne
  11. Secrétaire d’État du Missouri
  12. Département des Services de Santé de Californie
  13. Département du Commerce et de la Consommation d’Hawaï
  14. Recherche de la Bibliothèque d’astronomie IDL
  15. Département des États-Unis Trésor
  16. Législature de l’État de Californie
  17. Bureau de la Recherche extra-muros
  18. Base de données de ressources d’Information sur la santé (health.gov )
  19. Service postal des États-Unis J’ai dû parcourir quelques formulaires avancés avant d’en trouver un que je pouvais utiliser.
  20. Branche législative du Dakota du Nord

Bon nombre de ces URL ont fini par être très longues et noueuses, ce qui a peut-être réduit toute valeur qu’elles pourraient transmettre.

Je vois quelques solutions possibles au problème (en supposant que c’est un problème)

  1. Tous ces sites doivent être informés de l’exploit et commencer à valider la saisie du formulaire. Malheureusement, ce n’est qu’une liste rapide que j’ai dressée ce soir, je suis sûr qu’il existe des milliers (voire des millions) de sites vulnérables.
  2. Le SEs doit dé-valoriser les liens qui se trouvent sur une page de résultats de recherche de site (peut-être le font-ils déjà?). Ces exploits ne sont cependant pas limités aux résultats de recherche; vous pouvez le faire sur n’importe quel formulaire HTML qui ne validait pas correctement l’entrée.
  3. Le SES pourrait grandement déprécier les liens qui ne sont pas liés au reste du site. Ces pages injectées sont essentiellement des « flotteurs »: des pages qui ne sont liées à aucun endroit du site mais qui ont des liens externes entrants. Les SES le font-ils déjà?
  4. Dé-valorise les pages contenant du code HTML dans l’URL (codées et non codées), en particulier si elles contiennent des balises.
  5. Interdire l’indexation de tout formulaire via des robots.txt ou une balise meta. Encore une fois, cela nécessiterait un travail sur la partie webmasters .gov et les changements sont probablement effectués à la vitesse de la mélasse (en supposant que les départements Web du gouvernement fonctionnent aussi lentement que le reste).

Qu’en pensez-vous tous ? Ces liens injectés passeraient-ils l’amour du lien ou est-ce simplement quelque chose que les moteurs de recherche représentent déjà et qui n’est pas un problème?

SEO mis à part, cela pourrait également être utilisé pour les escroqueries par hameçonnage. Par exemple, un attaquant pourrait créer un faux formulaire de paiement sur le nasa.gov site Web demandant 100,00 $ pour une raison quelconque. Le formulaire serait ensuite POSTÉ sur un autre serveur, les données de paiement seraient stockées, puis elles seraient renvoyées à un autre exploité nasa.gov page avec un message « merci pour votre paiement ». L’utilisateur ne saurait jamais qu’il a été dupé – c’est pour le moins effrayant.

MISE À JOUR (de Rand): Nous avons initialement tiré ce post sur les préoccupations que cela pourrait déclencher des problèmes juridiques ou créer plus de problèmes qu’il n’a aidé à résoudre. Cependant, après consultation de plusieurs personnes, nous avons décidé que balayer le problème sous le tapis était plus préjudiciable que de le révéler à l’air libre.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.