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
Loki — IOC- und YARA-basierter Scanner zur Erkennung von Indikatoren für Kompromittierung mittels Dateinamen-Regex, YARA-Signaturen, Hash-Abgleich und C2-Rückverbindungsprüfungen auf Endpunkten. | Kitploit
Tools/GitHubGitHub/neo23x0/loki
Management von Indicators of Compromise (IOC)SchwachstellenscannerHash-AnalyseForensikMalware-AnalyseDigitale ForensikBedrohungsanalyseIncident Response
GitHubneo23x0/loki

Loki

IOC- und YARA-basierter Scanner zur Erkennung von Indikatoren für Kompromittierung mittels Dateinamen-Regex, YARA-Signaturen, Hash-Abgleich und C2-Rückverbindungsprüfungen auf Endpunkten.

Repository anzeigen
3.8k612vor 7 MonatenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

Not Maintained

Ich habe einen neuen Open Source YARA-Scanner namens LOKI RS (Rust) geschrieben. LOKI (Python) ist jetzt offiziell veraltet.

Wichtiger Hinweis

Dieses Projekt befindet sich jetzt im inaktiven Wartungsmodus. Das bedeutet, dass ich zwar Pull-Requests für Fehlerbehebungen und einfache Probleme zusammenführe, aber derzeit keine Zeit habe, neue Funktionen hinzuzufügen oder bestehende zu erweitern. Seit Jahren konzentriere ich mich auf die Entwicklung eines fortschrittlicheren Scanners, THOR, der eine Reihe von Verbesserungen gegenüber diesem Projekt bietet. Eine kostenlose Version, THOR Lite, ist verfügbar; sie ist schneller, stabiler und in unseren CI-Umgebungen gründlich getestet – einfach eine bessere Lösung. Einen Vergleich der Open-Source-, kostenlosen und kommerziellen Scanner finden Sie hier.

Ich habe auch mit der Arbeit an einer Rust-basierten Version von LOKI namens LOKI 2 begonnen. Ich bin mir jedoch nicht sicher, wann sie die Funktionsparität mit der aktuellen LOKI-Version erreichen wird. Außerdem habe ich ein Flussdiagramm erstellt, das Ihnen bei der Entscheidung hilft, welcher Scanner Ihren Anforderungen am besten entspricht.

Logo

Loki - Einfacher IOC- und YARA-Scanner

Scanner für einfache Indikatoren einer Kompromittierung

Die Erkennung basiert auf vier Erkennungsmethoden:

root@kitploit:~
1. Dateiname-IOC
   Regex-Übereinstimmung auf vollständigem Dateipfad/-namen

2. Yara-Regelprüfung
   Yara-Signaturübereinstimmung auf Dateidaten und Prozessspeicher

3. Hash-Prüfung
   Vergleicht bekannte bösartige Hashes (MD5, SHA1, SHA256) mit gescannten Dateien
   
4. C2-Back-Connect-Prüfung
   Vergleicht Prozessverbindungsendpunkte mit C2-IOCs (neu seit Version v.10)
   

Zusätzliche Prüfungen:

