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

WWW-E-MAIL-SCHNITTSTELLE

Da die in diesem Artikel diskutierten Methoden seit langem den erfahrenen Nutzern bekannt sind, werden jedoch Schwachstellen, die mit 100% garantieren, dass Hacken überall beseitigt werden, in erster Linie darauf ausgerichtet sind, die Anfänger mit den Prinzipien der Webmail-Arbeit (und ihrer Sicherheitsfehler) vertraut zu machen.

Betrachten wir persönlich das Prinzip, mit dem die Mailbox durch das WWW gehackt wird. Wir besitzen den Server www.po4ta.ru auch wir müssen in die Mailbox user@po4ta.ru kommen . Wir registrieren ein Konto auf diesem Bluetooth- Server test@po4ta.ru auch die Hauptbeschäftigung ist, die Einstellungen unserer neu gemachten Box einzugeben. Das interessanteste für uns ist die Option "Passwort ändern" , an welcher Stelle es vorgeschlagen wird, das neue Passwort einzugeben, bestätige es auch die Daten.

Passwort ändern
Geben Sie das neue Passwort ein:
Bitte versuchen Sie es erneut:


Der Code für eine solche HTML-Seite könnte so aussehen:

Hier ist change_pass.php ein Serverskript , das die Werte pass1, pass2 (Passwort mit Bestätigung), auch Benutzername (der Inhalt des ausgeblendeten Feldes, welches anzeigt, welches Feld das Passwort ändert)
Wenn Sie die entsprechende GET-Anfrage generieren, wird die folgende Zeile zurückgegeben:
Http://po4ta.ru/change_pass.php?username=test&pass1=NEW_PASSWORD&pass2 = NEW_PASSWORD

Fügen Sie nun diesen Link in die Adressleiste des aktuellen Fensters unseres Browsers ein und senden Sie die Daten auch an den Server. Als Ergebnis erhalten wir eine Benachrichtigung, dass das Passwort in der Box test@po4ta.ru erfolgreich geändert wurde. Und was ist, wenn wir versuchen, den Wert der Benutzernamen- Variable zu schreiben und das Passwort auf dem Feld zu ändern, an dem wir interessiert sind. Wir senden:
Http://po4ta.ru/change_pass.php?username= user & pass1 = NEW_PASSWORD & pass2 = NEW_PAROLE
Der Server wird wahrscheinlich eine Nachricht wie "Sie haben Zugriff auf Ressourcen, die Authentifizierung erfordern", auch TP. Dies bedeutet, dass change_pass.php , die die Anfragen verarbeitet, festgestellt hat, dass die auf der Festplatte an der Quelle der Arbeitssitzung mit der Mail geschriebenen Cookies dem Benutzer test@po4ta.ru entsprechen , aber in keiner Weise an user@po4ta.ru . Zusätzlich zu den Cookies kann die Benutzeridentifikation durch IP-Adresse oder einen speziellen ID-Schlüssel erfolgen, der später beschrieben wird.

So ist der Benutzer gezwungen, die Anfrage selbst zu senden, aus der Datei user@po4ta.ru . "Force" der Benutzer, dies zu tun, können Sie ihm eine Nachricht mit JavaScript-Code senden, wenn Sie erfinden, welche Daten automatisch an den Server mit seiner IP auch Cookies gesendet wird. Beispiele für diesen Code sind:

Oder nach der POST-Methode:

Alle Variablen werden in versteckten Feldern gesetzt, auch wenn der Benutzer den Mauszeiger auf den Körper unseres Briefes schwebt, aktualisiert der OnMouseOver Event Handler die Daten. Sie können den Prozess des Änderns des Passworts durch das Upgrade des Codes vollständig verbergen:



NACHRICHTEN TEXT


Eine Tabelle mit der Größe 1000x1000 erweitert den Umfang des onMouseOver-Handlers, aber das Zielattribut des Formular-Tags lädt das Ergebnis der Abfrage in den Nullrahmen zeroFrame ein, jetzt ist der Prozess vollständig aus dem Auge des Benutzers verborgen.


