Selbst die Webressourcen bekannter Organisationen sind nicht vor Fehlern von Kindern geschützt.

Haftungsausschluss. Alle Veranstaltungen fanden 2017 statt. Alle im Artikel angegebenen Schwachstellen wurden den Unternehmensvertretern so bald wie möglich ab dem Zeitpunkt ihrer Entdeckung gemeldet. Einige Ressourcen für 2019 wurden vollständig aktualisiert (Frontend und Backend).
Der Artikel ist rein informativer und lehrreicher Natur.

Beim Durchlaufen der alten Ordner stieß ich auf die gespeicherten Screenshots, die ich für Vertreter einiger berüchtigter Unternehmen in unserem Finanz-IT-Markt erstellt hatte.
Alles begann mit der Tatsache, dass ich mich entschied, mein Arbeitsprofil zu ändern und mich in einer Qualitätssicherung oder einem verwandten Beruf zu versuchen, aber nicht als autodidaktischer Einzelgänger, sondern dies in den Mitarbeitern einer großen Organisation zu tun, damit ich jemanden hatte, von dem ich lernen und als Team arbeiten konnte ...

Nachdem ich den Lebenslauf veröffentlicht hatte, kreuzte Sberbank Technologies, die Bank of Discovery, über die eine kleine Geschichte erzählt wird, mit mir.

Nach der Einladung zum Chatten entschied ich mich zu sehen, was in den Domänen von Unternehmen für interessante Schwachstellen lebt. Es ist immer schön, bei den Verhandlungen einen Trumpf im Ärmel zu haben.

Sberbank


Die Sberbank ist hauptsächlich mit Russland verbunden, hat jedoch Niederlassungen in anderen Ländern. Deshalb habe ich mich für den „einfachen“ Weg entschieden. Fast nach einigen Versuchen wurden zwei passive XSS-Schwachstellen in der Weboberfläche der belarussischen Sberbank gefunden.

Der erste Fehler der Kinder besteht darin, die vom Benutzer eingehenden Daten nicht zu überprüfen. Infolgedessen Cross-Site-Scripting im Suchfeld und Anmeldeformular für Sberbank Online.





Ein separater Punkt im Sberbank Online-Anmeldeformular ist, dass die Skripte auf dem Webserver meine GET-Anfrage erfolgreich verarbeitet haben, obwohl das Formular Werte über POST übertragen hat.

Ich habe mich auch für die Domain entschieden, von der aus HR Sberbank mir geschrieben hat. Es stellte sich heraus, dass es sich um das Portal „Sberbank Talents“ handelte.

Nachdem ich verschiedene Formulare und versteckte Felder gequält hatte, bekam ich nichts Gutes, außer dass sich das Portal unter ASP.NET dreht.

Nachdem ich die Quelle der HTML-Hauptseite noch einmal überprüft hatte, stellte ich fest, dass alle JS- und CSS-Dateien über ein Skript bereitgestellt werden, das die in der GET-Anforderung angegebenen Dateien kombiniert und komprimiert.

Der zweite Fehler der Kinder besteht darin, die Liste der Dateien / Verzeichnisse, die vom Server heruntergeladen werden können, nicht auf die weiße Liste zu beschränken.





Als Ergebnis erhielt ich Zugriff auf die Webserver-Konfigurationsdatei. Außerdem zu einer interessanteren Protokolldatei, in der sowohl Kennwörter von SQL als auch von anderen Diensten angegeben wurden, sowie aktuelle API-Token für die Veröffentlichung in sozialen Netzwerken.



Entdeckung


Hier habe ich mich auch entschieden, keine Zeit auf dem Hauptportal zu verschwenden, sondern sofort zu prüfen, auf welche meiner Webressourcen die Bank verlinkt. Das „Karriereportal der Otkritie Bank“ wurde in zufälliger Analogie zur Sberbank zum Thema.

Es stellte sich heraus, dass das Portal auf CMS Bitrix läuft. Große kommerzielle Engines oder Open Source-Engines enthalten in der Regel keine untergeordneten Fehler, sondern ...

Ok Google, wie greife ich auf das Bitrix Admin-Panel zu?

Der dritte Fehler der Kinder besteht darin, die Verzeichnisliste auf dem Server nicht zu schließen.

Im Prinzip ist alles klar - Apache wurde so konfiguriert, dass Verzeichnisse ohne Indexdateien ihren Inhalt anzeigen. Dies ist kein sehr kritisches Problem, wenn nicht für eine schicksalhafte Kombination von Umständen. Auf dem Karriereportal können Sie Ihre Kontaktdaten und Ihre Lebenslaufdatei hochladen. Ein paar Minuten und ich bin bereits dabei, das Verzeichnis mit den Daten der Bewerber aufzulisten.





Das ist alles interessant, aber nicht das Admin-Panel. Deshalb blättern wir in allen Ordnern in der Hoffnung, etwas zu finden.
Kein Kindheitsfehler - der menschliche Faktor. Ich weiß nicht, wie und vor allem warum, aber in einem der Verzeichnisse mit PDF / RTF / DOC-Dateien gab es eine Datei ohne Erweiterung, die ein PHP-Skript war.



Dank dieser Datei wurde ein neuer Suchvektor erhalten - der Ordner / estaff /, in dem die Protokolle zum Hinzufügen / Entfernen von Stellen mit einem Benutzernamen / Passwort-Paar, Modulskripten sowie in einer der Dateien die Details angezeigt wurden, die sich dem Bitrix Admin-Bereich näherten.





Nun, Sharik, du wirst ihm noch einen halben Tag nachlaufen - um Fotos zu geben ...

Leider endete diese Geschichte für mich ohne Happy End. Erstens musste ich lange nach einem echten Vertreter der Bank für IT suchen. Die erste Unterstützungslinie für Banken (sowie die Personalabteilung selbst) hat das erwartete Problem im Prinzip nicht verstanden, konnte diese Daten jedoch nicht an Kollegen aus den erforderlichen Abteilungen weitergeben.

Die Lösung war LinkedIn und das Senden persönlicher Nachrichten an die Leiter verschiedener Abteilungen, zumindest in Bezug auf die IT-Infrastruktur.

Zweitens haben beide Banken kein Bug Bounty-Programm, weshalb sich alles auf ein kurzes „Danke“ beschränkte.

Und drittens berücksichtigte die Personalabteilung beider Banken meinen Lebenslauf nicht, da es an Erfahrung mangelte.

Source: https://habr.com/ru/post/de454252/


All Articles