Nach der Kompromittierung eines Servers verwischt der Hacker meist seine Spuren, indem er sie aus den Logs herauslöscht. Außerdem installiert er bestimmte Tools, die es ihm gestatten, eine versteckte Tür zu erzeugen, durch die er später zurückkehren kann.
Des weiteren bessert er oft die Schwachstelle aus, über die er Zugriff erhalten hat, um zu vermeiden, dass andere Hacker eindringen.
Es gibt allerdings einige Administrationsbefehle, die über seine Präsenz am Server Auskunft geben kann, welche die laufenden Prozesse anzeigen oder einfach nur die User, die gerade mit dem Rechner verbunden sind. Daher gibt es bestimmte Software-Programme, genannt rootkits, die den Großteil der System- Tools ausschalten und durch gleichartige Befehle ersetzen sollen, die die Präsenz des Hackers maskieren.
Daher ist es unschwer zu begreifen, dass es für einen Administrator sehr schwer sein kann, festzustellen, dass ein Rechner kompromittiert wurde, wenn keine offensichtlichen Schäden auftreten. Stellt man eine Kompromittierung fest, besteht einer der ersten Schritte darin, sie zu datieren, um eine eventuelle Ausbreitung auf andere Server auszumachen.
In der Regel speichern Server Spuren ihrer Aktivität - und vor allem aufgetretener Fehler - in bestimmten Dateien.
Bei einem Computerangriff ist es sehr selten, dass es dem Hacker bereits beim ersten Versuch gelingt, ein System zu kompromittieren. Meist geht er nach dem Trial-and-Error Prinzip vor und probiert verschiedene Anfragen.
So kann eine Überwachung der Logs verdächtige Aktivitäten aufdecken. Vor allem ist es wichtig, die Logs der Sicherheitsvorkehrungen zu verfolgen, da sie zum Ziel von Angriffen werden können, egal, wie gut sie konfiguriert sind.
Es gibt bestimmte Programme (chkrootkit , zum Beispiel), mit denen man die Präsenz von rootkits am System feststellen kann. Um solche Tools nutzen zu können, ist es aber wichtig, Sicherheit über die Integrität des Tools und der von ihm gelieferten Ausgaben zu haben. Ein kompromittiertes System kann nicht als vertraulich angesehen werden.
Um die Integrität eines Systems sicherzustellen, ist es also nötig, frühere Kompromittierungen festzustellen. Dies ist daher das Ziel von Integritäts-Controllern wie Tripwire.
Die Software Tripwire, 1992 von Eugene Spafford und Gene Kim entwickelt, ermöglicht die Sicherstellung der Integrität von Systemen, indem es permanent die Modifikationen an bestimmten Dateien oder Verzeichnissen mitverfolgt. Tripwire führt also eine Integritätskontrolle durch, und aktualisiert eine Signaturen-Basis. In regelmäßigen Abständen werden die folgenden Eigenschaften von Dateien kontrolliert, um Modifikationen und eventuelle Kompromittierungen festzustellen :
Warnungen werden per Mail versendet, bevorzugt über einen fremden Server, um zu verhindern, dass sie vom Hacker entfernt werden.
Will man sich auf Ergebnisse eines Integritäts-Controllers stützen, ist es wichtig, Sicherheit über die Integrität des Rechners bei der Installation zu haben. Außerdem ist diese Art von Software sehr schwer zu konfigurieren, da die mögliche Anzahl der zu überwachenden Dateien beträchtlich sein kann. Außerdem ist beim Installieren neuer Anwendung notwendig, ihre Konfigurationsdateien unter Kontrolle zu stellen.
Des weiteren kann solch eine Lösung viele Falschwarnungen hervorbringen, vor allem, wenn das System die Konfigurationsdateien selbst modifiziert, oder bei Systemupdates.
Im Falle einer tatsächlichen Kompromittierung des Systems kann es sein, dass der Hacker versucht, den Integritäts-Controller vor dem nächsten Update zu kompromittieren, daher ist es wichtig, die Warnungen auf einem fremden Rechner oder externen, nicht wiederbeschreibbaren Medium zu speichern.
Artikel verfasst am 22 Mai 2006 von Jean-François PILLOU.
Letzte Änderung am Mittwoch 1 April 2009 à 14:16:21.