
goLoL هو ماسح ضوئي لمضيفات Windows مع دعم مزدوج لثنائيات LOLBAS وLOLDrivers. يسرد تقنيات LOLBAS القابلة للتشغيل بمستوى صلاحياتك الحالي (مع تعيينات MITRE ATT&CK) ويمكنه فحص ملفات .sys المحلية بحثًا عن تطابقات تجزئة LOLDrivers الضعيفة/الخبيثة.
goLoL هو ماسح ضوئي لمضيفات ويندوز مع دعم مزدوج لثنائيات LOLBAS و LOLDrivers. يعرض تقنيات LOLBAS القابلة للتشغيل بمستوى الامتياز الحالي لديك (مع خرائط MITRE ATT&CK) ويمكنه فحص ملفات .sys المحلية بحثاً عن تطابقات تجزئة LOLDrivers الضارة أو القابلة للاستغلال.
ملاحظة: هذه الأداة ليست آمنة من ناحية OPSEC.
المؤلف: Aaron Kidwell
█████ █████
░░███ ░░███
███████ ██████ ░███ ██████ ░███
███░░███ ███░░███ ░███ ███░░███ ░███
░███ ░███░███ ░███ ░███ ░███ ░███ ░███
░███ ░███░███ ░███ ░███ █░███ ░███ ░███ █
░░███████░░██████ ███████████░░██████ ███████████
░░░░░███ ░░░░░░ ░░░░░░░░░░░ ░░░░░░ ░░░░░░░░░░░
███ ░███
░░██████
░░░░░░

%WINDIR% و%ProgramFiles% و%USERPROFILE% وWindowsApps المحليةT1003.003: NTDS).sys المحلية ومطابقتها مع كتالوج LOLDrivers JSON المباشرnet localgroup (عملية فرعية واحدة على ويندوز)| سياقك | ما تراه |
|---|---|
| مستخدم قياسي | تقنيات طبقة المستخدم |
| عضو في مجموعة Administrators المحلية | تقنيات طبقة المستخدم + طبقة المسؤول |
| NT AUTHORITY\SYSTEM | تقنيات طبقة المستخدم + طبقة المسؤول + طبقة SYSTEM |
قد تتطلب أوامر طبقة المسؤول shell مرتفع الصلاحيات حتى لو كان حسابك ضمن مجموعة Administrators. إدخالات طبقة SYSTEM تكون مخفية إلا إذا كان رمز العملية هو SYSTEM (S-1-5-18).
التثبيت عن بُعد (يتطلب إصداراً موسوماً على GitHub، مثل v0.1.0):
go install github.com/aaron-kidwell/goLoL@latest
يتم وضع الملف الثنائي في GOPATH/bin (أو ~/go/bin). على ويندوز، تأكد من أن هذا المجلد موجود في PATH الخاص بك.
الاستنساخ والبناء:
git clone https://github.com/aaron-kidwell/goLoL.git
cd goLoL
go build -ldflags="-s -w" -trimpath -o golol.exe .
يدعم goLoL وضعي فحص:
-driver لمطابقات تجزئة برامج التشغيل الضارة أو القابلة للاستغلالشغّله من جذر الوحدة (مطلوب لحزم internal/):
go run .
أنشئ ملفاً ثنائياً (موصى به.. يزيل معلومات التصحيح، أصغر بحوالي 30%):
go build -ldflags="-s -w" -trimpath -o golol.exe .
.\golol.exe
-s -w يزيل جدول الرموز وبيانات تصحيح DWARF. بناء go build الافتراضي لهذا المشروع يبلغ ~9.5 MB؛ مع هذه العلامات ينخفض إلى ~6.4 MB.
| العلامة | الوصف |
|---|---|
-h, -help | إظهار المساعدة |
-driver | فحص برامج التشغيل المحلية وسرد المطابقات المعروفة الضارة أو القابلة للاستغلال من LOLDrivers |
-plain | إخراج ASCII فقط (بدون ألوان أو Unicode أو التحكم بالمؤشر) |
-s, -search | إظهار برنامج ثنائي واحد بالاسم (certutil أو certutil.exe)؛ يبلّغ إذا لم يكن موجوداً على القرص |
-sort | فرز النتائج: binary (الافتراضي)، privilege، أو attack |
أسماء مختصرة للفرز: b، priv / p، mitre / a. القيم غير الصالحة تطبع خطأً وتعرض المساعدة.
# Default: grouped by binary name (A-Z)
go run .
# Driver mode (scan local .sys files against LOLDrivers hashes)
go run . -driver
# Look up a single binary
go run . -s certutil
.\golol.exe -s certutil.exe
# Admin tier first, then user tier (SYSTEM tier first when running as SYSTEM)
go run . -sort privilege
# Sorted by MITRE ATT&CK ID
go run . -sort attack
# Reverse shell / telnet friendly output
go run . -plain
# Combine flags
go run . -plain -sort attack
تختلف الأعداد والبرامج الثنائية حسب المضيف. لقطة الشاشة أعلى هذا README تعرض الوضع التفاعلي (طرفية ملونة، مجمعة حسب البرنامج الثنائي).
الوضع النصي (-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، ينزّل كتالوج LOLDrivers JSON، ويجزئ ملفات .sys المحلية، ويبلغ عن مطابقات التجزئة.-driver).| المكوّن | الموقع |
|---|---|
| كتالوج LOLBAS | https://lolbas-project.github.io/api/lolbas.json |
| كتالوج LOLDrivers | https://www.loldrivers.io/api/drivers.json |
| كشف الامتياز | internal/privileges |
| أسماء تقنيات MITRE | internal/mitre |
| تحليل المسارات والإخراج | main.go |
.
├── docs/
│ └── screenshot.png # README screenshot
├── main.go
├── internal/
│ ├── mitre/
│ │ └── names.go # MITRE ATT&CK ID to label map
│ └── privileges/
│ ├── privileges_windows.go # Token / Administrators group checks
│ └── privileges_stub.go # Non-Windows stub
├── go.mod
└── go.sum
للاستخدام في الاختبارات الأمنية المصرح بها، والاستخدام المخبري، والتعليم فقط. شغّلها فقط على الأنظمة التي تملكها أو لديك إذن صريح لفحصها. تصف إدخالات LOLBAS تقنيات قد يساء استخدامها من قبل المهاجمين، لذا استخدمها بمسؤولية. المؤلف غير مسؤول عن إساءة الاستخدام.
التقنيات والبيانات الوصفية مصدرها مشروع LOLBAS وLOLDrivers. goLoL غير تابعة لأي من المشروعين ولا تحظى بتأييدهما.
MIT