MyBB.de Forum

Normale Version: [G] Sicherheitslücke bei Backups
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo erstmal,

zuerst entschuldige ich mich, wenn dieses Thema bereits besprochen wurde, habe aber nichts dergleichen gefunden.
Nun aber zum eigentlichen:

Bei einer Installation eines MyBB Version 1.4.4 auf meinen Webspace kam mir bezüglich des Backup-Ordners ein interessanter Gedanke, den ich auch sogleich überprüft habe.

Es ist doch so: Der Backup-Ordner besitzt CHMOD 777, damit die Backups der Datenbank gesichert werden können. Der Name der Backupdatei wird durch das Präfix "backup_" sowie weiteren 10 zufällig generierten Buchstaben/zahlen benannt (soweit ich das sehe sind das alle Zeichen aus dem Hexadezimalsystem).
Der Algorithmus dafür ist im Quellcode einsehbar.
Nachtrag: Ich habe mal genauer im Code geschaut und festgestellt, dass es tatsächlich nur die Zeichen des Hexadezimalsystems sind, weil es 10 Zeichen eines md5 Hashes sind

Auf alle Dateien im "backups" Verzeichnis kann man durch direkte Eingabe der Url zugreifen, da hier kein Schutz existiert (!!!)

Ein Angreifer könnte nun, da das Board Quelloffen ist, den Algorithmus übernehmen und via Bruteforce ständig URLs aufrufen, die auf ein betreffenden Backupordner zielen.


Hat er erfolg, hat er die Komplette Struktur und Co der Datenbank und könnte mithilfe von Spoofing (wobei er die nötigen Informationen aus der Datenbank erhält) sich Zutritt zum Board verschaffen.

Sicherlich kann man den admin-Ordner umbenennen, oder eine .htaccess Schutz vorlegen, jedoch ist solch ein Schutz vom Anfang an her nicht gegeben.
Des weiteren sollte es doch wohl nicht sein, dass die Backups, die ja eigentlich als Sicherheit dienen sollen, selbst zum Sicherheitsrisiko werden.

MfG
Raphael
Von alleine macht das MyBB aber auch keine Backups... Wink
Die meisten werden aber auch das mitgelieferte Feature des Wöchentlichen Backups nutzen, beziehungsweise selbst regelmäßig welche erstellen mithilfe der Foreneigenen Backup-Erstellung.
Hallo Raphael,

ich sehe das Problem, auch wenn ich die Gefahr als sehr gering einschätze. Rein rechnerisch gibt es momentan 1.099.511.627.776 Möglichkeiten für den Zufallsteil des Dateinamens. Ich werde es aber an die Entwickler weitergeben. Eine einfache Lösung wäre anstatt den jetzigen Algorithmus die Funktion random_str() zu verwenden. Dadurch würden die Möglichkeiten bei einer Länge von 10 auf 713.342.911.662.882.601 steigen. Wirklich Sicherheit erreichst du aber nur, indem du den Ordner per .htaccess für Downloads sperrst:
Code:
order deny,allow
deny from all