Vielleicht ist das, wie der Haupt-Mail-Server mit dem ersten WWW-Interface gearbeitet hat. Gegenwärtig ist es unmöglich, auf diese Weise eine Seife zu brechen. Erstens, auf den meisten Servern jetzt beim Ändern des Passworts, zusammen mit einem neuen, wird es vorgeschlagen, das alte Passwort einzugeben. Zweitens ist es schwierig, einen Mail-Server zu finden, mit dem Sie JavaScript in E-Mails auch angehängte Dateien ausführen können.

Postfilter

Dies sind Programme, die auf dem Server sind, verarbeiten eingehende Nachrichten, Ausschneiden oder Ändern des Codes, der die potentielle Gefahr in ihnen enthält. Also, zum Beispiel Skript, später könnte die Filterung Xscript oder scripX aussehen. Das gesamte Programm, das in diesem Fall im Skriptcontainer gefunden wird, wird vom Browser nicht interpretiert, wie wir geplant haben. Bypass-Filterung ist erlaubt oder durch die Suche nach dokumentierten Möglichkeiten zur Umsetzung unseres Codes, nicht berücksichtigt von den Entwicklern des Post-Systems, oder durch Verstecken, dann essen den Code in einem modernisierten, nicht erkannt für die Filter-Formular.
Lassen Sie uns andere Wege zur Erfüllung der Abfrage in der vorherigen Probe gegeben.


Das Ergebnis der Änderung der Einstellung wird in einen unsichtbaren Rahmen geladen. Wirksame Weise, aber auf den meisten Postdiensten ist bereits abgedeckt.



Anstelle der Adresse des Bildes wird die Adresse der Konfiguration mit einer Passwortänderung geladen. Es funktioniert nicht, wenn der Benutzer die Grafiken in seinem Browser deaktiviert. Passt gut auf die meisten Server. Aber auf einigen, auf die Probe www.rambler.ru , wird die URL über eine spezielle Anwendung umgeleitet / http: //po4ta.ru/change_pass.php? Benutzername = user & pass1 = NEW_PASSWORD & pass2 = NEW_PAROLE hochgeladen




Die angegebene URL wird nach Ablauf der Pore X (sec) geladen. Dieses Tag arbeitet derzeit auf www.hotbox.ru

Andere Schwachstellen

Erforschung der Einstellungen von Postfächern auf verschiedenen Seifenservern, zusätzlich zum Ändern des Passworts ohne Bestätigung, ist es möglich, viele weitere grundlegende Nachteile zu finden, mit denen es erlaubt ist, eine andere Box zu übernehmen, Nachrichten zu lesen oder zu löschen usw. Kommen wir zu unserer Post auf www.po4ta.ru zurück . Wir bekommen die Option "Weiterleitung" . Wir werden gebeten, eine oder mehrere Adressen einzugeben, an die Briefe gesendet werden.



Wenn wir in der E- Mail- Adresse die Weiterleitungsadresse test1@po4ta.ru angeben, bestätigen wir auch die Änderung der Einstellungen durch Anklicken der Schaltfläche "Speichern", die Seite wird mit dem neuen Formular geladen:



Damit die Änderungen wirksam werden, müssen Sie einen Bestätigungscode eingeben, der per Nachricht an test1@po4ta.ru gesendet wird . So können wir alle eingehenden Korrespondenz des interessanten Nutzers für uns erwerben, wenn wir ihm abwechselnd ein paar HTML-Briefe schicken, von denen die wichtigste eine Art von Weiterleitungseinstellung ist, aber in der anderen eine Bestätigung mit einem speziellen Code, der uns bekannt ist. Dieses Schema des "Zuhörens" zu jemand anderem Postfach ist ein wenig umständlich, aber viele Versionen des Postdienstes, die kein Passwort für die Einrichtung der Nachrichtenumleitung benötigen, wurden beibehalten.

