
 |

Server Side Includes: Sicherheitsprobleme
Über die Sicherheitsprobleme wird viel gesprochen und diskutiert. Tatsache
ist, daß SSI eine große Lücke im System sein können, wenn man bei der
Implementierung nicht richtig aufpaßt. Die Probleme beziehen sich dabei
auf das Attribut exec, mit dem man einen beliebigen Shell-Befehl
auf dem Server ausführen kann, indem der Befehl einfach per SSI-Tag
in die Seite eingefügt wird, z.B.
<--#exec cmd="format c:"-->
Im ersten Moment denkt man, so ein Blödsinn, wer vernichtet denn seinen
eigenen Server? Aber das ist gar nicht das Problem, sondern SSI-Scripts, die
Inhalte über Usereingaben erzeugen und auch ausgeben. Hier wäre es dann
möglich einen SSI-Befehl einzugeben, der dann beim nächsten Aufruf aufgeführt
wird und erheblichen Schaden anrichten kann - wie etwas ein Gästebuch-Script.
Um dieses Problem zu umgehen, können 2 Wege eingeschlagen werden:
- Die Aktivierung von SSI in Apache mit der Option IncludesNOEXEC, was
zur Folge hat, daß die Befehle "exec" und "include" nicht verwendet werden dürfen
bzw. "include" nur dann, wenn es sich nicht um ein CGI-Programm handelt. Damit
ist das Sicherheitsproblem beseitig, aber es können eben keine Programme mehr
per SSI eingebaut werden.
- Die zweite Vorgehensweise aktiviert die SSI-Option mit "Includes" - läßt aber
bei Usereingaben keine spitzen Klammern (<>) zu bzw. wandelt diese in
Ihren maskierten Wert um und die Befehle können nicht mehr ausgeführt werden.
Wer auf Nummer sicher gehen will, sollte grundsätzlich die Eingabe von HTML-Tag
verhindern - somit kann auch das Layout nicht zerschossen werden. Dies ist
einfach über die folgende Zeile zu erreichen:
$var =~ s/<([^>]|\n)*>/ /g;
bzw in abgeschwächter Form
$var =~ s/\>/\>\;/g ;
$var =~ s/\</\<\;/g ;
Kommentare
29.03.2004 - 12:22 | Dave | keine E-Mail
Ich hätte da ne relativ einfache Lösung: Der Bereich wo du die Datei in deine .shtml inclu... 

02.10.2003 - 18:59 | Herbert Unterlechner | contact@banana.at
SSI für Dummies! Hab SSI probiert, läuft super.... Aber: Wie bekomme ich es hin, dass e... 

Kommentar anfügen
|

|

|