
goLoL ist ein Windows-Host-Scanner mit dualer Unterstützung für LOLBAS-Binärdateien und LOLDrivers. Es listet LOLBAS-Techniken auf, die auf Ihrer aktuellen Berechtigungsstufe ausführbar sind (mit MITRE-ATT&CK-Zuordnungen) und kann lokale .sys-Dateien auf Übereinstimmungen mit anfälligen/bösartigen LOLDrivers-Hashes scannen.
goLoL ist ein Windows-Host-Scanner mit dualer Unterstützung für LOLBAS-Binärdateien und LOLDrivers. Es listet LOLBAS-Techniken auf, die mit Ihrer aktuellen Berechtigungsstufe ausführbar sind (mit MITRE ATT&CK-Zuordnungen) und kann lokale .sys-Dateien auf Übereinstimmungen mit gefährlichen/malicious LOLDrivers-Hashes scannen.
Hinweis: Dies ist kein OPSEC-sicheres Tool.
Autor: Aaron Kidwell
█████ █████
░░███ ░░███
███████ ██████ ░███ ██████ ░███
███░░███ ███░░███ ░███ ███░░███ ░███
░███ ░███░███ ░███ ░███ ░███ ░███ ░███
░███ ░███░███ ░███ ░███ █░███ ░███ ░███ █
░░███████░░██████ ███████████░░██████ ███████████
░░░░░███ ░░░░░░ ░░░░░░░░░░░ ░░░░░░ ░░░░░░░░░░░
███ ░███
░░██████
░░░░░░

%WINDIR%-, %ProgramFiles%-, %USERPROFILE%- und WindowsApps-Verzeichnissen aufT1003.003: NTDS).sys-Dateien und gleicht sie mit dem Live-LOLDrivers-JSON-Katalog abnet localgroup (ein untergeordneter Prozess unter Windows)| Ihr Kontext | Was Sie sehen |
|---|---|
| Standardbenutzer | Techniken auf Benutzerebene |
| Mitglied der lokalen Administratoren | Benutzerebene + Administratorebene |
| NT AUTHORITY\SYSTEM | Benutzerebene + Administratorebene + SYSTEM-Ebene |
Befehle auf Administratorebene erfordern möglicherweise trotzdem eine erhöhte Shell, auch wenn Ihr Konto in der Administratorengruppe ist. Einträge auf SYSTEM-Ebene werden ausgeblendet, es sei denn, das Prozess-Token ist SYSTEM (S-1-5-18).
Remote-Installation (erfordert ein getaggtes Release auf GitHub, z.B. v0.1.0):
go install github.com/aaron-kidwell/goLoL@latest
Die Binärdatei wird in Ihrem GOPATH/bin (oder ~/go/bin) abgelegt. Stellen Sie unter Windows sicher, dass dieses Verzeichnis in Ihrem PATH ist.
Klonen und bauen:
git clone https://github.com/aaron-kidwell/goLoL.git
cd goLoL
go build -ldflags="-s -w" -trimpath -o golol.exe .
goLoL unterstützt zwei Scan-Modi:
-driver für Übereinstimmungen mit gefährlichen/malicious Treiber-HashesFühren Sie vom Modul-Root aus (erforderlich für internal/-Pakete):
go run .
Erstellen Sie eine Binärdatei (empfohlen … entfernt Debug-Informationen, ~30 % kleiner):
go build -ldflags="-s -w" -trimpath -o golol.exe .
.\golol.exe
-s -w entfernt die Symboltabelle und DWARF-Debug-Daten. Ein Standard-go build dieses Projekts ist ~9,5 MB groß; mit diesen Flags sinkt es auf ~6,4 MB.
| Flag | Beschreibung |
|---|---|
-h, -help | Hilfe anzeigen |
-driver | Lokale Treiber scannen und bekannte gefährliche/malicious Übereinstimmungen aus LOLDrivers auflisten |
-plain | ASCII-only-Ausgabe (keine Farben, Unicode oder Cursorsteuerung) |
-s, -search | Eine Binärdatei nach Namen anzeigen (certutil oder certutil.exe); meldet, wenn nicht auf der Festplatte vorhanden |
-sort | Ergebnisse sortieren: binary (Standard), privilege oder attack |
Sortier-Aliase: b, priv / p, mitre / a. Ungültige Werte geben einen Fehler aus und zeigen die Hilfe.
# Standard: gruppiert nach Binärdateiname (A-Z)
go run .
# Treibermodus (lokale .sys-Dateien gegen LOLDrivers-Hashes scannen)
go run . -driver
# Eine einzelne Binärdatei nachschlagen
go run . -s certutil
.\golol.exe -s certutil.exe
# Zuerst Admin-Ebene, dann Benutzerebene (SYSTEM-Ebene zuerst, wenn unter SYSTEM ausgeführt)
go run . -sort privilege
# Sortiert nach MITRE ATT&CK-ID
go run . -sort attack
# Reverse-Shell-/Telnet-freundliche Ausgabe
go run . -plain
# Flags kombinieren
go run . -plain -sort attack
Anzahl und Binärdateien variieren je nach Host. Der Screenshot oben in dieser README zeigt den interaktiven Modus (farbiges Terminal, gruppiert nach Binärdatei).
Plain-Modus (-plain):
[*] Checking process token...
[*] Fetching LOLBAS catalog...
[+] Found 147 binaries, 299 techniques
==============================================================
Role: administrator
Sort: binary
Binaries: 147
Techniques: 299
==============================================================
[1] Esentutl.exe
Path: C:\Windows\System32\esentutl.exe
...
-driver-Modus wird der LOLDrivers-JSON-Katalog heruntergeladen, lokale .sys-Dateien werden gehasht und Hash-Übereinstimmungen gemeldet.-driver-Modus).| Komponente | Ort |
|---|---|
| LOLBAS-Katalog | https://lolbas-project.github.io/api/lolbas.json |
| LOLDrivers-Katalog | https://www.loldrivers.io/api/drivers.json |
| Berechtigungserkennung | internal/privileges |
| MITRE-Techniknamen | internal/mitre |
| Pfadauflösung & Ausgabe | main.go |
.
├── docs/
│ └── screenshot.png # README-Screenshot
├── main.go
├── internal/
│ ├── mitre/
│ │ └── names.go # MITRE ATT&CK-ID-zu-Bezeichnungszuordnung
│ └── privileges/
│ ├── privileges_windows.go # Token-/Administratorengruppen-Prüfungen
│ └── privileges_stub.go # Nicht-Windows-Stub
├── go.mod
└── go.sum
Nur für autorisierte Sicherheitstests, Laborgebrauch und Schulungen. Führen Sie es nur gegen Systeme aus, die Ihnen gehören oder für die Sie explizite Berechtigung zur Prüfung haben. LOLBAS-Einträge beschreiben Techniken, die von Angreifern missbraucht werden können – nutzen Sie es daher verantwortungsvoll. Der Autor haftet nicht für Missbrauch.