Die nächste signifikante Lücke in der Sicherheitspolitik der Postdienste ist die Änderung der geheimen Aufgabe, sowie Einwände, wenn diese Operation nicht durch Passwortbestätigung geschützt ist. Wir können den Benutzer von seinem Postfach abschneiden, die bereits bekannten Daten aktualisieren, aber dann mit dem Passwort Erinnerungsdienst, um Ihr Passwort zu setzen.

Häufiger, nur durch Drücken einer Taste, bei einigen Mailern wird das Benutzerkonto gelöscht. Ein typisches Beispiel ist www.yandex.ru . Das Passwort wird aufgefordert, das Feld zu löschen, aber das Passwort ist nicht erforderlich, um den konjugierten Dienst zu löschen - die Website * .narod.ru. Grundsätzlich ist es erlaubt, die Seite des Opfers mit seinem Postfach zu löschen, indem du die Anfrage ausführt: http://narod.yandex.ru/registration/unlogin.xhtml?DeleteLogin=%C4%E0 , die sich im IMG-Tag verstecken darf

Eine unbefugte Änderung anderer Einstellungen stellt jedoch auch ein deutlich geringeres Risiko dar, kann aber indirekt die Erfassung der Mailbox beeinflussen
Persönliche Daten bearbeiten (Name, etc.)
Kontaktinformationen bearbeiten
Filter installieren
Löschen XXXX
E-Mail als Benutzer senden
Installiere den POP3 Kollektor

ID-KEY

In der Quelle des Artikels haben wir eine Reservierung gemacht, dass in manchen Fällen eine symbolische Kennung verwendet wird, wenn es möglich ist, mit Mail zu arbeiten, ist es erlaubt, in der Adressleiste des Browsers zu sehen:



Die Einführung eines solchen Systems erlaubt es uns nicht, eine Standardabfrage trotzdem auszuführen, da die ID bei jedem neuen Eintrag in das Postfach erzeugt und auch nach dem Ende der Sitzung durch Drücken der Schaltfläche "Beenden" zerstört wird. Wenn die Sitzung jedoch fehlerhaft beendet ist, können Sie die Kennung wiederverwenden.
Dies ist einfach zu überprüfen, indem man die Adresse in die Zwischenablage kopiert, das Fenster schließt und es in die Adressleiste des neuen Fensters einfügt - wir sind wieder in unserer Box. Nun, wenn eine IP-Adresse nicht auf einen ID-Schlüssel abgebildet ist (ein anderer Schutztyp), so ist es auch erlaubt, in die Schatulle eines anderen Benutzers einzudringen, denn es genügt es, das Standortfeld abzufangen, indem man in unserer Nachricht ein Tag einfügt, das eine Anforderung an den html-sniffer sendet , Protokolliert die Variable HTTP_REFERER in einer speziellen Datei. Die genialste Art, wie gewöhnlich, ist, die Adresse des Schnüffels als Gegenleistung für das angebliche Bild anzugeben:



Protokolldatei - http://zero.h12.ru/stat/base.txt
Ein paar weitere Adressen schnüffeln auf dieser Seite. In der Klasse selbst, schreiben ein Skript, das Spuren von welcher Adresse es empfängt eine Anfrage-Besetzung fünf Minuten, ist es viel schwieriger, ein Hosting für seine Platzierung zu finden. Ein Beispiel für ein solches Skript auf PHP:



Als nächstes betrachten Sie die Situation zu welcher Zeit eine Ausländer-ID für uns ist nutzlos aufgrund der Tatsache, dass es in Übereinstimmung mit der Benutzer-IP-Adresse gesetzt ist. Kehren wir zu dem System zurück, zu welcher Zeit der Benutzer selbst, mit seinem IP, die Einstellungen der Box ändert, indem er unseren Brief öffnet. Angenommen, wir essen diese Option Blockieren Sie alle eingehenden E-Mails , auch wir möchten sie auf jemandes Box aufnehmen.



