# PHP Session geht nicht mehr  & Permission denied



## Falloutboy6 (25. Jan. 2011)

Hi,

ich habe auf einmal das Problem, dass die PHP Sessions nicht mehr gehen. Ich erzalte folgende Fehlermeldung.



> *Warning*:  session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /tmp/25454b22bf39c75795851f39d5e347c4:386) in */var/www/web90/web/admin/index.php* on line *1*


Meine Apache error.log Files sind auch zu mit folgenden Meldungen



> [Mon Jan 24 19:43:57 2011] [error] [client 96.9.170.30] client sent HTTP/1.1 request without hostname (see RFC2616 section 14.23): /w00tw00t.at.ISC.SANS.DFind
> find: `/root/.aptitude': Permission denied
> find: `/root/.spamassassin': Permission denied
> find: `/root/ispconfig/httpd/conf/ssl.key': Permission denied
> ...


Nach einem Neustart erhalte ich nun die Meldung



> *Warning*:  Unknown: failed to open stream: No such file or directory in *Unknown* on line *0*
> 
> *Fatal error*:  Unknown: Failed opening required  '/tmp/25454b22bf39c75795851f39d5e347c4'  (include_path='.:/usr/share/php:/usr/share/pear') in *Unknown* on line *0*


Mir fällt gerade auf, dass in fast jedem Ordner auf einmal eine .htacces Datei liegt mit dem Inhalt



> AddType application/x-httpd-php .php .phtml .php3 .php4 .php5 .htm .html
> php_value auto_prepend_file /tmp/25454b22bf39c75795851f39d5e347c4


Kann sich jemand erklären woher die kommt? Von mir nicht. Wenn ich diese lösche funktioniert es auch wieder, aber sobald ich halt in einen anderen Ordner wechsel erhalte ich wieder die gleiche Meldung.

Wer kann mir hier helfen?

Danke


----------



## Till (25. Jan. 2011)

Möglicherweise wurde das CMS in der Webseite gehackt. Was für ein CMS ist es denn und ist es die aktuellste Version. Schau doch mal nach, ob es die Datei /tmp/25454b22bf39c75795851f39d5e347c4 gibt und was da drin steht. Außerdem ist es interessant, welchem user die Datei /tmp/25454b22bf39c75795851f39d5e347c4 gehört.


----------



## Falloutboy6 (25. Jan. 2011)

Hi,

CMS ist keins vorhanden. Der Inhalt vom /tmp/ Folder ist



> drwxrwxrwt  2 root         root          4096 25. Jan 01:30 .ICE-unix
> -rw-------  1 root         root             0 25. Jan 12:10 sess_3585ae1a4de23bda482c4304c72ff955
> -rw-------  1 root         root             0 25. Jan 12:09 sess_62319c59e6f023816a4dac781b86569c
> -rw-------  1 root         root             0 25. Jan 12:14 sess_862afab19a71df3af8fa7df6f5173d50
> ...


Die .htaccess Datei selber hat User:Gruppe www-data

Danke


----------



## Till (25. Jan. 2011)

Der Temp folder ist ok, das sind die normalen session dateien. Es geht bei dem Problem um die Datei mit dem exakten Namen /tmp/25454b22bf39c75795851f39d5e347c4

Hast Du die bereits gelöscht?


----------



## Falloutboy6 (25. Jan. 2011)

gelöscht habe ich sie nicht aber ich finde sie auch nicht mehr. Sollte diese nicht im /tmp/ Ordner liegen oder im /tmp/ vom web selber?


----------



## Till (25. Jan. 2011)

Schau mal in beiden nach. Aber ich denke es müsste der /tmp/ Ordner sein.

Was genau hast Du denn in der webseite laufen? Nur HTML dateien oder irgend was in php programmiertes, was eine Sicherheitslücke haben könnte?


----------



## Falloutboy6 (25. Jan. 2011)

Also Datei kann ich keine finde. Ne da läuft was in php programmiert.


----------



## Till (25. Jan. 2011)

Ich bin jetzt bei der sache ein wenig weiter gekommen. Hatte gerade einen Kunden, dessen Server das gleiche Problem hat. Es scheint sich dabei um einen hack zu ahndeln, ich weiß aber noch nicht, wodurch sie rein gekommen sind. Schau auch mal hier:

http://forums.oscommerce.com/topic/370211-was-this-a-hack-attempt/

bzw. such mal bei google nach:

/tmp/25454b22bf39c75795851f39d5e347c4

Es muss irgend ein automatisches hack script sein das erst seit ein paar tagen aktiv ist. Ich hab mir mal die Mühe gemacht und bei diversen Google Treffern nachgesehen, welches Controlpanel verwendet wird und es scheint nicht ispconfig spezifisch zu sein. Ich hatte einen Treffer für ispconfig 2. Die vhsot Pfade der anderen befallenen Systeme passen aber nicht zu ispconfig. daher würde ich mal sagen, dass ispconfig nicht die Ursache ist.

Bei den befallenen Seiten scheinte es sich hauptsächlich um Joomla, oscommerce oder magento seiten zu handeln. Wobei ich auch einen Bericht über eine Wordpress Seite gefunden habe.

Werde mir jetzt mal die Datei /tmp/25454b22bf39c75795851f39d5e347c4 ansehen, die dort includet wurde.

Ich würde Dir jetzt erstmal folgendes raten:

1) Überprüfe, ob die Datei /tmp/25454b22bf39c75795851f39d5e347c4 wirklich nicht da ist. z.B. mit:

ls -la /tmp/25454b22bf39c75795851f39d5e347c4

Wenn sie nicht da ist, dann lege sie an:

touch /tmp/25454b22bf39c75795851f39d5e347c4

öffne sie danach mit einem Editor und schreibe folgende Zeilen rein:


```
<?php

