ActivitySIEM
Sicherheitsüberwachung (SIEM) für Fediverse-Server. Pre-Alpha, ohne Release und noch nicht für den Einsatz gedacht.
ActivitySIEM sammelt sicherheitsrelevante Ereignisse aus den Verwaltungs-Schnittstellen von Fediverse-Software, aus Webhooks und aus einem lokalen Agenten, bringt sie in ein gemeinsames Format und wertet sie mit erklärbaren Regeln aus. Daraus entstehen Alerts und Incidents.
Der Anlass war Registrierungsmissbrauch und Scraping auf meiner eigenen Mastodon-Instanz. Die nötigen Informationen liegen verteilt: Die Fediverse-Software kennt Konten, Reports und Moderation, der Reverse Proxy kennt IP, Pfad und Status, das System kennt Last und Fehler. Ein klassisches SIEM versteht ActivityPub nicht, die Admin-Oberflächen verknüpfen nichts mit Proxy- und Systemdaten.
Zielgruppe sind Menschen, die Fediverse-Instanzen betreiben, oft ehrenamtlich und ohne Security-Team. Das Projekt ergänzt vorhandene SIEM-Systeme und soll sie nicht ersetzen. Es ist nebenberuflich von einer Person entwickelt und privat finanziert, Fördermittel gibt es nicht.
Eine Veröffentlichung ist für später vorgesehen, frühestens wenn es etwas Handfestes vorzuweisen gibt. Einen Termin nenne ich nicht.
Funktionen
- Drei Integrationstiefen: lesender Zugriff über Schnittstellen, Echtzeit über signierte Webhooks, vollständige Telemetrie über einen lokalen Agenten
- Gemeinsames Event-Schema mit Zuordnung zu OCSF
- Deklarative, versionierbare Erkennungsregeln mit Schwellen, Zeitfenstern, Sequenzen und Baselines, ohne ausführbaren Code
- Alerts und Incidents mit Beleg-Zeitleiste, Zuweisung und Ausnahmen für Fehlalarme
- Fehlende Datenquellen werden als „Not monitored“ mit Grund angezeigt und nie als grün
- Kontextlisten wie IFTAS und Fediseer erklären nur und sperren nie selbst
- Export als signierter Webhook, Syslog, OCSF, CEF und OTLP, Anbindung an Wazuh
- Statusseite mit Erreichbarkeit, Zertifikat, Versionsprüfung und Moderations-Warteschlange
- Pflicht zur Zwei-Faktor-Anmeldung für jedes Konto, Mandantentrennung, Audit-Log
- Der Agent ändert nur eigene Dateien, den eigenen Dienst und den eigenen Systembenutzer
Technik
Anwendung: Laravel 13 auf PHP 8.5, Inertia mit Vue 3 und TypeScript, PostgreSQL 18, Agent und Ingest-Gateway: Go, als signiertes Image oder statisches Binary mit systemd- oder OpenRC-Unterstützung, Kleinste Installation: Anwendung plus PostgreSQL per Docker Compose, Der Agent wurde in virtuellen Maschinen mit neun Linux-Konfigurationen getestet, Geplante Lizenzen: AGPL-3.0-or-later für die Anwendung, Apache-2.0 für Agent, Schema und Regeln, CC-BY-4.0 für die Dokumentation
Lizenz
geplant: AGPL-3.0-or-later (Anwendung), Apache-2.0 (Agent), noch nicht veröffentlicht