⭕ مقدمهای بر AD CS – اجزاء کلیدی
حالا که توی پست قبل یه مقدمه کلی از AD CS دادیم بیایم سراغ اجزای اصلیش بریم. این سرویس واقعاً پیچیده ست و اجزاش با هم هماهنگ کار میکنن تا گواهی ها رو صادر، مدیریت و توزیع کنن. هر کدوم از این اجزا رو میشه بررسی کرد و حتی از زاویه ردتیم بهشون نگاه کرد که چطور میتونن نقطه ضعف باشن. من سعی کردم هر بخش رو ساده توضیح بدم و بعد abuse احتمالیش رو بگم.
نگاه کلی AD CS :
از چند کامپوننت اصلی تشکیل شده که با همدیگه enrollment (ثبتنام برای گواهی)، issuance (صدور گواهی) و مدیریت گواهی ها رو هندل میکنن. این اجزا معمولاً روی سرور ویندوز نصب میشن و با اکتیو دایرکتوری یکپارچه هستن. بدون اینها، PKI کار نمیکنه.
اجزای کلیدی AD CS
اینجا لیستشون کردم با توضیح مختصر و نکات ردتیم:
- Certification Authority (CA):
این قلب تپنده AD CS هست. گواهیها رو صادر، revoke و مدیریت میکنه بر اساس templateها. میتونه Root CA (ریشه، که خودش رو امضا میکنه) یا Subordinate CA (زیرمجموعه، که از root امضا میگیره) باشه. برای فعال کردنش باید نقش AD CS رو روی سرور نصب کنی.
- دیدگاه ردتیم و آموزش:
اگر بتونی CA رو compromise کنی (مثل حمله ESC5)، میتونی golden certificate forge کنی و persistence بسازی (DPERSIST1). برای enumerate، از ابزار Certify.exe cas استفاده کن تا لیست CAها و تنظیماتشون رو بگیری.
- Certificate Template:
این ها مثل blueprint هستن برای گواهی ها. مجوزهای enrollment، EKUها (Extended Key Usages مثل Client Auth)، تاریخ انقضا و چیزای دیگه رو تعریف میکنن.
- دیدگاه ردتیم و آموزش: templateهای vulnerable رو پیدا کن که اجازه enrollment بدون مجوز درست بدن (مثل ESC1). با Certify.exe find میتونی لیست templateها رو بگیری و misconfigها رو چک کنی مثلاً اگر EKU خطرناکی داشته باشن.
- Certificate Enrollment Web Service (CES):
این سرویس enrollment رو از طریق HTTPS برای کاربران و کامپیوترها فراهم میکنه، بدون نیاز به دسترسی مستقیم به CA.
- دیدگاه ردتیم و آموزش: اگر روی HTTP باشه، vulnerable به NTLM relay attack هست (ESC8). میتونی authentication رو coerce کنی با ابزار Coercer و بعد relay کنی با ntlmrelayx تا گواهی بگیری.
- Certificate Enrollment Policy Web Service:
این یکی policyهای enrollment رو به کلاینتها میده تا بدونن چطور ثبت نام کنن.
- (این بخش کمتر abuse داره، اما بخشی از زنجیره enrollment هست.)
- CA Web Enrollment:
رابط وب برای enrollment گواهی ها، مخصوصاً برای دستگاههای non-domain یا خارج از شبکه.
- دیدگاه ردتیم و آموزش: اگر وب باز باشه، scan کن برای vulnهایی مثل relay attacks یا injection. همیشه چک کن HTTPS باشه یا نه.
- Network Device Enrollment Service (NDES):
برای دستگاههای شبکه مثل روترها یا چیزایی که offline هستن (مثل پیاده سازی با Intune). از پروتکل SCEP استفاده میکنه.
- دیدگاه ردتیم و آموزش: templateهای offline vulnerable به سرقت (THEFT4) یا bypass پچهای CBA (Certificate-Based Authentication). اگر NDES فعال باشه، میتونی گواهی های دستگاه رو abuse کنی.
جمع بندی
از دید تیم قرمز، اول باید این اجزا رو enumerate کنی تا attack surface رو پیدا کنی. مثلاً اگر CES فعال باشه، حتماً relay attack تست کن میتونه در رو باز کنه بدون نیاز به privilege بالا. برای evasion، از winrs (Windows Remote Shell) استفاده کن تا دسترسی بگیری بدون اینکه logging سنگینی بشه. ابزارهایی مثل Certify رو فراموش نکن، چون سریع misconfigها رو نشون میدن.
در نهایت، AD CS پر از جزئیاته و هر اجزاش میتونه نقطه ورود باشه.
#ADCS
@KavehOffSec
Post #72
699
- 👍 7