Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/thinkst/opencanary
DefensivwerkzeugeNetzwerksicherheitBedrohungsanalyseEinbruchserkennungIncident ResponseLog-Analyse
GitHubthinkst/opencanary

opencanary

Ressourcenschonender Honeypot, der gängige Netzwerkdienste emuliert, um Angreiferaktivitäten nach einem Einbruch zu erkennen, mit erweiterbaren Protokollmodulen und konfigurierbarer Alarmierung.

Repository anzeigen
3.0k41478vor 9 TagenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Webseite
Teilen

OpenCanary von Thinkst Canary

OpenCanary ist ein Netzwerk-Honeypot mit mehreren Protokollen. Sein primärer Einsatzzweck ist es, Hacker zu fangen, nachdem sie in nicht-öffentliche Netzwerke eingedrungen sind. Er hat extrem geringe Ressourcenanforderungen und kann angepasst, modifiziert und erweitert werden.

OpenCanary Tests Docker build Publish to PyPI

Überblick

OpenCanary läuft als Daemon und implementiert mehrere gängige Netzwerkprotokolle. Wenn Angreifer in Netzwerke eindringen und mit dem Honeypot interagieren, sendet OpenCanary Ihnen über verschiedene Mechanismen Alarme.

OpenCanary ist in Python implementiert, daher ist der Kern-Honeypot plattformübergreifend; einige Funktionen erfordern jedoch bestimmte Betriebssysteme. Der Betrieb unter Linux bietet Ihnen die meisten Optionen. Er hat extrem geringe Ressourcenanforderungen; zum Beispiel lässt er sich problemlos auf einem Raspberry Pi oder einer VM mit minimalen Ressourcen bereitstellen.

Diese README beschreibt, wie OpenCanary unter Ubuntu Linux und macOS installiert und konfiguriert wird.

OpenCanary ist die Open-Source-Version unseres kommerziellen Thinkst Canary Honeypots.

Inhaltsverzeichnis

  • Voraussetzungen
  • Funktionen
  • Installation
    • Installation unter Ubuntu
    • Installation unter macOS
    • Installation per Git
    • Installation für Docker
  • OpenCanary konfigurieren
    • Erstellen der initialen Konfiguration
    • Aktivieren von Protokollmodulen und Alarmierung
    • Optionale Module
      • SNMP
      • Portscan
      • Samba-Setup
  • OpenCanary ausführen
    • Direkt unter Linux oder macOS
    • Mit docker compose
    • Mit Docker
  • Dokumentation
  • Projektbeteiligung
    • Beitragen
    • Meldung von Sicherheitslücken
    • Fehlerberichte
    • Feature-Anfragen
    • Verhaltenskodex

Voraussetzungen

  • AMD64: Python 3.10+
  • ARM64: Python 3.10+
  • Optional erfordert SNMP die Python-Bibliothek Scapy
  • Optional benötigt das Samba-Modul eine funktionierende Samba-Installation
  • Optional verwendet Portscan iptables (nicht nftables) und wird nur auf Linux-basierten Betriebssystemen unterstützt

Funktionen

  • Eine Reihe von netzwerkzugänglichen Diensten nachahmen, mit denen Angreifer interagieren können.
  • Erhalten Sie vielfältige Alarme, sobald potenzielle Bedrohungen erkannt werden, die die Quell-IP-Adresse der Bedrohung und den Ort des möglichen Einbruchs hervorheben.

Installation

Die Installation von OpenCanary umfasst im Wesentlichen die Vorbereitung der Python-Umgebung und anschließend die Installation des OpenCanary-Python-Pakets (plus optionaler Zusätze).

Wenn uv installiert ist, können Sie es zur Erstellung der virtuellen Umgebung und zur Paketinstallation verwenden. Falls es nicht installiert ist, funktioniert der unten beschriebene Standardablauf mit python/pip weiterhin.

Installation unter Ubuntu

Installation unter Ubuntu 22.04 LTS oder 24.04 LTS:

root@kitploit:~
$ sudo apt-get install python3-dev python3-pip python3-virtualenv python3-venv python3-scapy libssl-dev libpcap-dev
$ virtualenv env/
$ . env/bin/activate
$ pip install opencanary

Optional mit uv:

root@kitploit:~
$ uv venv env
$ . env/bin/activate
$ uv pip install opencanary

Optionale Zusatzpakete (falls Sie das Windows-Dateifreigabe-Modul und das SNMP-Modul verwenden möchten):

root@kitploit:~
$ sudo apt install samba # if you plan to use the Windows File Share module
$ pip install scapy pcapy-ng # if you plan to use the SNMP module

Installation unter macOS

