5.4 פגיעות cpassword + GPP הרצאה
פגיעות GPP + cpassword¶
מדיניות קבוצתית (Group Policy Preferences - GPP) מאפשרת למנהלי רשת להגדיר תצורות שונות ב-Active Directory, כולל יצירת משתמשים, הגדרת סיסמאות, מיפוי כוננים ועוד. בעבר, GPP השתמשה בקובץ Groups.xml כדי לשמור סיסמאות של משתמשים עם הרשאות גבוהות, אולם הקובץ הזה כלל סיסמאות מוצפנות אך ניתנות לפענוח, מה שיצר פגיעות חמורה שהובילה לגישה לא מורשית למשאבים קריטיים.
הבנת הפגיעות¶
ב-Windows Server 2008 הוצגה האפשרות להגדיר סיסמאות למשתמשים דרך GPP, אך במקום להשתמש בהצפנה חזקה, הסיסמאות נשמרו בקובץ Groups.xml עם הצפנה חלשה הניתנת לפענוח בקלות.
קובץ זה נמצא בתיקיות ה-SYSVOL של הדומיין, מה שאומר שלכל משתמש בדומיין יש גישה לקרוא אותו:
דוגמה לתוכן קובץ Groups.xml:
איתור הקובץ באמצעות כלי אנומירציה¶
חיפוש ידני ב-SYSVOL דרך SMB¶
חיפוש אוטומטי עם Impacket’s secretsdump.py¶
פענוח הסיסמה¶
מיקרוסופט שחררה את מפתח ההצפנה של cpassword, מה שמאפשר לפענח את הסיסמה בקלות:
תקיפה מעשית - שימוש בסיסמה שהתקבלה¶
לאחר שחולצה הסיסמה, ניתן להשתמש בה כדי להתחבר לDC בקלות
חיבור ל-SMB עם הסיסמה שנמצאה¶
הרצת פקודות עם Evil-WinRM¶
מי שלא מכיר: evil-winrm זה לקוח לשירות winrm שנפוץ בקרב מחשבי ווינדוס.
ובגדול באמצעות הפקודה אם יש לך creds או אפילו ntlm hash אפשר בקלות לקבל shell