800,- Kosten für Sicherheitsmangel?

TinaX

Grünschnabel
Hallo Leute!

Ich hab vor ca. 1 Jahr eine PHP-Page für eine befreundete Firma gebastelt.
Diese Page wurde vor 2 Wochen gehackt und eine FTP-Zugangssoftware am Server installiert. Nun haben wir vom Provider eine Rechnung über 800 Euro bekommen, weil die der Meinung sind, daß alles unsere Schuld ist. Genaue Schäden am Server wurden uns nicht mitgeteilt.

Nun meine Frage: Kann mich mein Provider für sowas belagen? Oder ist er nicht selbst für die Serversicherheit zuständig?

Der Codeteil, um den es geht, sieht ca. so aus:
PHP:
if( $_REQUEST['page'] == '' ) {
	$page = 'news';
} else {
	$page = $_REQUEST['page'];
}
Aufruf im Browser wäre dann: www.domain.com/index.php?page=$page

Das habe ich aus folgendem Grund so gewählt: Die Seite wird über ein CMS gewartet und erweitert - d.h. $page ist wirklich dynamisch - ich hatte nicht wirklich die Möglichkeit, alle möglichen Varianten anzuführen.

Daß das nicht ganz sauber war, ist mir jetzt auch klar. Allerdings hab ich bei nem anderen (viel größeren) Provider zig solcher Pages liegen - und da ist noch nie was passiert bzw. was beanstandet worden.

Kernfrage: Kann mich mein Provider dafür belangen, daß über meine Seite von dritter Hand Programme am Server installiert wurden?

Bräuchte die Antwort ziemlich dringend - würd mich also über rasches Feedback freuen.

Danke, LG, TinaX
 
Die Frage ansich kann/darf dir nur ein Jurist beantworten....

mein Gefühl aber sagt mir, dass ich es da auf jeden Fall auf einen Rechtstreit ankommen lassen würde.
Wenn du Webspace mietest, dann ist es nicht unbedingt dein Job, für die Serversicherheit zu sorgen.

Wenn deine Skripte Zugriff ausserhalb deines Webspaces ermöglichen, liegt das Problem bei denen, nicht bei dir. Sollte dir durch die installierte Software Schaden entstanden sein, würde ich eher überlegen, ob du Schadensersatz verlangen kannst(obwohl ich mal annehme, dass die Geschäftsbedingungen das ausschliessen werden).

Die Skripte auf dem anderen Server solltest du aber unbedingt mal überarbeiten(wie war noch die genaue Adresse? :suspekt: )
 
Hey, danke mal fürs flotte Feedback. Sowas in die Richtung hab ich mir eh auch schon überlegt. Lt. AGB´s des Anbieters distanzieren sie sich nur davon Schäden zu begleichen, die SIE nicht zumindest GROB fahrlässig verursacht haben. D.h., wenn meine Page, Datenbank, Backups am Server weg sind, und ich ihnen nicht zumindest GROBE Fahrlässigkeit anhängen kann, dann geh ich leer aus.

Kundenseitig steht aber nix drin (außer halt Pornographiegesetz, Urheberschutz, üble Nachrede, blabla). Von einem vorgeschriebenen Programmierstil steht aber nix drin.

Danke nochmal - vielleicht hat ja noch jemand gegenteiliges zu gehaupten - ich will da nicht unwissend in Verhandlungen gehen.

Danke, LG, TinaX
 
PHP:
if ($_REQUEST[page]=="") { $page="news"; } else { $page=$_REQUEST[page]; };
Der Codeschnipsel ist tendenziell Cross-Site-Scripting gefaehrdet, das geht auf Deine Kappe.
Man kann aber Cross-Site-Scripting mit einer simplen Einstellung in der php.ini unmoeglich machen, diese Einstellung ist allow_url_fopen. Wenn das off ist kann dort als $page auch gerne http://www.boesehackerseite.com/fiesesscript.php angegeben werden. Dann gibt es halt einen Fehler und gut ist.
Dass dies offensichtlich nicht der Fall war, geht nicht auf Deine Kappe, ausser Du hast denen auch PHP installiert oder darauf bestanden (aus welchen Gruenden auch immer), dass es on ist.

Ich wuerde sagen, dass bei Dir zwar eine Teilschuld aufgrund nicht ganz sicherer Software liegt, jedoch solltest Du dafuer nicht belangt werden koennen. Ansonsten koennte ja 3/4 der Menschheit Microsoft verklagen. ;)
Ich sehe das Sicherheitsproblem auch weniger bei Deinem Script, sondern eher bei unwissenden Admins, wie dort offensichtlich zugange sind.
Jetzt wollen die ihre Fehler und vor allem ihre Unwissenheit auf Dich abwaelzen.

Auf jeden Fall solltest Du mal mit dem Rechtsverdreher Deines Vertrauens sprechen und gucken wie der Dich da raushauen kann.

Alle Angaben ohne Gewaehr und Gummibaerchen.
 
Ich denke es kommt drarauf an wie diese 800,- € zustande kommen. Wenn es sich hierbei um Traffic, der über euren Account angefallen ist handelt, werdet ihr wohl die Rechnung bezahlen müssen.

Ansonsten würde ich euren Provider fragen, was denn genau passiert ist und wie sie auf die 800,- € kommen.
Soweit ich was von Webserver Sicherheit verstehe, kann deine Sicherheitslücke nur durch eine "schlampige" Server Konfiguration richtig ausgenützt werden.

Hast du dir denn schon die AGBs von eurem Provider durchgelesen?

Das habe ich aus folgendem Grund so gewählt: Die Seite wird über ein CMS gewartet und erweitert - d.h. $page ist wirklich dynamisch - ich hatte nicht wirklich die Möglichkeit, alle möglichen Varianten anzuführen.
Warum nicht? Wenn eine neue Seite angelegt wird, kannst du doch gleichzeitig eine neue "Variante" erlauben (eine Lösung von vielen).

Daß das nicht ganz sauber war, ist mir jetzt auch klar. Allerdings hab ich bei nem anderen (viel größeren) Provider zig solcher Pages liegen - und da ist noch nie was passiert bzw. was beanstandet worden.
Dass bei deinen anderen Seiten noch nichts passiert ist, liegt nur daran, dass noch keiner deine Sicherheitslücke ausgenützt hat. Schließe sie bitte!
 
Hi reptiler!

Hab grad auf die Serverconfig geschaut - da ist allow_url_fopen JETZT zumindest auf OFF. Heißt das etwa, daß diese Option während des Serverangriffs auf ON gewesen sein muss?
 
Ich denke schon.
Ich weiss nicht genau wie Du $page verarbeitest, aber ich denke mit include().

Damit include() Dateien per HTTP oder FTP includen kann muss allow_url_fopen on sein.

php.net hat gesagt.:
If "URL fopen wrappers" are enabled in PHP (which they are in the default configuration), you can specify the file to be included using a URL (via HTTP or other supported wrapper - see Appendix M for a list of protocols) instead of a local pathname.
 
michel_tr hat gesagt.:
Ich denke es kommt drarauf an wie diese 800,- € zustande kommen. Wenn es sich hierbei um Traffic, der über euren Account angefallen ist handelt, werdet ihr wohl die Rechnung bezahlen müssen.

Da gehts nicht um Traffic, sondern um (ungefragte) Supportarbeiten, um den Fehler zu beheben (1/2 Stunde Servertechnik, 1/2 Stunde Programmierer).
Der Provider dürfte seine "Technik" extern beziehen, sprich: wenns am Server brennt, dann wird eine externe Firma hinzugeschaltet, um das Problem zu beheben.


Aber ich denke trotzdem, daß sicherheitsrelevante Einstellungen am Server getroffen werden müssen. So war´s doch auch mit den register-globals. Seiten haben von heute auf morgen nicht mehr funktioniert, weil eben Sicherheitslücken entdeckt wurden...
 
Kleine Tipp:
So laeuft das mit dem includen der Unterseiten bei mir:
PHP:
$subsite=$_GET["subsite"];
if ($subsite)
	{
		if ((strpos($subsite,"index.php")>-1) || (strpos($subsite,"http:")>-1) || (strpos($subsite,"https:")>-1) || (strpos($subsite,"ftp:")>-1))
			{
				header("Location:index.php");
			}
		else
			{
				include($subsite);
			}
	}
else
	{
		include("welcome.php");
	}
 
reptiler hat gesagt.:
Ich denke schon.
Ich weiss nicht genau wie Du $page verarbeitest, aber ich denke mit include().

Damit include() Dateien per HTTP oder FTP includen kann muss allow_url_fopen on sein.

Naja, ich hab einfach eine index.php, auf der sich alles abspielt. Per Button geb ich die Variable $page weiter - also wenn ich z.b. auf "News" klicke, dann lautet der Aufruf index.php?page=news - und in die index.php wird im vorgegebenen Bereich die Datei "news.php" geladen.

Bei dem Hack ist laut Mail vom Provider folgendes passiert:

Email

wie besprochen hier der problematische Codeteil:
########################################################
Code:
<?php
if ($_REQUEST[page]=="") {
$page="aktuelles";
} else {
$page="$_REQUEST[page]";
}
include "$page.php";
?>

########################################################
In der "index.html" werden die includes per Variable nachgeladen.

$_REQUEST[page] kann ich selbst übergeben, also Code nachladen, in diesem

Fall eine PHP-Shell von einem anderen Server

(http://mitglied.lycos.de/b0mbed/cse.gif) , die sich im /tmp installiert

hat. Durch diesen Zugriff wurde auf

"http://www.meineseite.com" * ein FTP Programm installiert.

* Domain möchte ich hier nicht bekanntgeben - nicht, daß da noch weitere Server- bzw. Seitensicherheitslücken ausgenützt werden...

Also nochmal langsam zum Mitschreiben (und ich will da wirklich niemanden festnageln - es geht mir nur ums Verständnis):

index.php?page=http://

ist nur dann zulässig, wenn allow_url_fopen auf ON steht?

Danke für eure Mühe...
 

Neue Beiträge

Zurück