Honigtöpfe und Honignetze

Honeypots Honeynets



Dieses Tutorial erklärt, was Honeypots und Honeynets sind und wie sie funktionieren, einschließlich eines praktischen Implementierungsbeispiels.

Ein Teil der Arbeit von Sicherheits-IT-Spezialisten besteht darin, sich über die Arten von Angriffen oder Techniken zu informieren, die von Hackern verwendet werden, indem Informationen zur späteren Analyse gesammelt werden, um die Merkmale der Angriffsversuche zu bewerten. Manchmal erfolgt diese Sammlung von Informationen durch Köder oder Köder, die darauf ausgelegt sind, verdächtige Aktivitäten potenzieller Angreifer zu registrieren, die handeln, ohne zu wissen, dass ihre Aktivitäten überwacht werden. In der IT-Sicherheit werden diese Köder oder Köder genannt Honigtöpfe .







Was sind Honeypots und Honeynets:

ZU Honigtopf kann eine Anwendung sein, die ein Ziel simuliert, das in Wirklichkeit die Aktivität von Angreifern aufzeichnet. Es werden mehrere Honeypots bezeichnet, die mehrere Dienste, Geräte und Anwendungen simulieren Honignetze .



Honeypots und Honeynets speichern keine sensiblen Informationen, sondern speichern gefälschte attraktive Informationen für Angreifer, um sie für die Honeypots zu interessieren; Mit anderen Worten, Honeynets sprechen von Hackerfallen, die ihre Angriffstechniken erlernen sollen.



Honeypots bieten uns zwei Vorteile: Erstens helfen sie uns, Angriffe zu erlernen, um unser Produktionsgerät oder unser Netzwerk richtig abzusichern. Zweitens halten wir die Aufmerksamkeit der Hacker von gesicherten Geräten fern, indem wir Honeypots, die Schwachstellen simulieren, neben Produktionsgeräten oder Netzwerken halten. Sie werden die Honeypots attraktiver finden, die Sicherheitslücken simulieren, die sie ausnutzen können.





Honeypot-Typen:

Produktion Honeypots:
Diese Art von Honeypot wird in einem Produktionsnetzwerk installiert, um Informationen über Techniken zu sammeln, die zum Angriff auf Systeme innerhalb der Infrastruktur verwendet werden. Diese Art von Honeypot bietet eine Vielzahl von Möglichkeiten, von der Position des Honeypots innerhalb eines bestimmten Netzwerksegments, um interne Versuche legitimer Netzwerkbenutzer zu erkennen, auf unerlaubte oder verbotene Ressourcen zuzugreifen, bis hin zu einem Klon einer Website oder eines Dienstes, der mit dem identisch ist Original als Köder. Das größte Problem dieser Art von Honeypot besteht darin, bösartigen Datenverkehr zwischen legitimen zuzulassen.

Entwicklungs-Honeypots:
Diese Art von Honeypot wurde entwickelt, um mehr Informationen über Hacking-Trends, gewünschte Ziele von Angreifern und Angriffsherkunft zu sammeln. Diese Informationen werden später für den Entscheidungsprozess über die Implementierung von Sicherheitsmaßnahmen analysiert.
Der Hauptvorteil dieser Art von Honeypots ist im Gegensatz zur Produktion; Honeypots-Entwicklung Honeypots befinden sich in einem unabhängigen Forschungsnetzwerk; Dieses verwundbare System ist von der Produktionsumgebung getrennt, um einen Angriff aus dem Honeypot selbst zu verhindern. Sein Hauptnachteil ist die Anzahl der Ressourcen, die für die Implementierung erforderlich sind.



Es gibt 3 verschiedene Honeypot-Unterkategorien oder Klassifizierungstypen, die durch die Interaktionsebene mit Angreifern definiert werden.

Honeypots mit geringer Interaktion:

Ein Honeypot emuliert einen anfälligen Dienst, eine App oder ein System. Dies ist sehr einfach einzurichten, aber beim Sammeln von Informationen eingeschränkt; einige Beispiele für diese Art von Honeypots sind:

  • Honigfalle : Es wurde entwickelt, um Angriffe auf Netzwerkdienste zu beobachten; Im Gegensatz zu anderen Honeypots, die sich auf die Erfassung von Malware konzentrieren, ist diese Art von Honeypot darauf ausgelegt, Exploits zu erfassen.
  • Nephentes : emuliert bekannte Schwachstellen, um Informationen über mögliche Angriffe zu sammeln; Es wurde entwickelt, um Schwachstellen zu emulieren, die Würmer ausnutzen, um sich zu verbreiten, und Nephentes erfasst ihren Code für eine spätere Analyse.
  • HonigC : identifiziert bösartige Webserver innerhalb des Netzwerks, indem verschiedene Clients emuliert und Serverantworten bei der Beantwortung von Anfragen gesammelt werden.
  • HonigD : ist ein Daemon, der virtuelle Hosts in einem Netzwerk erstellt, die so konfiguriert werden können, dass beliebige Dienste ausgeführt werden, die die Ausführung in verschiedenen Betriebssystemen simulieren.
  • Glastopf : emuliert Tausende von Schwachstellen, die darauf ausgelegt sind, Angriffsinformationen gegen Webanwendungen zu sammeln. Es ist einfach einzurichten und einmal von Suchmaschinen indiziert; es wird ein attraktives Ziel für Hacker.