Erstellen und aktivieren Sie zunächst eine neue virtuelle Python-Umgebung:

root@kitploit:~
$ virtualenv env/
$ . env/bin/activate

Optional mit uv:

root@kitploit:~
$ uv venv env
$ . env/bin/activate

Macports-Benutzer sollten anschließend Folgendes ausführen:

root@kitploit:~
$ sudo port install openssl
$ env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/opt/local/lib" CFLAGS="-I/opt/local/include" pip install cryptography

Alternativ führen Homebrew-x86-Benutzer Folgendes aus:

root@kitploit:~
$ brew install openssl
$ env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography

Homebrew-M1-Benutzer führen Folgendes aus:

root@kitploit:~
$ brew install openssl
$ env ARCHFLAGS="-arch arm64" LDFLAGS="-L/opt/homebrew/opt/[email protected]/lib" CFLAGS="-I/opt/homebrew/opt/[email protected]/include" pip install cryptography

(Der obige Kompilierungsschritt ist notwendig, da mehrere OpenSSL-Versionen vorhanden sein können, die die Python-Bibliotheken durcheinanderbringen können.)

Nun kann die Installation wie gewohnt ausgeführt werden:

root@kitploit:~
$ pip install opencanary
$ pip install scapy pcapy-ng # optional

Mit installiertem uv lauten die entsprechenden Befehle:

root@kitploit:~
$ uv pip install opencanary
$ uv pip install scapy pcapy-ng # optional

Das Windows-Dateifreigabe-Modul (smb) ist unter macOS nicht verfügbar.

Installation per Git

Um aus dem Quellcode zu installieren, führen Sie anstelle von pip Folgendes aus:

root@kitploit:~
$ git clone https://github.com/thinkst/opencanary
$ cd opencanary
$ python setup.py sdist
$ cd dist
$ pip install opencanary-<version>.tar.gz

Mit installiertem uv können Sie den letzten Installationsschritt wie folgt ersetzen:

root@kitploit:~
$ uv pip install opencanary-<version>.tar.gz

Nutzung über pkgx

OpenCanary ist über pkgx paketiert. Wenn pkgx installiert ist, ist keine Installation erforderlich; stellen Sie einfach dem Befehl opencanaryd ein pkgx voran. Aufgrund der Schutzmechanismen für Umgebungsvariablen in modernen sudo-Implementierungen muss der gesamte Befehl als root oder über sudo -E ausgeführt werden.

root@kitploit:~
$ pkgx opencanaryd --version

Installation für Docker

OpenCanary-Docker-Images werden auf Docker Hub gehostet. Sie sind nur auf Linux-Docker-Hosts nützlich, da für genaue Netzwerkinformationen die host-Netzwerk-Engine erforderlich ist.

OpenCanary konfigurieren

Erstellen der initialen Konfiguration

Wenn OpenCanary startet, sucht es in den folgenden Verzeichnissen nach Konfigurationsdateien und beendet die Suche, sobald die erste Konfiguration gefunden wird:

  1. /etc/opencanaryd/opencanary.conf
  2. ~/.opencanary.conf (d. h. das Benutzerverzeichnis des Benutzers, normalerweise root, also /root/.opencanary.conf)
  3. ./opencanary.conf (d. h. das Verzeichnis, in dem OpenCanary installiert ist)

Um eine initiale Konfiguration zu erstellen, führen Sie den folgenden Befehl als root aus (möglicherweise werden Sie nach einem sudo-Passwort gefragt):

root@kitploit:~
$ opencanaryd --copyconfig
[*] A sample config file is ready /etc/opencanaryd/opencanary.conf

[*] Edit your configuration, then launch with "opencanaryd --start --uid=nobody --gid=nogroup"

Dadurch werden der Pfad und die Datei /etc/opencanaryd/opencanary.conf erstellt. Sie müssen nun die Konfigurationsdatei bearbeiten, um festzulegen, welche Dienste und Protokollierungsoptionen Sie aktivieren möchten.

[!WARNING] Die Konfigurationsdatei enthält komplexe Daten, einschließlich Python-Objekten für die Protokollierungskonfiguration. Die Konfiguration wird gelesen, während der Prozess mit Root-Berechtigungen läuft. Wir empfehlen, die Datei im Besitz von root zu belassen und nur für root beschreibbar zu machen. Wenn normale Benutzer die Datei schreiben können, ist eine Privilege-Escalation zu root möglich.

Aktivieren von Protokollmodulen und Alarmierung

Die Konfiguration erfolgt über die JSON-Konfigurationsdatei. Bearbeiten Sie die Datei und speichern und schließen Sie sie, wenn Sie zufrieden sind.

Optionale Module

SNMP

