2017-09-24 3 views
2

Ich versuche, die Cross-Site-Skript-Aufnahme zu verstehen. Ich habe das Papier von Sebastian Lekeis (click here for paper und slide und video link) gelesen und habe eine Idee davon bekommen. Hier ist das Erfassen von dynamischem Javascript ein Teil der Methodik und ich habe hier etwas Verwirrung.Detektieren dynamisches Javascript für XSSI

Was genau bedeutet es durch dynamische JavaScript-Erkennung. Hier wird gesagt, dass dieselbe Skriptdatei zweimal angefordert würde. eines mit Authentifizierung und eines ohne. aber meine Verwirrung ist, wenn ich anfrage script.js Datei zweimal, wie kann es abweichen. Der Server sendet immer die Datei mit der gleichen Codezeile. ist es nicht .. ??

Nach dem Abrufen der Skriptdatei wird der Browser die Datei ausführen, und wenn sie fertig ist, kann sie sich voneinander unterscheiden.

suppose,

$http.get("home/GetInfo", function(response){ 
    $scope.userName = response; 
}); 

hier $scope.userName Wert abweichen kann, aber die Skriptdatei wird gleich bleiben.

Was ist falsch in meinem Verständnis ..?

Antwort

0

Dynamisches JavaScript ist, wo die Skriptdatei vom Server verarbeitet wird, um Werte basierend auf Cookies usw. einzufügen, bevor sie an den Client gesendet werden. Dies wird manchmal verwendet, um einige Anfangsdaten an den Client zu übergeben.

So könnten die Skriptdatei Inhalte wie:

sessionId = "<%= getSessionId() %>"; 

$http.get("home/GetInfo?sessionId="+sessionId, function(response){ 
    $scope.userName = response; 
}); 

und wenn es anfordert, bekommt man so etwas wie:

sessionId = "d8e8fca2dc0f896fd7cb4cb0031ba249"; 

$http.get("home/GetInfo?sessionId="+sessionId, function(response){ 
    $scope.userName = response; 
}); 

Die sessionId wörtlich das Skript angefordert jedes Mal anders sein würde, die Wenn erkannt, wird angezeigt, dass dynamisches JavaScript verwendet wurde.

+0

aber dies ist nicht .js-Datei. Es kann .jsp oder .cshtml oder etwas ähnliches sein. also ist es keine js-datei, wie kann ich die skript-datei zweimal anfordern, wie das papier sagt (mit und ohne authentifizierung) ?? –

+0

@SadidKhan Sie haben js-Dateien gefunden, die basierend auf den Cookie-Werten unterschiedlich generiert wurden. Zuerst loggten sie sich auf der Seite ein und verfolgten den Inhalt jeder js-Datei. Dann haben sie dieselben Dateien erneut angefordert, ohne dass Cookies aktiviert wurden. Sie haben eine benutzerdefinierte Erweiterung verwendet, aber Sie können das gleiche Ergebnis erzielen, indem Sie sich zwischen Anfragen manuell zwischen der Site an- und abmelden. – fgb

Verwandte Themen