Honeypots mit mittlerer Interaktion:

In diesem Szenario sind Honeypots nicht nur darauf ausgelegt, Informationen zu sammeln; Es handelt sich um eine Anwendung, die entwickelt wurde, um mit Angreifern zu interagieren, während die Interaktionsaktivität umfassend registriert wird; es simuliert ein Ziel, das in der Lage ist, alle Antworten zu geben, die der Angreifer erwarten kann; einige Honeypots dieser Art sind:

  • Cowrie: Ein SSH- und Telnet-Honeypot, der Brute-Force-Angriffe und Hacker-Shell-Interaktionen protokolliert. Es emuliert ein Unix-Betriebssystem und fungiert als Proxy, um die Aktivitäten des Angreifers zu protokollieren. Nach diesem Abschnitt finden Sie Anweisungen zur Cowrie-Implementierung.
  • Klebriger_Elefant : Es ist ein PostgreSQL-Honeypot.
  • Hornisse : Eine verbesserte Version von Honeypot-wasp mit gefälschten Anmeldeinformationen, die für Websites mit öffentlich zugänglicher Anmeldeseite für Administratoren entwickelt wurde, z. B. /wp-admin für WordPress-Sites.

Honeypots mit hoher Interaktion:

In diesem Szenario sind Honeypots nicht nur darauf ausgelegt, Informationen zu sammeln; Es handelt sich um eine Anwendung, die entwickelt wurde, um mit Angreifern zu interagieren, während die Interaktionsaktivität umfassend registriert wird; es simuliert ein Ziel, das in der Lage ist, alle Antworten zu geben, die der Angreifer erwarten kann; einige Honeypots dieser Art sind:

  • Wunden : arbeitet als HIDS (Host-based Intrusion Detection System), das die Erfassung von Informationen über die Systemaktivität ermöglicht. Dies ist ein Server-Client-Tool, das Honeypots unter Linux, Unix und Windows bereitstellen kann, die die gesammelten Informationen erfassen und an den Server senden.
  • Honigbogen : kann in Honeypots mit geringer Interaktion integriert werden, um die Informationssammlung zu erhöhen.
  • HI-HAT (High Interaction Honeypot Analysis Toolkit) : wandelt PHP-Dateien in hochinteraktionsstarke Honeypots um, wobei eine Webschnittstelle zur Überwachung der Informationen verfügbar ist.
  • Capture-HPC : ähnlich wie HoneyC, identifiziert bösartige Server, indem es mit Clients über eine dedizierte virtuelle Maschine interagiert und nicht autorisierte Änderungen registriert.

Unten finden Sie ein praktisches Beispiel für einen Honeypot mit mittlerer Interaktion.

Einsatz von Cowrie zum Sammeln von Daten zu SSH-Angriffen:

Wie bereits erwähnt, ist Cowrie ein Honeypot, der verwendet wird, um Informationen über Angriffe aufzuzeichnen, die auf den SSH-Dienst abzielen. Cowrie simuliert einen anfälligen SSH-Server, der es jedem Angreifer ermöglicht, auf ein gefälschtes Terminal zuzugreifen, und simuliert einen erfolgreichen Angriff, während die Aktivität des Angreifers aufgezeichnet wird.

Damit Cowrie einen gefälschten anfälligen Server simulieren kann, müssen wir ihn Port 22 zuweisen. Daher müssen wir unseren echten ssh-Port ändern, indem wir die Datei bearbeiten /etc/ssh/sshd_config Wie nachfolgend dargestellt.

sudo Nano /etc/ssh/sshd_config

Bearbeiten Sie die Zeile und ändern Sie sie für einen Port zwischen 49152 und 65535.

Hafen22

Starten Sie neu und prüfen Sie, ob der Dienst ordnungsgemäß ausgeführt wird:

sudosystemctl neu startenssh
sudoSystemctl-Statusssh

Installieren Sie alle erforderliche Software für die nächsten Schritte, auf Debian-basierten Linux-Distributionen, die ausgeführt werden:

sudogeeignetInstallieren -undpython-virtualenv libssl-dev libffi-dev build-essential libpython3-dev python3-minimal authbindgehen

Fügen Sie einen nicht privilegierten Benutzer namens cowrie hinzu, indem Sie den folgenden Befehl ausführen.

sudoNutzer hinzufügen--disabled-passwordKaurischnecke

Auf Debian-basierten Linux-Distributionen installieren Sie authbind, indem Sie den folgenden Befehl ausführen:

sudogeeignetInstallierenauthbind

