In diesem Artikel erhalten Sie die erforderlichen Informationen aus der Anwendung, um zu wissen, was die Angriffsseite tun soll, um gültige Anforderungen an den schutzbedürftigen Server zu senden. Anschließend erstellen Sie eine Seite, die die legitimen Anforderungen simuliert und den Benutzer dazu bringt, diese Seite zu besuchen, während sie authentifiziert sind. Sie werden auch ein paar Iterationen zum grundlegenden Proof of Concept durchführen, damit es eher wie ein realer Angriff aussieht, bei dem das Opfer es nicht bemerkt. Beachten Sie, dass die Codedatei für diesen Artikel im GitHub des Autors gefunden werden kann.
In Bodgeit benötigen Sie für diesen Artikel ein gültiges Benutzerkonto. Dieser Artikel verwendet [email protected]
Als Opfer:
Wie es geht…
Zuerst müssen Sie die Anfrage analysieren, die Sie zum Opfer zwingen möchten. Dazu benötigen Sie Burp Suite oder einen anderen im Browser konfigurierten Proxy:
Also ist es ein POST
Anfrage zu http: // 192.168.56.11/Bodgeit/Passwort.JSP,
und hat nur das Passwort und seine Bestätigung im Körper.
CSRF-Veränderungswort.html
) mit dem folgenden Inhalt: CSRF-Veränderungsword-Schriften.html
: Dieses Mal hat das Formular einen ID -Parameter und auf der Seite befindet sich ein Skript, das seinen Inhalt übermittelt, wenn die Seite vollständig geladen wird.
Beachten Sie, wie die Zieleigenschaft des Formulars der Iframe ist, der knapp darunter definiert ist und dass ein solcher Rahmen 0%Höhe und Breite hat.
Wenn Sie eine Anfrage von einem Browser senden und bereits einen Cookie zur gespeicherten Zieldomäne haben, wird der Browser das Cookie an die Anfrage angeschlossen. Dies macht Cookies so bequem wie Sitzungskennungen, aber dieses Merkmal, wie HTTP funktioniert.
Wenn Sie eine Seite im selben Browser laden, auf dem Sie eine aktive Sitzung in einer Anwendung haben. Dies geschieht auch, wenn es sich um ein anderes Registerkarte oder ein anderes Fenster handelt. Diese Seite stellt eine Anfrage an die Domain, in der die Sitzung eingeleitet wird.
Wenn der Server nicht überprüft, ob die Anforderungen, die er empfängt, tatsächlich in der Anwendung stammt, ermöglicht es einer böswilligen Site, im Namen legitimer, aktiver Benutzer, die diese böswillige Website besuchen, Anrufe zu tätigen, während sie sich der Zieldomäne authentifiziert haben.
In einem Webanwendungs -Penetrationstest, dem ersten Code, den Sie verwendet haben, den mit den beiden Textfeldern und die Einreichen Taste, kann ausreichen, um das Vorhandensein eines Sicherheitsfehlers zu demonstrieren. Die Penetrationstests der Anwendung kann jedoch Teil eines anderen Engagements sein, z. In diesem Fall sind einige zusätzliche Anstrengungen erforderlich, um zu verhindern, dass der Opferbenutzer vermutet, dass etwas passiert.
In diesem Artikel haben Sie JavaScript verwendet, um das Senden der Anforderung zu automatisieren, indem Sie das Onload -Ereignis auf der Seite festlegen und die Subulationsmethode des Formulars in der Veranstaltungshandlerfunktion ausführen. Sie haben auch ein verstecktes Iframe verwendet, um die Antwort der Passwortänderung zu laden. Das Opfer sieht also nie die Nachricht, dass sich sein Passwort geändert hat.
Wenn Sie diesen Artikel interessant fanden, können Sie erkunden Kali Linux Web -Penetrationstestkochbuch - zweite Ausgabe Um die häufigsten Webanfälligkeiten für Web zu entdecken und zu verhindern, dass sie eine Bedrohung für die Sicherheit Ihrer Website werden. Kali Linux Web -Penetrationstestkochbuch - zweite Ausgabe gibt Ihnen die Fähigkeiten, die Sie benötigen, um jede Phase eines Penetrationstests abzudecken - vom Sammeln von Informationen über das System und die Anwendung bis hin zur Identifizierung von Schwachstellen durch manuelle Tests.