OpenCanary

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen

OpenCanary

OpenCanary ist ein leichtgewichtiger, modularer Honeypot für Linux-Systeme. Er simuliert häufig angegriffene Netzwerkdienste und meldet Verbindungsversuche in Echtzeit. OpenCanary ist einfach zu installieren und ideal für die Erkennung unberechtigter Zugriffsversuche in lokalen oder öffentlichen Netzwerken.

Zweck

  • Frühwarnung bei Portscans, Brute-Force-Angriffen und Netzwerkscans
  • Integration in SIEM oder zentrale Log-Analyse (z. B. ELK, Wazuh)
  • Leichtgewichtig, modular, schnell einsatzbereit

Pakete

  • open-canary (in manchen Repositories verfügbar)
  • Empfohlen: Installation via pip (Python 3)

Installation

Debian/Ubuntu

  • apt install python3 python3-pip python3-venv git
  • python3 -m venv venv
  • source venv/bin/activate
  • pip install --upgrade pip
  • pip install open-canary
  • open-canary --copyconfig

Konfiguration

  • Datei: ~/.opencanary.conf

Beispielkonfiguration:

{
  "device.node_id": "honeypot1",
  "logger": {
    "class": "PyLogger",
    "kwargs": {
      "formatters": {
        "plain": {
          "format": "%(message)s"
        }
      },
      "handlers": {
        "file": {
          "class": "logging.FileHandler",
          "filename": "/var/log/opencanary.log"
        }
      }
    }
  },
  "logger.handlers": ["file"],
  "ftp.enabled": true,
  "ssh.enabled": true,
  "http.enabled": true,
  "mysql.enabled": true,
  "telnet.enabled": false
}

Start

  • open-canaryd

Logs

Unterstützte Dienste

  • SSH (Port 22)
  • FTP (Port 21)
  • HTTP (Port 80)
  • Telnet (Port 23)
  • MySQL (Port 3306)
  • Redis (Port 6379)
  • SNMP, SMB, VNC, TFTP, u.v.m.

Beispiel-Logeintrag

{
  "dst_host": "10.0.10.10",
  "dst_port": 21,
  "local_time": "2025-04-05 10:32:11",
  "logdata": {
    "USERNAME": "anonymous",
    "PASSWORD": "test"
  },
  "src_host": "10.0.10.99",
  "src_port": 54321,
  "eventid": "ftp.login",
  "protocol": "ftp"
}

Integration

Vorteile

  • Sehr einfache Einrichtung
  • Modular – Dienste können einzeln aktiviert werden
  • Geringer Ressourcenverbrauch
  • JSON-Logs für direkte Weiterverarbeitung

Grenzen

  • Nur Low-Interaction – keine Shell, keine echte Interaktion
  • Dienste sind auf Simulationsebene – keine vollen Protokollemulationen

Alternativen und Ergänzungen

  • Cowrie – Für interaktive SSH-Analyse
  • Tpot – Komplettlösung mit ELK-Stack
  • Canarytokens – Für Link-, Datei-, URL- und API-Fallen
  • Honeytrap – Framework für beliebige Port-Fallen