Loopo
Admiral
- Registriert
- Juli 2002
- Beiträge
- 7.617
Für den Kulturverein iPunkt habe ich eine Seite samt CMS und Forum programmiert. Heute erhielt ich einen Anruf des Providers, dass offensichtlich jemand Dateien (Scripte und ausführbare Programme) über diese Homepage rauflädt!
Jetzt wollte ich wissen, wie es möglich ist bzw. wo die Gefahren liegen können und wie ich diese umgehen kann?
Der Login erfolgt über ein normales Formular:
Anschließend werden in einer MySQL-Datenbank die Werte überprüft.
Hier besteht natürlich die Gefahr, durch mithören (geht das so einfach?) die unverschlüsselten Zugangsdaten auszulesen
Die Benutzer-Daten für das Forum werden für die ganze HP benutzt, auch für den administrativen Bereich, der ohne entsprechende User-Rechte (in der MySQL gespeichert) nicht betreten werden kann (soll). In diesem gibt es mehrere Seiten zum Uploaden von Dateien. Das Zielverzeichnis kann hierbei jedoch nicht ausgewählt werden. Alle Uploads kommen in das Verzeichnis Upload oder ein Unterverzeichnis davon.
Die Uploads sehen zB wie folgt aus, Formular:
PHP-Skript zum speichern der Datei:
hab gerade bemerkt, dass im Cookie die Benutzergruppe gespeichert wird (die den Zugang zum administrativen Bereich ermöglicht) und dieser Wert ohne Kontrolle als richtig genommen wird. Man könnte also durch Ausprobieren aller möglichen Kombinationen hier den Zugang erhalten. Werde hier eine Rückfrage an die Datenbank noch integrieren.
Was meint ihr? Seht ihr wo einen gravierenden Fehler und wie kann man außer durch mithören (nochmal: geht das einfach bei jeder Seite?) hier noch die Zugangsdaten erhaschen?
Jetzt wollte ich wissen, wie es möglich ist bzw. wo die Gefahren liegen können und wie ich diese umgehen kann?
Der Login erfolgt über ein normales Formular:
HTML:
<form action="board.php?tpl=checklogin" method="post">
<input type="hidden" name="lb_saveprofile" value="temp">
Benutzer:<br>
<input type="text" name="lb_nick"><br>
Passwort:<br>
<input type="password" name="lb_password"><br>
<input type="submit" value="einloggen">
</form>
Anschließend werden in einer MySQL-Datenbank die Werte überprüft.
Die Benutzer-Daten für das Forum werden für die ganze HP benutzt, auch für den administrativen Bereich, der ohne entsprechende User-Rechte (in der MySQL gespeichert) nicht betreten werden kann (soll). In diesem gibt es mehrere Seiten zum Uploaden von Dateien. Das Zielverzeichnis kann hierbei jedoch nicht ausgewählt werden. Alle Uploads kommen in das Verzeichnis Upload oder ein Unterverzeichnis davon.
Die Uploads sehen zB wie folgt aus, Formular:
HTML:
<form action="index.php?p=admin&s=uploads" method="post" enctype="multipart/form-data" name="create_news" id="create_news">
<input type="hidden" name="upload_file" value="true">
<input type="file" name="upload" style="width:200px;"><br>
<input type="submit" value="upload" style="width:200px;">
</form>
PHP-Skript zum speichern der Datei:
PHP:
if ( $_POST['upload_file'] ) {
// Fehler beim Datei-Upload?
if ( strlen ( $_FILES['upload']['tmp_name'] ) ) {
// Datei verschieben
@ unlink ( 'upload/'.$_FILES['upload']['name'] );
move_uploaded_file ( $_FILES['upload']['tmp_name'], 'upload/'.$_FILES['upload']['name'] );
@chmod ( 'upload/'.$_FILES['upload']['name'], 0775 );
}
}
Was meint ihr? Seht ihr wo einen gravierenden Fehler und wie kann man außer durch mithören (nochmal: geht das einfach bei jeder Seite?) hier noch die Zugangsdaten erhaschen?