Effektivere Honeypots durch Sensoren auf Produktivsystemen

© © monphoto, 123RF

Fallensteller

,
Computer sind heute einer stark wachsenden Bedrohung durch automatisierte Schadprogramme ausgesetzt. Ein Mittel, diese zu entlarven, sind sogenannte Honeypots. Damit sie möglichst viele Schädlinge leimen, lassen sich ihre Sensoren auch auf gewöhnliche Produktivsysteme verteilen.
Security ist ein stets aktuelles Thema in der IT. Deshalb widmet sich das ADMIN-Magazin 04/2012 speziell Sicherheitsaspekten und gibt Antworten auf die Fragen: ... (mehr)

Die Anzahl automatisierter Schadprogramme, die sich selbstständig über das Internet verbreiten, ist gerade in den letzten Jahren explodiert ( Abbildung 1 ). Einzelne Quellen berichten von über 286 Millionen neuen Schadprogrammen, die alleine im Jahr 2010 registriert wurden. Dabei ist die Dunkelziffer noch gar nicht berücksichtigt.

Abbildung 1: Die Anzahl der Schadprogramme im Internet ist in den letzten Jahren explodiert. Die Zahlen stammen vom AV-TEST Institute , das täglich über 55 000 bösartige Programme registriert.

Tatsächlich bringen viele dieser neuen Schadprogramme gar keine neuartigen Funktionen mit, sondern verwenden stattdessen poly- oder metamorphen Code, der regelmäßig neue, leicht veränderte Varianten eines Schadprogramms mit praktisch identischer Funktion generiert. Das verändert die Struktur des Schadprogramms so, dass es klassische, signaturbasierte Erkennungsverfahren nicht länger finden. Um dennoch eine signaturbasierte Erkennung zu ermöglichen, wie sie etwa Virenscanner oder Intrusion Detection Systeme verwenden, sind regelmäßig aktualisierte Signaturdatenbanken erforderlich. Um alle neu erkannten Schadprogramme eindeutig einer solchen Signatur zuordnen zu können, wären dazu jedoch im Schnitt mehr als 38 neue Signaturen pro Minute nötig.

Diese Zahl macht deutlich, dass signaturbasierte Verfahren allein nicht alle aktuellen Schadprogramme zuverlässig zu erkennen vermögen.

Neue Erkennungsmethoden

Um die Verbreitung solcher Schadprogramme dennoch zu registrieren, benötigt man zusätzlich andere Erkennungsmethoden wie zum Beispiel Honeypots. Sie sind in der Lage, auch unbekannte Angriffe ohne die Hilfe von Signaturen zu registrieren, wenn sie auf eine der extra bereitgestellten Verwundbarkeiten abzielen. Da Honeypots jedoch ausschließlich direkte Angriffe auf ihre eigenen Ressourcen erkennen, stößt eine umfassende Netzüberwachung mit ihrer Hilfe oft an Kapazitätsgrenzen. Das betrifft sowohl den Administrations- wie den Auswerteaufwand. Einen Ausweg bietet ein neuartiger Ansatz, den dieser Beitrag vorstellen möchte.

Ob Honeypots Angriffe registrieren können, hängt letztlich auch davon ab, ob es einem Angreifer möglich ist, den Honeypot als solchen zu erkennen. Das gilt insbesondere für menschliche, technisch versierte Angreifer. Verfügen sie etwa über Informationen über die Netzinfrastruktur oder die Adresse des für sie interessanten Systems, können sie so vorgehen, dass der Honeypot den Angriff nicht erkennt. Verfügt der Angreifer dagegen über keine detaillierten Informationen über das angegriffene Netz, wird er typischer Weise versuchen, mithilfe aktiver Scan-Verfahren potenziell verwundbare Dienste aufzuspüren.

Eine zweite Gefahr besteht darin, dass der Angreifer den Honeypot an der charakteristischen Auswahl an Diensten erkennt, die er anbietet. Diesem Problem kann man begegnen, indem man die Honeypots in regelmäßigen Abständen an reale Produktivsysteme anpasst. Das bringt jedoch zusätzlichen Aufwand und eine Einschränkung der Sichtbarkeit einzelner Honeypots mit sich.

HoneypotMe

Um dennoch eine umfassende Netzüberwachung auf Basis von Honeypots zu ermöglichen, basiert der Ansatz von HoneypotMe darauf, Honeypot-Sensorik flexibel auf Produktivsysteme auszulagern. Konkret bewerkstelligt das die Software dadurch, dass sie einzelne Ports als Honeypot verwendet. Tatsächlich stellen viele Produktivsysteme nämlich nur eine geringe Anzahl von Diensten bereit, die über das Netz erreichbar und so von Schadprogrammen oder manuellen Angreifern ausnutzbar sind. Ist ein solcher Dienst auf einem Produktivsystem nicht verfügbar, so sollte auch keine Interaktion mit dem entsprechenden Port feststellbar sein. Kommt es dennoch zu Zugriffsversuchen, so wird der Verbindungsaufbauversuch in der Regel automatisch vom TCP-Stack des angegriffenen Systems abgelehnt oder bereits vorher von entsprechend restriktiven Firewall-Regeln blockiert. In beiden Fällen können jedoch keine weiteren Informationen über den fehlgeschlagenen Versuch gesammelt werden, auch wenn dies möglich gewesen wäre. Wäre die Verbindung stattdessen von einem Honeypot angenommen und ausgewertet worden, so hätte er einen möglichen Infektionsversuch direkt erkannt. Es liegt also nahe, solche ungenutzten Ports auch auf Produktivsystemen als Honeypot zu verwenden und so unerwünschte Verbindungen detailliert auszuwerten.

Abbildung 2: Schematische Darstellung der Funktionsweise von HoneypotMe.
comments powered by Disqus
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Ausgabe /2023