Lücken schließen: Sicherheitstests für rundum sichere Anwendungen

Nachdem Sie Ihre offenen Ports geschlossen und alle nicht benötigten Benutzer-Accounts gesperrt haben, sollten Sie sich einmal die Rechte für die Datenbanken Ihrer Anwendung sowie für die Verzeichnisse auf Ihren Servern genauer ansehen. Viele moderne Angriffsmethoden zielen auf eine schlecht konfigurierte Rechtevergabe ab, wobei sich die Attacken häufig gegen Webserver richten.

Beispielsweise gewähren mit CGI-Scripts arbeitende Websites gelegentlich uneingeschränkten Schreibzugriff. Böswillige Benutzer könnten in diesem Fall einfach eine Datei in das CGI-Binärverzeichnis stellen. Dann können sie das auf dem Server befindliche Script aufrufen – das vom Webserver ausgeführt wird -, wobei ihnen gewöhnlich Administratorrechte eingeräumt werden. Die Möglichkeit, Scripte schreiben und ausführen zu können, birgt ein extrem hohes Risiko, weshalb die Vergabe entsprechender Rechte mit größter Sorgfalt erfolgen sollte.

Ein weiteres Beispiel: Vor ein paar Jahren sollte ich ein äußerst wichtiges System in einem Sicherheitslabor testen. Es gelang mir in kürzester Zeit das gesamte Labor zu kontrollieren und alle 17 angeblich sicheren Systeme neu zu konfigurieren, indem ich Schwachstellen in der Rechtevergabe ausnutzte. So hatte ich durch einen Port-Scan festgestellt, dass auf jedem der Server ein FTP-Listener ausgeführt wurde, wobei überall ein anonymer Zugang möglich war, über den ich auf jedes einzelne Serversystem zugreifen konnte.

Die FTP-Listener ermöglichten mir den Zugang zu den echten Passwort-Dateien auf den einzelnen Rechnern, was einen enormen Konfigurationsfehler darstellte. Dank der Einstellungen für die Rechtevergabe konnte ich nicht nur alle Passwort-Dateien herunterladen, ich konnte diese auch „kontaminieren“, indem ich die Passwort-Sequenz der Passwort-Dateien auskommentierte und sie durch ein mir bekanntes Passwort ersetzte. Anschließend konnte ich die kontaminierten Dateien über FTP wieder im Zielsystem platzieren. Natürlich gewährte ich mir dabei einen Root-Zugriff, so dass ich die Administratorrechte für die jeweiligen Rechner bekam.

Wären die Verzeichnisrechte korrekt vergeben worden, hätte ich mir nur die dem anonymen Benutzer zugewiesenen FTP-Verzeichnisse beschaffen können. Damit wäre ich nicht an die Passwort-Dateien gelangt und hätte diese mit Sicherheit nicht austauschen können. Natürlich wäre ich erst gar nicht so weit gekommen, wenn das System zuvor durch ein Port-Scanning, wie in Schritt 1 empfohlen, geprüft worden wäre.

Themenseiten: Anwendungsentwicklung, Software

Fanden Sie diesen Artikel nützlich?
Content Loading ...
Whitepaper

Artikel empfehlen:

Neueste Kommentare 

Noch keine Kommentare zu Lücken schließen: Sicherheitstests für rundum sichere Anwendungen

Kommentar hinzufügen

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *