Logfile Analyse nach Spamangriff

Alles, was den Apache betrifft, kann hier besprochen werden.

Logfile Analyse nach Spamangriff

Postby Morgenstern » 08. May 2007 15:10

Über eine meiner PHP-Seiten wurde Spam verschickt. Nach der Analyse der Logfiles suche nach POST habe ich herausgefunden, über welche PHP Seite die POST-Eingaben kamen und der Spam versendet wurde. Allerdings habe ich noch nicht herausgefunden, wo der Fehler (die Sicherheitslücke) im Script ist. Wie könnte ich weiter Vorgehen? Ist es möglich, herauszufinden, was für POST-Variablen versendet wurden?
Morgenstern
 
Posts: 5
Joined: 08. May 2007 15:06

Postby martinpre » 08. May 2007 18:40

nein und das ist auch gut so, da meistens passwörter per Post verschickt werden!

natürlich kannst du über dein phpskript eigene logfiles schreiben und dort auch die post vars speichern
martinpre
 
Posts: 405
Joined: 22. May 2006 16:14
Location: Nähe Tulln / Österreich

Postby Morgenstern » 08. May 2007 23:57

Vielen Dank für die Antwort. Dann stelle ich halt einfach eine "Falle". Mal sehen, ob das funktioniert.
Morgenstern
 
Posts: 5
Joined: 08. May 2007 15:06

Postby KingCrunch » 09. May 2007 00:32

Wie wärs es damit: Script überprüfen?
Nicht jeder Fehler ist ein Bug ...
KingCrunch
 
Posts: 1724
Joined: 26. November 2005 19:25

Postby Morgenstern » 09. May 2007 00:38

Das war selbstverständlich auch mein erster Gedanke, nur komme ich leider nicht drauf, wie das vor sich gehen könnte. Wie kann man so etwas verhindern?

Auszug aus dem Logfile:

24.185.150.165 - - [08/May/2007:02:02:49 +0200] "POST http://diefehlerhafteseite HTTP/1.1" 200 38539 "http://meinedomain/" "-"

Die Grösse ist immer etwa gleich gross. Anscheinend werden keine $_POST Variablen übergeben. Wie kann der Bot dennoch Mails versenden?
Morgenstern
 
Posts: 5
Joined: 08. May 2007 15:06

Postby Wiedmann » 09. May 2007 00:50

Anscheinend werden keine $_POST Variablen übergeben.

Woher weist du das?
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby KingCrunch » 09. May 2007 01:35

Code: Select all
24.185.150.165 - - [08/May/2007:02:02:49 +0200] "POST http://diefehlerhafteseite HTTP/1.1" 200 38539 "http://meinedomain/" "-"
Da steht sogar explizit POST und knapp 39kb fürn einfachen Request find ich recht happig (oder is das der Response?).

Was du dagegen tun kannst? Möglichst alle Werte so stark herausfiltern, dass sie keine ungültigen Werte mehr beinhalten können. zB hat die Empfänger-Adresse nichts im Formular zu suchen, eine E-Mail-Adresse (gemeint: Absender) hat ein bestimmtes Format, ...
Nicht jeder Fehler ist ein Bug ...
KingCrunch
 
Posts: 1724
Joined: 26. November 2005 19:25

Postby Wiedmann » 09. May 2007 04:52

39kb ... oder is das der Response?

Yup.
Wiedmann
AF Moderator
 
Posts: 17106
Joined: 01. February 2004 12:38
Location: Stuttgart / Germany

Postby KingCrunch » 09. May 2007 07:34

oookay, also alles ab "und" streichen ;)
Nicht jeder Fehler ist ein Bug ...
KingCrunch
 
Posts: 1724
Joined: 26. November 2005 19:25

Postby Morgenstern » 09. May 2007 11:58

Wiedmann wrote:
Anscheinend werden keine $_POST Variablen übergeben.

Woher weist du das?


Ich habe ein Skript geschrieben, dass die $_POST Variablen loggd. Es wird allerdings nichts geloggd bei diesen Anfragen.

KingCrunch wrote:Empfänger-Adresse nichts im Formular


Es gibt kein Formular auf dieser Seite, deshalb stehe ich ja so auf dem Schlauch.
Morgenstern
 
Posts: 5
Joined: 08. May 2007 15:06

Postby KingCrunch » 09. May 2007 13:09

Gibt es denn irgendein Script, dass irgendeine Mail-Funktion benutzt? Wenn ja, mal prüfen, woher er seine Inhalte bekommt. Wenn nein, dann mag das Problem wo ganz anders liegen. Schließlich kann man keine Funktion durch eine Lücke in einem Script ausnutzen, wenn das Script die Funktion garnicht benutzt :D

Oder verwendest du Variablen irgendwo als Funktionsbezeichner?
Code: Select all
$fkt = 'meine_function';
$fkt ('arg');
Nicht jeder Fehler ist ein Bug ...
KingCrunch
 
Posts: 1724
Joined: 26. November 2005 19:25

Postby Morgenstern » 09. May 2007 14:40

KingCrunch wrote:Gibt es denn irgendein Script, dass irgendeine Mail-Funktion benutzt? Wenn ja, mal prüfen, woher er seine Inhalte bekommt. Wenn nein, dann mag das Problem wo ganz anders liegen. Schließlich kann man keine Funktion durch eine Lücke in einem Script ausnutzen, wenn das Script die Funktion garnicht benutzt :D

Oder verwendest du Variablen irgendwo als Funktionsbezeichner?
Code: Select all
$fkt = 'meine_function';
$fkt ('arg');


Das habe ich mich auch gefragt - es wird nirgends eine mail() Funktion verwendet. Allerdings bin ich der Sache auf der Spur. Vielen Dank auf alle Fälle für die Hilfe!
Morgenstern
 
Posts: 5
Joined: 08. May 2007 15:06


Return to Apache

Who is online

Users browsing this forum: No registered users and 4 guests