root@kitploit:~
1. Regin-Dateisystemprüfung (via --reginfs)
2. Prozessanomalieprüfung (basierend auf [Sysforensics](http://goo.gl/P99QZQ))
3. SWF-dekomprimierter Scan (neu seit Version v0.8)
4. SAM-Dump-Prüfung

Das Windows-Binärprogramm wurde mit PyInstaller kompiliert und sollte als x86-Anwendung sowohl auf x86- als auch auf x64-basierten Systemen laufen.

So führen Sie LOKI aus und analysieren die Berichte

Ausführen

  • Laden Sie die neueste Version von LOKI aus dem Bereich Releases herunter
  • Entpacken Sie das Programmpaket
  • Führen Sie auf einem System mit Internetzugang loki-upgrader.exe aus, um die neuesten Signaturen abzurufen
  • Bringen Sie den Programmordner auf ein Zielsystem, das gescannt werden soll: Wechselmedien, Netzwerkfreigabe, Ordner auf dem Zielsystem
  • Öffnen Sie eine Befehlszeile "cmd.exe" als Administrator und führen Sie es von dort aus (Sie können LOKI auch ohne Administratorrechte ausführen, aber einige Prüfungen werden deaktiviert und relevante Objekte auf der Festplatte sind nicht zugänglich)

Berichte

  • Der resultierende Bericht zeigt eine GRÜNE, GELBE oder ROTE Ergebniszeile an.
  • Bitte analysieren Sie die Funde selbst, indem Sie:
    1. Vertrauliche Beispiele auf Virustotal.com hochladen
    2. Im Web nach dem Dateinamen suchen
    3. Im Web nach Schlüsselwörtern aus dem Regelnamen suchen (z.B. EQUATIONGroupMalware_1 > Suche nach "Equation Group")
    4. Im Web nach dem MD5-Hash des Beispiels suchen
  • Bitte melden Sie False Positives über den Bereich "Issues", der über die rechte Seitenleiste zugänglich ist (geben Sie den False-Positive-Indikator wie einen Hash und/oder Dateinamen sowie den auslösenden Regelnamen an)

Voraussetzungen

Keine Voraussetzungen, wenn Sie die kompilierte EXE verwenden.

Wenn Sie es selbst bauen möchten:

  • yara : Es wird empfohlen, die aktuellste Version der kompilierten Pakete für Windows (x86) zu verwenden - Download von hier: https://github.com/VirusTotal/yara-python/releases
  • colorama : zur Farbgebung
  • psutil : Prozessprüfungen
  • pywin32 : Pfadkonvertierungen (PyInstaller Issue; nur Windows)

Verwendung

root@kitploit:~
usage: loki.py [-h] [-p path] [-s kilobyte] [-l log-file] [-r remote-loghost]
               [-t remote-syslog-port] [-a alert-level] [-w warning-level]
               [-n notice-level] [--allhds] [--alldrives] [--printall]
               [--allreasons] [--noprocscan] [--nofilescan] [--vulnchecks]
               [--nolevcheck] [--scriptanalysis] [--rootkit] [--noindicator]
               [--dontwait] [--intense] [--csv] [--onlyrelevant] [--nolog]
               [--update] [--debug] [--maxworkingset MAXWORKINGSET]
               [--syslogtcp] [--logfolder log-folder] [--nopesieve]
               [--pesieveshellc] [--nolisten]
               [--excludeprocess EXCLUDEPROCESS] [--force]

Loki - Einfacher IOC-Scanner

optionale Argumente:
  -h, --help            Zeigt diese Hilfemeldung an und beendet das Programm
  -p path               Zu scannender Pfad
  -s kilobyte           Maximale Dateigröße in KB für die Überprüfung (Standard 5000 KB)
  -l log-file           Logdatei
  -r remote-loghost     Remote-Syslog-System
  -t remote-syslog-port
                        Remote-Syslog-Port
  -a alert-level        Alarmstufe
  -w warning-level      Warnstufe
  -n notice-level       Hinweisstufe
  --allhds              Alle lokalen Festplatten scannen (nur Windows)
  --alldrives           Alle Laufwerke scannen (einschließlich Netzwerklaufwerke und
                        Wechselmedien)
  --printall            Alle gescannten Dateien ausgeben
  --allreasons          Alle Gründe ausgeben, die zur Bewertung geführt haben
  --noprocscan          Prozessscan überspringen
  --nofilescan          Dateiscan überspringen
  --vulnchecks          Schwachstellenprüfungen ausführen
  --nolevcheck          Levenshtein-Distanz-Prüfung überspringen
  --scriptanalysis      Statistische Analyse für Skripte zur Erkennung von obfuskiertem
                        Code (Beta)
  --rootkit             Rootkit-Prüfung überspringen
  --noindicator         Keine Fortschrittsanzeige anzeigen
  --dontwait            Nicht auf Beenden warten
  --intense             Intensiver Scan-Modus (auch unbekannte Dateitypen und
                        alle Erweiterungen scannen)
  --csv                 CSV-Logformat nach STDOUT ausgeben (Maschinenverarbeitung)
  --onlyrelevant        Nur Warnungen oder Alarme ausgeben
  --nolog               Keine lokale Logdatei schreiben
  --update              Signaturen aus dem Unterrepository "signature-base" aktualisieren
  --debug               Debug-Ausgabe
  --maxworkingset MAXWORKINGSET
                        Maximale Arbeitsspeichergröße von zu scannenden Prozessen (in MB,
                        Standard 100 MB)
  --syslogtcp           TCP anstelle von UDP für Syslog-Logging verwenden
  --logfolder log-folder
                        Ordner für das Logging, wenn keine Logdatei angegeben ist
  --nopesieve           Keine pe-sieve-Scans durchführen
  --pesieveshellc       pe-sieve-Shellcode-Scan durchführen
  --nolisten            Keine lauschenden Verbindungen anzeigen
  --excludeprocess EXCLUDEPROCESS
                        Namen einer ausführbaren Datei angeben, die von Scans ausgeschlossen werden soll,
                        kann mehrfach verwendet werden
  --force               Scan auf einem bestimmten Ordner erzwingen (auch wenn er mit einem
                        harten Ausschluss im LOKI-Code ausgeschlossen ist)

Signaturen und IOCs

Seit Version 0.15 befinden sich die Yara-Signaturen im Unterrepository signature-base. Sie erhalten das Unterrepository nicht, wenn Sie LOKI als ZIP-Datei herunterladen. Es wird enthalten sein, wenn Sie das Repository klonen.

Die IOC-Dateien für Hashes und Dateinamen werden im Ordner './signature-base/iocs' gespeichert. Alle '.yar'-Dateien, die im Ordner './signature-base/yara' abgelegt werden, werden zusammen mit dem bereits enthaltenen Regelsatz initialisiert. Verwenden Sie den 'score'-Wert, um die Nachrichtenebene bei einer Signaturübereinstimmung zu definieren.

Sie können Hash-, C2- und Dateinamen-IOCs hinzufügen, indem Sie Dateien im Unterordner './signature-base/iocs' ablegen. Alle Hash-IOC- und Dateinamen-IOC-Dateien müssen im von LOKI verwendeten Format vorliegen (siehe die Standarddateien). Die Dateien müssen die Zeichenfolgen "hash", "filename" oder "c2" in ihrem Namen enthalten, um während der Initialisierung geladen zu werden.

Für Hash-IOCs (durch Zeilenumbruch getrennt; Hash-Typ wird automatisch erkannt)

root@kitploit:~
Hash;Description [Reference]

Für Dateinamen-IOCs (durch Zeilenumbruch getrennt)

root@kitploit:~
# (optional) Description [Reference]
Filename as Regex[;Score as integer[;False-positive as Regex]]

Benutzerdefinierte Scan-Ausschlüsse

Seit Version v0.16.2 unterstützt LOKI die Definition von benutzerdefinierten Ausschlüssen über "excludes.cfg" im neuen Ordner "./config". Jede Zeile repräsentiert einen regulären Ausdruck, der während des Verzeichnisdurchlaufs auf den vollständigen Dateipfad angewendet wird. Auf diese Weise können Sie bestimmte Verzeichnisse unabhängig von ihrem Laufwerksbuchstaben, Dateierweiterungen in bestimmten Ordnern sowie alle Dateien und Verzeichnisse ausschließen, die zu einem Produkt gehören, das empfindlich auf Antiviren-Scans reagiert.

Die '''exclude.cfg''' sieht wie folgt aus:

root@kitploit:~
# Ausgeschlossene Verzeichnisse
#
# - Fügen Sie Verzeichnisse hinzu, die Sie vom Scan ausschließen möchten
# - Doppelte Escape-Backslashes
# - Werte sind case-insensitive
# - Denken Sie daran, unter Windows Backslashes und unter Linux / Unix / OSX Slashes zu verwenden
# - Jede Zeile enthält einen Regex, der irgendwo im vollständigen Pfad übereinstimmt (case insensitive)
#   z.B.:
#   Regex: \\System32\\
#   Entspricht C:\Windows\System32\cmd.exe
#
#   Regex: /var/log/[^/]+\.log
#   Entspricht: /var/log/test.log
#   Entspricht nicht: /var/log/test.gz
#

# Nützliche Beispiele
\\Ntfrs\\
\\Ntds\\
\\EDB[^\.]+\.log
Sysvol\\Staging\\Nntfrs_cmp
\\System Volume Information\\DFSR

Screenshots

Loki-Scan

Screen

Regin-Übereinstimmungen

Screen

Regin-False Positives

Screen

Hash-basierte IOCs

Screen

Dateinamen-basierte IOCs

Screen

Generierte Logdatei

Screen

Kontakt

LOKI-Scanner auf unserer Firmenhomepage https://www.nextron-systems.com/loki/

Twitter @cyb3rOps @thor_scanner

Wenn Sie an einer Unternehmenslösung für APT-Scans interessiert sind, schauen Sie sich Lokis großen Bruder THOR an.

Den Scanner kompilieren

Laden Sie PyInstaller herunter, wechseln Sie in das PyInstaller-Programmverzeichnis und führen Sie Folgendes aus:

root@kitploit:~
python ./pyinstaller.py -F C:\path\to\loki.py

Dadurch wird eine loki.exe im Unterordner ./loki/dist erstellt.

Profi-Tipp (optional)

Um die msvcr100.dll einzubinden und die Zielbetriebssystem-Kompatibilität zu verbessern, ändern Sie die Zeile in der Datei ./loki/loki.spec, die a.binaries, enthält, wie folgt:

root@kitploit:~
a.binaries + [('msvcr100.dll', 'C:\Windows\System32\msvcr100.dll', 'BINARY')],

LOKI unter Mac OS X (oder neuer) oder Linux verwenden

  • Initialisieren Sie eine Python-Virtual-Umgebung für Loki. Dazu müssen Sie sicherstellen, dass das Python-Modul venv vorhanden ist, und führen Sie dann python -m venv path/to/venv aus, wobei path/to/venv der Pfad zu Ihrer virtuellen Umgebung ist. Testen Sie Ihre virtuelle Umgebung, indem Sie path/to/venv/bin/python --version ausführen. Aktualisieren Sie die Module Ihrer virtuellen Umgebung für pip, setuptools und wheel, indem Sie path/to/venv/bin/python -m pip install --upgrade pip setuptools wheel ausführen.
  • Installieren Sie Bibliotheken mit path/to/venv/bin/python -m pip install colorama yara-python psutil rfc5424-logging-handler netaddr.
  • Führen Sie loki-upgrader.py aus: path/to/venv/bin/python path/to/loki/loki-upgrader.py, wobei path/to/loki der Pfad zum Loki-Repository ist.

Yara-Quellen

Laden Sie Yara-Quellen von hier herunter.

Antivirus - False Positives

Der kompilierte Scanner kann von Antiviren-Engines erkannt werden. Dies wird dadurch verursacht, dass der Scanner ein kompiliertes Python-Skript ist, das einige Dateisystem- und Prozessscan-Funktionen implementiert, die auch in kompiliertem Malware-Code verwendet werden.

Wenn Sie der kompilierten ausführbaren Datei nicht vertrauen, kompilieren Sie sie bitte selbst.

Lizenz

Loki - Simple IOC Scanner Copyright (c) 2015 Florian Roth

Dieses Programm ist freie Software: Sie können es unter den Bedingungen der GNU General Public License, wie von der Free Software Foundation veröffentlicht, entweder Version 3 der Lizenz oder (nach Ihrer Wahl) jeder späteren Version weiterverteilen und/oder modifizieren.

Dieses Programm wird in der Hoffnung verbreitet, dass es nützlich sein wird, jedoch OHNE JEDE GEWÄHRLEISTUNG; sogar ohne die stillschweigende Garantie der MARKTGÄNGIGKEIT oder EIGNUNG FÜR EINEN BESTIMMTEN ZWECK. Siehe die GNU General Public License für weitere Details.

Sie sollten eine Kopie der GNU General Public License zusammen mit diesem Programm erhalten haben. Wenn nicht, siehe http://www.gnu.org/licenses/.

Tool herunterladen
  • Führen Sie Loki aus: sudo path/to/venv/bin/python loki.py.