Die Kennung wird im versteckten Feld "id" gesendet, also jetzt, um die Einstellungen zu ändern, musst du es auch in Echtzeit bekommen, um es auch zu ersetzen. Das erste, was in den Sinn kommt, ist JavaScript. In ihm ein spezialisiertes Standortobjekt zu essen, enthält es auch die URL des aktiven Aktes. Um unsere Kennung aus dem Speicherort zu erhalten, verwenden Sie die Funktion substr () .



Direkt substr () mit location funktioniert nicht, also fügen wir das symbol # zu ihr hinzu, ordnen sie einer variablen zu, aber dann geben wir das ergebnis der berechnung in eine andere variable ein, dann essen wir den cut ID-key. Argumente substr (): x-position von der Quelle der Zeichenfolge, x1-Position aus x. In der Zeile http://www.newpochta.ru/session?id=a349f8d7be67c90af8873fc7ad803cf5&folder=inbox beginnt die Kennung von der 36. Position und hat auch 32 Symbole, so dass das Argument die Form substr (36, 32) annimmt;

Ein weiteres Mittel, um eine ID zu erhalten, ist wieder, das Skript auf deinem Host zu verwenden. Wir schreiben in der Datei:




ONE WIEDER ÜBER FILTER

Wenn auf der Web-Schnittstelle mit Cookie-Identifizierung wir Standardanforderungen für die Änderung von Einstellungen, wir könnten auch einfache HTML-Tags, dann, wenn Sie mit ID-Tasten arbeiten, eine direkte Notwendigkeit, JavaScript-Code in die E-Mail einführen, aber die Entwickler von Mail-Server überlappen diese Möglichkeit mit Filtern, Über sie wurde oben gesprochen. Sprechen wir jetzt über Möglichkeiten, diese Filter zu verkaufen. Nutzen Sie nicht ganz die üblichen Methoden, die Programmierer oft übersehen:



In der Tat, JS hier "versteckt" in den Werten der Attribute von Tags, die mit der URL arbeiten und wird auch dynamisch generiert, wenn die angegebene Adresse geladen wird.

Manchmal ist der Filter erlaubt zu betrügen, versteckt das System von bösartigen html ein wenig, so auf www.mail.ru innerhalb eines Tags ist erlaubt, die JS Event-Handler zu implementieren. Im Nominalmodus ist die Leitung



Wenn du aber den Abstand zwischen dem Wert des Attributs und dem Handler entfernt hast, überspringt der Filter eine solche Konstruktion:



Der Fehler dieser Methode ist, dass bis zu einem gewissen Grad gibt es eine Bindung an einen bestimmten Browser, denn manchmal haben sie eine andere Interpretation des HTML-Codes.
Der nächste wichtige Punkt ist, wie man den Brief sendet. Wenn Sie eine HTML-Datei anhängen, wird die Integrität der Nachricht im Anhang beibehalten, aber im Text der Nachricht werden die gewünschten Parameter nicht in irgendeiner Weise angezeigt. Deshalb ist es sinnvoll, HTML-Format zu senden. Diese Funktion wird von einigen WWW-Schnittstellen auch von Mailprogrammen POP3 unterstützt. Im Nachrichtenmanager bewegt sich das Symbol der angehängten Datei nicht in der Nähe der Nachricht.

SCHLUSSFOLGERUNGEN ERGEBNISSE