Das snmp-Modul ist nur verfügbar, wenn Scapy vorhanden ist. Siehe die Installationsschritte für SNMP oben.

Portscan

Das portscan-Modul ist nur auf Linux-Hosts verfügbar, da es iptables-Regeln modifiziert.

Bitte beachten Sie, dass wir für den Portscan-Dienst eine Einstellung portscan.ignore_localhost hinzugefügt haben. Das bedeutet, dass der OpenCanary-portscan-Dienst Portscans ignoriert (keinen Alarm auslöst), die von der Localhost-IP (127.0.0.1) ausgehen. Diese Einstellung ist standardmäßig deaktiviert.

Samba-Setup

Das Windows-Dateifreigabe-Modul (smb) erfordert eine Samba-Installation. Eine Schritt-für-Schritt-Anleitung finden Sie im Wiki.

OpenCanary ausführen

OpenCanary wird entweder direkt auf einem Linux- oder macOS-Host oder über einen Docker-Container ausgeführt.

Direkt unter Linux oder macOS

Starten Sie OpenCanary mit dem folgenden Befehl:

root@kitploit:~
$ . env/bin/activate
$ opencanaryd --start --uid=nobody --gid=nogroup

Mit den Flags uid und gid gibt OpenCanary die Root-Berechtigungen nach dem Binden an seine Ports auf. Dies kann auf einen anderen Benutzer/eine andere Gruppe mit niedrigen Berechtigungen geändert oder weggelassen werden, um weiterhin mit Root-Berechtigungen zu laufen.

Mit pkgx

Starten Sie OpenCanary mit dem folgenden Befehl:

root@kitploit:~
$ sudo -E pkgx opencanaryd --start --uid=nobody --gid=nogroup

Mit den Flags uid und gid gibt OpenCanary die Root-Berechtigungen nach dem Binden an seine Ports auf. Dies kann auf einen anderen Benutzer/eine andere Gruppe mit niedrigen Berechtigungen geändert oder weggelassen werden, um weiterhin mit Root-Berechtigungen zu laufen.

Mit docker compose

Für diesen Weg müssen Docker und Docker Compose installiert sein.

Hinweis Das Portscan-Modul wird bei dockerisiertem OpenCanary automatisch deaktiviert.

  1. Bearbeiten Sie die Datei data/.opencanary.conf, um die Dienste, die ausgeführt werden sollen, zu aktivieren, zu deaktivieren oder anzupassen.
  2. Bearbeiten Sie den Abschnitt ports in der Datei docker-compose.yml, um die gewünschten Ports basierend auf den in der Konfigurationsdatei aktivierten Diensten zu aktivieren/deaktivieren.
  3. Starten Sie den Container.
    root@kitploit:~
    docker compose up latest
    

Um die Logs anzusehen, führen Sie docker compose logs latest aus.

Um den Container zu stoppen, führen Sie docker compose down aus.

Um Ihr eigenes Docker-OpenCanary mit docker compose zu erstellen, besuchen Sie unser Wiki.

Mit Docker

Für alles rund um dockerisiertes OpenCanary besuchen Sie bitte unser dediziertes Docker-Wiki.

Mit Ansible

Bitte besuchen Sie unser gegabeltes Repository für eine Ansible-OpenCanary-Rolle hier.

Dokumentation

  • Das Wiki enthält unsere FAQ.
  • Weitere Dokumentation ist auf unserer Hauptwebsite verfügbar.

Projektbeteiligung

Beitragen

Wir freuen uns über PRs für dieses Projekt. Bitte lesen Sie vor dem Einreichen eines Pull Requests unsere Dokumente Code of Conduct und Contributing.

Mindestens sollten Sie vor dem Einreichen des PR pre-commit ausführen. Installieren und führen Sie es in derselben Python-Umgebung aus, in der OpenCanary installiert ist:

root@kitploit:~
$ pip install pre-commit
$ pre-commit install
# Do work
$ git add file
$ git commit
# If pre-commit generated errors, then run "git add ... && git commit" again

Meldung von Sicherheitslücken

Weitere Informationen zum Melden von Sicherheitslücken finden Sie in unserer Security Policy.

Fehlerberichte

Bitte reichen Sie Fehlerberichte auf Github unter Verwendung der von uns bereitgestellten Vorlage ein.

Feature-Anfragen

Feature-Anfragen werden hier verwaltet.

Verhaltenskodex

Dieses Projekt und alle, die daran teilnehmen, unterliegen dem Code of Conduct. Durch Ihre Teilnahme wird erwartet, dass Sie diesen Kodex einhalten. Bitte melden Sie inakzeptables Verhalten an [email protected].

Tool herunterladen