Integrity Check
Aus Contao Community Documentation
Früherkennung von gehackten Contao Installationen durch Änderungen von Dateien.
Erweiterungs-Übersicht | |
---|---|
Name des Entwicklers | Glen Langer (BugBuster) |
Entwickler Webseite | http://www.contao.glen-langer.de |
Version der Erweiterung | 0.2.0 rc1 |
Kompatibilität mit Contao Version | ab 2.10.0 |
Link zum Extension Repository | http://www.contao.org/de/extension-list/view/integrity_check.de.html |
Den Entwickler unterstützen | http://www.amazon.de/wishlist/26HHEJOU03G76 |
Link zum Tracker | https://github.com/BugBuster1701/integrity_check/issues |
Wie es dazu kommen kann, und das dabei in den meisten Fällen nicht Contao selbst schuldig ist, kann hier nachgelesen werden: Contao gehackt
Nun muss mal das natürlich noch selber merken, möglichst bevor Google die Seite sperrt.
Inhaltsverzeichnis
Forum
Fragen zum Integrity Check Modul werden im Forum beantwortet: Forum
Fehler und Wünsche können im Tracking System gemeldet werden.
Installation
Installation erfolgt über das Extension Repository im Backend der Contao Installation.
Eine manuelle Installation ist möglich, dazu die ZIP Datei vom Extension Repository laden, entpacken und entsprechend übertragen.
Dadurch sollte ein Verzeichnis /system/modules/integrity_check angelegt worden sein.
Danach wie dabei üblich /contao/install.php aufrufen um ein eventuelles Update der Datenbank durchführen. (nur bei manueller Installation)
Installation als Update
Ein Update erfolgt identisch der Installation.
Infektionsbeispiel
Wie sieht nun eine solcher Hack aus?
Im den von mir betrachteten Fällen war es ein Anhang an die index.php der zur Ausführung kam, wenn die Seite nicht aus dem Server-Cache kam.
Dieser sah in etwa so aus (gekürzt):
#c3284d# echo(gzinflate(base64_decode("ZZBNisMwDIX.......T7oD"))); #/c3284d#
Funktion
In der jetzigen Version 0.2.0 werden die drei wichtigsten PHP Files prüft auf Veränderungen.
Geprüft werden:
- index.php
- contao/index.php
- contao/main.php
Prüfzeitpunkt
Dieser Test wird täglich automatisch durchgeführt über den Contao-Cron Mechanismus.
Erkennung
Die Prüfung erfolgt identisch zum offiziellem Contao Check Tool, d.h. über MD5 Checksummen. Es werden die Checksummen für Contao ab 2.10.0 zum Vergleich herangezogen bis zur jeweils freigegebenen Contao Version.
Information
Im Backend kann unter System - System-Log nach dem Ergebnis geschaut werden. Normalerweise, wenn alles OK ist, taucht dort nur eine Meldung auf:
- Integritäts-Überprüfung der Dateien abgeschlossen.
Wenn Veränderungen entdeckt werden, dann erfolgt eine entsprechende Meldung je Datei die es betrifft:
- Integritäts-Status für Datei index.php ist: beschädigt
Eine Information per Mail ist möglich, siehe dazu den Punkt Mail_zum_Admin.
Feinheiten
Prüfzeitpunkt
Der Prüfzeitpunkt kann über die localconfig.php geändert werden, z.B. können Contao 2.11 Nutzer hier auf stündliche Prüfung umschalten. Dazu wird in der localconfig.php folgende Zeile am Ende der Datei eingetragen:
$GLOBALS['TL_CRON']['hourly'][] = array('Integrity_Check', 'checkFiles');
Mail zum Admin
Eine Information per Mail an den Admin der Installation ist möglich. Dazu muss, derzeit noch per Hand, in die localconfig.php eine Zeile am Ende der Datei eingetragen werden:
$GLOBALS['TL_CONFIG']['mod_integrity_check']['send_email_to_admin'] = true;
Debug Modus
Normalerweise gibt das Modul nur eine "fertig" Meldung aus im System-Log. Will man sehen welche Dateien geprüft wurden und somit ob überhaupt, kann der moduleigene Debug Modus eingeschaltet werden. Dazu muss, derzeit noch per Hand, in die localconfig.php eine Zeile am Ende der Datei eingetragen werden:
$GLOBALS['TL_CONFIG']['mod_integrity_check']['debug'] = true;
--BugBuster 21:44, 31. Jul. 2012 (CEST)