Also, nachdem ich ein Ziel gesetzt habe, in eine fremde Mailbox einzudringen, ist es zunächst notwendig, das System auf das Vorhandensein von Schwachstellen zu untersuchen. Manchmal erlauben Programmierer erhebliche Fehler beim Schreiben von Skripten. Etwa jeder Service hat die Aufgabe, vergessene Passwörter zu erneuern. In der Regel auf der ersten Seite geben Sie eine Anmeldung, für einen anderen Einwand gegen eine geheime Aufgabe, aber auf der dritten, wenn die Antwort richtig ist - ändern Sie das Passwort. Lassen Sie uns sagen, dass es ein ernstes Sicherheitsloch auf dem System von Interesse für uns gibt, aber es ist genau: Wir haben richtig auf die geheime Aufgabe geantwortet, eine neue Seite mit einem Passwortänderungsformular wurde generiert, aber als wir das HTML dieser Seite betrachteten, fanden wir heraus, dass die Anerkennung des Benutzers nur auf einer Variablen im Feld stattfindet "Benutzername", nämlich, einen anderen Benutzernamen zu ersetzen, ändern wir das Passwort in jemand anderes Box. Entweder diese Variation: Im Gegenzug für einen korrekten Einwand, wird eine Kennung ähnlich der, die während der Arbeitssitzung mit der Post verwendet wird, ausgegeben. Vielleicht, nachdem ich den aktuellen ID-Schlüssel auch durch den Einsatz in versteckten Feldern erhalten habe, wird der Server die neuen Einstellungen akzeptieren. Ich denke, es ist absurd, auf solche Auslassungen zu hoffen, weil es streng überwacht wird, und ähnliche Fehler werden nicht wiederholt. Deshalb suchen wir nach Schwachstellen im Prinzip der Serviceorganisation.

Wenn Sie die Web-Mail auf www.newmail.ru (nm.ru, pochta.ru, orc.ru, nightmail.ru, hotmail.ru) genau anschauen , dann gibt es solche Mängel einmal dort. Lassen Sie uns wieder auf die Option, das Passwort zu erneuern. Es wird vorgeschlagen, eine geheime Aufgabe zu beantworten, auch wenn die Antwort fehlerfrei ist - das Passwort wird an die in den Einstellungen angegebene E-Mail gesendet. Und obwohl die Antwort ist auch E-Mail sind auf verschiedenen Seiten in der Mail, es scheint möglich, auch die anderen ändern, desto mehr der Filter nicht einmal ausschneiden JavaScript. Zusätzlich zu allen, wenn das Passwort wieder aufgenommen wird, wird ein anderes Formular ausgegeben, es muss eingegeben werden, da mehr Daten erlaubt sind (sie sind so gut in den Box-Einstellungen) und senden sie auch an das Lineal. Wie man dem Benutzer gerade vorzuweisen ist, ist bereits bekannt.

Natürlich ist bei den meisten Postangestellten alles verstopft, aber Schlupflöcher sind immer bereit zu essen. Und wenn es ein großes Interesse oder Notwendigkeit für die Durchdringung in die Benutzerbox, dann immer mehr Informationen darüber und die Entwicklung einer Art von "strategischen" Schema aus den Methoden in diesem Artikel präsentiert wird, ist es erlaubt, gute Ergebnisse zu erzielen.
Hier sind echte Beispiele. Ein Angreifer möchte ein Passwort von einem bestimmten Dienst bekommen, den das "Opfer" nutzt (nicht unbedingt Mail, zB Hosting). Gleichzeitig weiß er zuverlässig, dass das vergessene Passwort an user@pisem.net gesendet wird. Er schickt eine Nachricht an diesen Segenkasten mit html-Tags:





Nach dem Löschen des Kontos registriert er eine neue, mit diesem guten Namen auch ein Passwort für sie.

Die Möglichkeit, mit einem so guten Zweck auch auf das Konto auf mail.ru zu durchdringen, ist erhalten geblieben. Sicherheitseinstellungen mit einer Nachricht deaktivieren



Nun wird bei jedem nachfolgenden Aufruf der Benutzer einen ID-Schlüssel erhalten, und die IP-Adresse wird jedoch nicht berücksichtigt, wie bereits erwähnt, wenn man ihn mit Hilfe eines Sniffer abfängt, dann ist es nicht schwer, innen zu sein, um den notwendigen Brief zu lesen.

Abschließend möchte ich noch einmal erwähnen, dass die hier skizzierten Informationen seit langem mehr oder weniger buchstäblichen Nutzern bekannt sind. Es ist auch alles gute Ansatz, um durch die html zu hacken, meiner Meinung nach auch heute entfremden mehr Ergebnisse als BrutFors oder Social Engineering. Du brauchst nur nur ein schwaches Zimmer und auch einen Weg, es zu benutzen.