Stand alone CrackerTracker

Bandy
Titel: Stand alone CrackerTracker
Version: 2.0
Beschreibung: Der Stand alone CrackerTracker ist etwas für alle PHP Programmierer: Er bringt das Schutzsystem vor SQL Injections und gängigen Wurmattacken (die versuchen über typische Exploits oder Lücken in PHP Skripten in die Datenbank einzudringen) in jedes PHP Skript!

Die Erkennungstechnologie des CrackerTrackers wird hierbei verwendet, um Wurmattacken bereits vor Ihrem PHP Skript zu erkennen und zu stoppen. Das einbringen des Schutzsystems, programmiert von Christian Knerr, ist dabei sehr einfach. Setzen Sie vor Ihr PHP Skript direkt in der ersten Codezeile nach <?php die Schutzdatei ctracker.php mit dem include-Befehl.

Dies sieht dann so aus:

Sucht in der global.php nach:
php:
1:
<?php


DARUNTER tragt dann ein:

php:
1:
include "ctracker.php";


Speichern und wieder hochladen. Dann nur noch die beiliegende ctracker.php auf Euer Hauptpfad vom Forum laden..

z.b.: /wbblite/

Danach werden Wurmattacken dynamisch von Ihrem PHP Skript ferngehalten. Sobald jemand versucht über die URL einen SQL Inject zu starten verweigert der CrackerTracker den Zugriff auf Ihr PHP Skript.

Die Demo verweist mal einen Angriff auf meine Seite. Dann bekommt Ihr eine Meldung, um das mal zu testen.

Copyright von dem Teil liegt bei Christian Knerr, ich habe die Erlaubnis es auch hier zu geben.

Die Internetseite vom Macher ist hier: www.cback.de

Änderung zu 1.0:
176 statt 30 Angriffsmöglichkeiten apgedeckt. 1. kleine vorbereitung auf die Prof. und Schutz vom ACP Bereich.

Update auf 2.0.1 (für wbblite)
Kopiert die beiliegende ctracker.php einfach neu hoch.
Dann kopiert die ctracker.php in den Ordner ACP.
Nun noch folgendes machen:
Öffnet die global.php im Ordner ACP und sucht nach:
php:
1:
<?php


DARUNTER einfügen
php:
1:
include "ctracker.php";


Speichern und hochladen. In der Zip die beiliegende GIF Datei (Ordner images) in den Images Ordner kopieren. Nun noch zum Schluß die Datei
templates/footer.tpl öffnen.
Sucht da nach (gleich am Anfang)
php:
1:
<br>


Und fügt DARUNTER bzw. DANACH ein
php:
1:
2:
3:
4:
5:
<table cellpadding="{$style['tableincellpadding']}" cellspacing="{$style['tableincellspacing']}" border="{$style['tableinborder']}" class="tableinborder" align="center">
 <tr>
  <td class="tablea"><span class="smallfont"><a href="http://www.cback.de" target="_blank"><img src="images/ct_protect_small.gif" alt="cback.de" titel="cback.de" /></a></span></td>
 </tr>
</table><br />


Speichern und fertig.
Die beiliegende anleitung.txt ist für die wbb 2.3.x beschrieben. Vom Prinzip aber gleich.
----
Demo: http://birc-script.de/wbb2/index.php?chr(

weiter zum Download
Aggro-81
Cooles Teil habs mal gemacht ^^ man weis es ja nie wer so Druff ist hehe
websurfer1989
Richtig geile Sache, echt Respekt, sehr guter Hack! Freude

Ich hätte nur eine Bitte, könnte jemand oder der Herausgeber ne datei schrieben die so nen angriff simuliert, damit man mal testen kann ob und wie das so funktioniert????

greetz
SvPe
Afaik musst du noch die ganze GPL mitverbreiten, da diese Mini-Script eben mit dieser lizensiert ist!
Bandy
Zitat:
Original von websurfer1989
Richtig geile Sache, echt Respekt, sehr guter Hack! Freude

Ich hätte nur eine Bitte, könnte jemand oder der Herausgeber ne datei schrieben die so nen angriff simuliert, damit man mal testen kann ob und wie das so funktioniert????

greetz


Eine kleine Simulation siehste ja mit dem Link zur Demo. Das kannste natürlich auch zu Deinem Board machen. Den Rest wird man nicht veröffentlichen.. da man ja sonst Tor und Tür für alle aufmacht. Augenzwinkern

Aktuell wird an der Prof. Version gearbeitet.. ob diese dann nach der Umsetzung für wbb2.3.x auch für wbb lite kommen wird vermag ich jetzt noch nicht zu sagen. Mit der Prof. wird es dann Stats geben und einiges mehr.. Will hier aber noch nix zu schreiben, da wie gesagt erstmal für wbb 2.3.x angepasst wird.
Distrubtor
Naja... nun frage ich mich allerdings wie man eine PHP funktion direkt nach dem Dateinamen also nach z.B index.php?fopen.... ausführen könnte!

Das sind doch alles get Daten...


