Autor: czy <[email protected]>
Quelle: http://www.nsfocus.net
Datum: 2003-09-03
(Beachten Sie, dass es am besten am besten ist, da das Forum einige Zeichen im Artikel verarbeitet
http://www.chinansl.com/czy/xmlhttp.txt Lesen Sie den Artikel
http://www.chinansl.com/czy/aspsky5.htm Testcode)
Ich glaube, Sie sind bereits mit Skriptangriffen im Cross-Standort vertraut, aber es gibt immer eine, wenn Sie Cookie bekommen.
FRAGE: Verwenden Sie immer Window.open, um ein Formular zu geben und dann Cookie zu senden. Dies ist also geheim
Es ist ein großer Rabatt. Früher habe ich mir eine InsertAdjacentHTML -Methode vorgestellt, um eine HTML -Anweisung in eine Webseite zu injizieren
Die Methode kann kaum zum Senden von Cookie ohne IE -Fenster verwendet werden, aber in der tatsächlichen Verwendung können IE -Fehler auftreten.
Gibt es keinen besseren Weg? In der Vergangenheit habe ich beim Untersuchung des automatischen Upgrades von VBS -Viren eine Microsoft.xmlhttp verwendet.
Steuerung (diese Kontrolle ist etwas mit standardmäßiger Win98/2k, und es ist die Kontrolle, die dh für sicher denkt!) Dadurch wir
Sie können HTTP -Anfragen an die Website auf der Webseite senden, entweder Post oder erhalten.
Ok, die Idee ist hierher gekommen. Nehmen wir ASPSY5.00320 als Beispiel.
Wir wissen, dass <imgsrc = "xxxxxx"> in SRC mit VBScript geschrieben werden kann:. . Zum Beispiel
<imgsrc = "vbscript: a = (msgbox (jetzt))">, aber wir können beispielsweise nur eine Anweisung ausführen
<imgsrc = "vbscript: a = (msgbox (jetzt)): b = (msgbox (now))"> Das ist falsch!
Was soll ich tun? In VBS können wir Ausführungsanweisungen verwenden. In JS können wir Eval!
Zum Beispiel: <imgsrc = "vbscript: execute (" a = (msgbox (jetzt)): b = (msgbox ("czy" ")") ")>
Oder <imgsrc = "javaScript: eval ('alert (/' nsfocus/'); alert (/' czy/')')">
Noch nicht schwindelig, oder? Wie oben können Sie feststellen, dass bei Verwendung der Execute -Anweisung von VBS Doppelzitate in "Dies liegt daran, dass:
In VBS müssen einzelne Zitate mit Zeichenfolgen eingeschlossen sein, zwei einzelne Zitate stellen ein und ein anderes Zitat und innerhalb von doppelten Zitaten dar!
In der Ausführungsanweisung können wir also keine einzelnen Zitate verwenden, sondern direkt verwenden ", wenn HTML Zitat übereinstimmt
Es entspricht den Zitaten nach Src = ", sodass wir stattdessen nur verwenden können.
Das Problem der Anführungszeichen wurde gelöst. In den tatsächlichen Anwendungen verarbeitet ASPSKY auch unseren Code:
1: Wenn Sie eine Skriptzeichenfolge finden, fügen Sie vor ihm einen Speicherplatz hinzu.
2: Wenn Sie die HTTP
3: Wenn Sie Räume finden, verwenden Sie sie stattdessen
Lösen Sie das Problem:
1: VBScript wird durch VBScript ersetzt
2: Verwenden Sie "" ht "" + "" tp ... stattdessen (es gibt mehr als ein Anwendungspaar in Zitaten und Anführungszeichen in VBS, + repräsentiert den Anschluss)
3: Verwenden Sie stattdessen Speicherplatz (Notiz nicht)
Am Ende ist es das Problem des Sendens von Cookie:
1: Die Steuerung kann eine Website lokal erhalten oder veröffentlichen, kann jedoch nur auf der Webseite verwendet werden.
Holen Sie sich den aktuellen Server. . . . Andernfalls würde er sagen, dass er sich weigern würde zu fragen!
2: Cookies können keine Zeichen mit besonderen Interaktionen in der URL haben
Lösen Sie das Problem: