> ok, ich habe wohl zu wenig Infos bei der ersten Anfrage mitgegeben, sorry. > Nun aber ... > > Wir betreiben ip-based, virtuelle Webserver. Die Server basieren auf Linux > und sind mit dem apache, php, mysql, openssh, perl usw. konfiguriert. > > Nun meine Frage: Gibt es Mechanismen mit denen ich cgi-Scripte vor Missbrauch > schuetzen kann. > Missbrauch definiert sich in diesem Zusammenhang wie folgt: > a) exessive Aufrufe von Scripten > b) "Posten" direkt in des Script ohne Aufruf der "das_Script_aufrufenden" > html-Seite > c) Zugriff auf Verzeichnisse des Betribessystems und Auslesen der > Informationen > > Mir sind Mechanismen wie Session-ID's, "Apachen in chroot-Umgebungen" und > Ressourcenbegrenzung > bekannt, mich interessieren aber andere Loesungen dieser Probleme. Gibt es > diese? > > Ich nehme aber auch gerne Infos zu Session-ID's und Ressourcenbegrenzung > entgegen.
Also nen kompletten virtuellen Server mit ssh-Zugang würde ich persönlich sowieso nur in nem chroot laufen lassen. Ich arbeite ja unter FreeBSD, aber unter Linux lässt sich sowas sicherlich genauso machen. Nur gelesen habe ich da so Sachen wie ein komplettes World in nem chroot ablaufen zu lassen. Der Kunde hat so ein komplettes base-System und kann auf dem System tun und lassen was er will. Meinetwegen kann er auch seinen Apachen löschen, die passwd umschreiben oder wasweissich, ist ja sein Server. Du hast dir dann halt so Sachen wie CGI-Skripte und PHP absichern gespart. Was mich an dieser Situation noch ein bischen stört ist die Tatsache das der Kunde, verfügt er denn über genug Wissen, sich auch seinen Server nach Belieben umbauen kann, d.h. WebServer runter QuakeServer drauf und schlimmere Szenarien. Sowas lässt sich wahrscheinlich nur im Vertrag regeln. Oder du gibst dem User auch in seinem virtuellen Server nur eingeschränkte Rechte, dann kann er sich zwar zum root hacken, aber eben nur zu seinem virtuellen Root. Einfachere Sachen lass ich sowieso ohne Shellzugang und ohne PHP/CGI laufen. Wobei sich ja für PHP auch eine Art chroot angeben lässt. Ähnliches gibt¹s glaub ich auch für CGIs, setuid und son Kram. So Lösungen kommen bei mir immer in Probleme, wenn ich möglichst wenig echte User auf meinem System haben möchte, Mail z.B. läuft komplett virtuell in einer Datenbank. Ich wär ja dafür das man eine Art chroot für jeden einzelnen <VirtualHost> angeben kann, da CGIs und PHPs aber ausserhalb von Apache laufen, wäre das auch nicht das optimale. Sicher hat aber noch wer anderes was zu dem Thema zu sagen. Philon