?>
```
Wichtig, es darf keine Leerzeile am anfang oder Ende der datei stehen. Dann machst Du die Datei unveränderbar:

chattr +i /tmp/25454b22bf39c75795851f39d5e347c4

jetzt kann nur noch root sie ändern und nicht mehr der webserver prozess, dem sie ursprünglich auf den gehackten Servern gehörte.

Damit ist erstmal sichergestellt, dass keine gehackten Inhalte in Deine Webseiten aus der datei geladen werden.

Als nächstes such bitte mal in den diversen web logs nach "25454b22bf39c75795851f39d5e347c4". Das geht z.B. mit grep und scahu, ob Du es irgendwo findest.


----------



## Till (25. Jan. 2011)

Und nochwas, welche ISPConfig Version benutzt Du?


----------



## Falloutboy6 (25. Jan. 2011)

ok habe ich mal alles gemacht.

Habe die



> *Version:* 2.2.36


In den Logfiles konnte ich nichts dazu finden.

Hab doch noch was gefunden



> httpd/ispconfig_access_log_2011_01_25:www.domain.de||||315||||85.176.151.75 - - [25/Jan/2011:14:52:25 +0100] "GET /cms/front_content.php HTTP/1.1" 200 315 "http://www.google.de/search?q=%2Ftmp%2F25454b22bf39c75795851f39d5e347c4&channel=linkdoctor" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.13 (KHTML, like Gecko) Chrome/9.0.597.67 Safari/534.13"


www.domain.de habe ich natürlich nur ersetzt.Hier ist ein CMS Contenido im Einsatz.


----------



## Till (25. Jan. 2011)

Das was Du im Log gefunden hast war ich gerade bei meiner Recherche nach dem Problem. Wenn Du bei Google nach /tmp/25454b22bf39c75795851f39d5e347c4 suchst müsstest Du irgendwo auf den ersten 2 Trefferseiten stehen.


----------



## Falloutboy6 (25. Jan. 2011)

Axo ok. Weiteres habe ich nicht gefunden. 
Ich hab dann auch noch das Problem mit den .htaccess Dateien. Hab ich eine Möglichkeit alle auf einmal zu löschen. Die .htaccess Dateien haben ja alle den gleichen Inhalt.


----------



## Till (25. Jan. 2011)

Das müsste an sich per script gehen, indem Du erst alle .htaccess dateien des Servers suchst und dann den Inhalt der dateien nach dem Pfad durchsuchst. Habe dafür aber kein fertiges Script parat.


----------



## Falloutboy6 (25. Jan. 2011)

Könnte das so hinhauen?



> find -name ".htaccess" -exec grep -Hn "AddType application/x-httpd-php .php .phtml .php3 .php4 .php5 .htm .html" "{}" \; -delete


Problem ist nur, dass ich ein paar Ordner ausschließen müsste. Weil doofer weise auch die .htaccess Dateien von awstats betroffen sind. Die sollte ich nicht unbedingt löschen.


----------



## Till (25. Jan. 2011)

kannst ja mal testweise eine der awstats .htaccess dateien löschen oder umbenennen, ich glaube die müssten dann über nacht neu erstellt werden. In dem Fall wäre es nicht so schlimm, wenn Du sie löschst.


----------



## ayreon (4. Apr. 2011)

*ich hab die auch drauf hab für alle noch nen tipp*

mein tipp ist, das man in dasd löschscript die größe evtl. mit angibt, denn alle haben die selbe größe (angezeigt in winscp bei mir 417)...

man kann sie auch mit winscp eben mit der suche suchen und anzeigen und löschen (leider alle einzeln)
sicher kann man das auch mit anderen programmen machen


----------



## ayreon (4. Apr. 2011)

bei mir der in den .htaccess ist der inhalt


```
AddType application/x-httpd-php .php .phtml .php3 .php4 .php5 .htm .html
php_value auto_prepend_file /tmp/25454b22bf39c75795851f39d5e347c4
AddType application/x-httpd-php .php .phtml .php3 .php4 .php5 .htm .html
php_value auto_prepend_file /tmp/25454b22bf39c75795851f39d5e347c4
AddType application/x-httpd-php .php .phtml .php3 .php4 .php5 .htm .html
php_value auto_prepend_file /tmp/25454b22bf39c75795851f39d5e347c4
```


----------



## ayreon (4. Apr. 2011)

mit 
	
	



```
find -name ".htaccess" -exec grep -Hn "AddType application/x-httpd-php .php .phtml .php3 .php4 .php5 .htm .html" "{}" \; -delete
```
 werden im übrigen nur die mit dem inhalt gelöscht und keine anderen...


----------