Führen Sie den folgenden Befehl aus.

sudo berühren /etc/authbind/Nebenhafen/22

Ändern Sie den Besitzer, indem Sie den folgenden Befehl ausführen.

sudo chownKauri: Kauri/etc/authbind/Nebenhafen/22

Berechtigungen ändern:

sudo chmod 770 /etc/authbind/Nebenhafen/22

Anmelden als Kaurischnecke

sudo es istKaurischnecke

Gehe in das Home-Verzeichnis von Kauri.

CD~

Laden Sie Kauri-Honigtopf mit Git wie unten gezeigt herunter.

Git-Klonhttps://github.com/micheloosterhof/Kaurischnecke

Wechseln Sie in das Kauri-Verzeichnis.

CDKaurischnecke/

Erstellen Sie eine neue Konfigurationsdatei basierend auf der Standarddatei, indem Sie sie aus der Datei kopieren /etc/cowrie.cfg.dist zu cowrie.cfg indem Sie den unten gezeigten Befehl im Verzeichnis von Cowrie ausführen.

cpetc/cowrie.cfg.dist usw./kauri.cfg

Bearbeiten Sie die erstellte Datei:

Nanoetc/kauri.cfg

Finden Sie die Zeile unten.

listen_endpoints = tcp:2222:Schnittstelle= 0.0.0.0

Bearbeiten Sie die Zeile und ersetzen Sie Port 2222 durch 22, wie unten gezeigt.

listen_endpoints = tcp:22:Schnittstelle= 0.0.0.0

Speichern und beenden Sie nano.

Führen Sie den folgenden Befehl aus, um eine Python-Umgebung zu erstellen:

virtualenv kauri-env

Aktivieren Sie eine virtuelle Umgebung.

QuelleKauri-Env/bin/aktivieren Sie

Aktualisieren Sie pip, indem Sie den folgenden Befehl ausführen.

PipInstallieren --AktualisierungPip

Installieren Sie alle Anforderungen, indem Sie den folgenden Befehl ausführen.

PipInstallieren --upgraderanforderungen.txt

Führen Sie Kauri mit dem folgenden Befehl aus:

bin/Kauristart

Überprüfen Sie, ob der Honeypot zuhört, indem Sie ihn ausführen.

netstat -so

Jetzt werden Anmeldeversuche an Port 22 in der Datei var/log/cowrie/cowrie.log im Verzeichnis von cowrie protokolliert.

Wie bereits erwähnt, können Sie mit dem Honeypot eine gefälschte angreifbare Hülle erstellen. Cowries enthält eine Datei, in der Sie Benutzer mit Zugriff auf die Shell definieren können. Dies ist eine Liste von Benutzernamen und Passwörtern, über die ein Hacker auf die gefälschte Shell zugreifen kann.

Das Listenformat ist in der folgenden Abbildung dargestellt:

Sie können die Kauri-Standardliste zu Testzwecken umbenennen, indem Sie den folgenden Befehl aus dem Kauri-Verzeichnis ausführen. Auf diese Weise können sich Benutzer mit einem Passwort als Root anmelden Wurzel oder 123456 .

mvetc/userdb.example usw./userdb.txt

Stoppen und starten Sie Cowrie neu, indem Sie die folgenden Befehle ausführen:

bin/Kauristopp
bin/Kauristart

Testen Sie nun den Zugriff über ssh mit einem Benutzernamen und einem Passwort, die in der userdb.txt aufführen.

Wie Sie sehen, greifen Sie auf eine gefälschte Shell zu. Und alle Aktivitäten in dieser Shell können aus dem Kauri-Log überwacht werden, wie unten gezeigt.

Wie Sie sehen, wurde Cowrie erfolgreich implementiert. Mehr über Cowrie erfahren Sie unter https://github.com/cowrie/ .

Abschluss:

Die Implementierung von Honeypots ist keine übliche Sicherheitsmaßnahme, aber wie Sie sehen, ist es eine großartige Möglichkeit, die Netzwerksicherheit zu erhöhen. Die Implementierung von Honeypots ist ein wichtiger Teil der Datensammlung mit dem Ziel, die Sicherheit zu verbessern und Hacker zu Kollaborateuren zu machen, indem sie ihre Aktivitäten, Techniken, Anmeldeinformationen und Ziele offenlegen. Es ist auch eine beeindruckende Möglichkeit, Hackern gefälschte Informationen bereitzustellen.

Wenn Sie sich für Honeypots interessieren, könnten wahrscheinlich IDS (Intrusion Detection Systems) für Sie interessant sein; Bei LinuxHint haben wir ein paar interessante Tutorials dazu:

  • Snort IDS konfigurieren und Regeln erstellen
  • Erste Schritte mit OSSEC (Intrusion Detection System)

Ich hoffe, Sie fanden diesen Artikel über Honeypots und Honeynets hilfreich. Befolgen Sie den Linux-Hinweis für weitere Linux-Tipps und -Tutorials.