Eine andere Sache währe es wenn man es bei index.php?action=blabla---Drop Table macht aber so ?`

Oder liege ich da falsch?
Bandy
Geht um folgendes.. es gibt immer wieder unsichere scripts oder globals..

viele sind ja geschlossen aber es werden ja immer wieder lücken gefunden.. und genau da setzt das teil an..

man hängt dann z.b. an eine datei am ende =blablabla an.. aber genau das hast du ja schon richtig geschrieben.

wenn es da nun eine gefunde lücke gibt durch nen exploit wird dann der "böse" Befehl aufgeführt. Genau das fängt dann das teil von vorne her ab.

Wenn man so will ein schutz vor dem schutz.. deshalb wurde ja auch erst das teil erweitert von 30 mögliche Angriffstechniken auf 176.

Die Prof. geht dann ja auch noch zusätzliche Wege.. wie flood control und diverse sachen mehr. Einiges gibt es ja schon als einzelhack.. muss da noch schauen, wie man das dann am besten berücksichtigt. Augenzwinkern
Cashhunter
Ne dumme Frage:
Muss ich das in jeder .php Datei vom Board ändern?
Bandy
Nein nur in die global.php Freude
Cashhunter
alles klar, hat gefunzt (das einbauen jedenfalls^^ danke!)
websurfer1989
Mal ne andere Frage....

Mal angenommen jemand versucht jetz sonne attacke auf mein Forum zu starten, und schaffft es nicht da diese vom hack geblockt wird, nun wird ja seine IP angeziegt und Browser, kann man da was machen, das man diese angriffe mit IP irgendwo aufgelistet kriegt also im ACP oder so, oder seh ich des als Admin gar nich????

greetz
Soccerboard-Besitzer
Ich glaube, diese Funktion soll erst in der Prof. Version drin sein.

Also funktioniert der Hack so: Wenn jemand mein Board aufruft und dann eingibt:
index.php=BLABLABLA...
Dann könnte das ein Befehl sein, der eine Sicherheitslücke ausnutzt. Und dafür muss ich nur in die global.php die eine Datei da includen, ne?
Bandy
Zitat:
Original von Soccerboard-Besitzer
Ich glaube, diese Funktion soll erst in der Prof. Version drin sein.

Also funktioniert der Hack so: Wenn jemand mein Board aufruft und dann eingibt:
index.php=BLABLABLA...
Dann könnte das ein Befehl sein, der eine Sicherheitslücke ausnutzt. Und dafür muss ich nur in die global.php die eine Datei da includen, ne?


Du musst es deshalb nur in die Globals packen, da diese übergreifend alle Scripte überprüft.

@websurfer1989 das kommt mit der Prof., da werden alle Angriffe geloggt.
24Bytes
und was ist, wenn es jemand versucht über eine Datei die die global.php nicht includet?
Bandy
Angriffe können ja nur dann schädlich werden, wenn man Befehle ausführt.. diese Befehle müssen dann zwangsweise auf die mysql zugreifen. Dort ist dann alles gespeichert. Und was auf mysql zugreift.. greift über global zu.

Es gibt aber wie ich schon oben schrieb, da andere Methoden. Diese wird es mit der Prof. geben.. Allerdings gibt es ja bereits diverse Lösungen, um das eine oder andere zu schützen.

Edit: Neue Version. 1. Post bitte die Anleitung auf Update 2.0.1 beachten.
Cashhunter
eine frage noch... ich habe jetzt einen link zur php datei in der global.php UND in der acp/global.php. ist das richtig?
Soccerboard-Besitzer
@Cashhunter: Ja


@Bandy: In der Anleitung sind zwei Fehler:
1. Du hast wahrscheinlich den Text fürs Update hier aus Y****** kopiert, deswegen steht da drin [php.../php]
2. z.B. im WbbLite findet man den Abschnitt, den man in der footer.tpl suchen soll, nicht.
Bandy
jupp und 2 mal den ctracker.php auf dem webspace..

einmal im hauptordner und einmal im Ordner /acp..

Um die Frage vorweg zu nehmen wieso 2 mal. Es handelt sich dabei nur um die Vorbereitung. Mit der Prof. wird es dann anders werden.

Zitat:
Original von Soccerboard-Besitzer
@Cashhunter: Ja


@Bandy: In der Anleitung sind zwei Fehler:
1. Du hast wahrscheinlich den Text fürs Update hier aus Y****** kopiert, deswegen steht da drin [php.../php]
2. z.B. im WbbLite findet man den Abschnitt, den man in der footer.tpl suchen soll, nicht.


Du meinst die Anleitung in der anleitung.txt?
Siehe 1. Post hier, da steht die Anleitung für wbblite.
fbli43
hey funkst perfekt aber hab 1 nicht verstanden
normalerweise muss ja da stehen, wieviele angriffe geblockt wurden und das steht leider bei mir nicht. ich benutze wbblite. und wo kann ich die ips checken, die angreifen??
danke
loodos
Zitat:
Original von fbli43
hey funkst perfekt aber hab 1 nicht verstanden
normalerweise muss ja da stehen, wieviele angriffe geblockt wurden und das steht leider bei mir nicht. ich benutze wbblite. und wo kann ich die ips checken, die angreifen??
danke


das kommt scheinbar alles erst in der prof. version Irre