6.4 טכניקת Pass The Hash הרצאה
ביצוע Pass the Hash לתנועה רוחבית: smbexec, wmiexec, evil-winrm וכלים נוספים¶
טכניקת Pass the Hash מאפשרת לתוקף לנצל NTLM Hashes שהושגו ממחשב אחד ולבצע תנועה רוחבית בין מחשבים אחרים ברשת, כל זאת מבלי לדעת את הסיסמה של המשתמש. במקום זאת, התוקף משתמש ב- NTLM Hash שנגנב או הודלף, על מנת לגשת לשירותים ברשת ולהשיג שליטה על מחשבים נוספים.
ההאשים NTLM Hashes הם חותמות דיגיטליות של סיסמאות המשתמשים, שנשמרות במערכת Windows כדי לבצע זיהוי ואימות המשתמשים. כאשר תוקף משיג את ה- NTLM Hash של משתמש, הוא יכול לנצל אותו כדי "להעביר" את ההאש ללא צורך בהבנה של הסיסמה עצמה.
התקנת כלים¶
לפני שמבצעים את ההתקפה, עלינו לוודא שברשותנו את הכלים המתאימים לביצוע התנועה הרוחבית. כלים פופולריים לכך כוללים את smbexec, wmiexec, evil-winrm ואחרים. נתחיל בהתקנת הכלים:
Impacket¶
אם עדיין לא התקנתם את Impacket, שהוא הכלי המרכזי להרבה מההתקפות הללו, ניתן להתקינו באמצעות pip:
כלי Pass the Hash לתנועה רוחבית¶
smbexec¶
הכלי smbexec הוא כלי מבית Impacket מאפשר לתוקף להריץ קוד באמצעות SMB על מחשבים אחרים ברשת. הכלי מאפשר לבצע התקפות Pass the Hash ולהשתמש בהאש שנגנב כדי לגשת למערכות אחרות ולהפעיל עליהן פקודות.
דוגמה לשימוש ב-smbexec¶
נניח שהשגנו את ה- NTLM Hash של משתמש המנהל, ונרצה להשתמש בהאש כדי להתחבר למחשב אחר ברשת ולבצע פעולות. נשתמש בפקודה הבאה:
בפקודה זו:
-
DOMAIN/USER: שמו של המשתמש המנצל את ה-NTLM Hash.
-
TARGET-IP: כתובת ה-IP של המחשב היעד.
-
LMHASH:NTHASH: ה-NTLM Hash של המשתמש.
wmiexec¶
כלי wmiexec הוא כלי נוסף ב- Impacket המאפשר להתחבר למחשב מרוחק דרך WMI (Windows Management Instrumentation), ולבצע פקודות מרחוק. WMI מאפשר לתוקף לשלוט במחשבים מרוחקים על ידי שליחת פקודות דרך פרוטוקול msrpc שמאזין דיפולטית בווינדוס.
דוגמה לשימוש ב-wmiexec¶
נניח שהתוקף השיג את ה- NTLM Hash של משתמש במערכת Windows. התוקף יכול להשתמש ב- wmiexec כדי להריץ פקודות במחשב היעד:
הפקודה הזו מאפשרת לתוקף להריץ פקודות על המחשב המרוחק, בדיוק כמו שהייתם מבצעים אם הייתם מחוברים למחשב זה ישירות.
evil-winrm¶
כלי evil-winrm הוא כלי פופולרי שנועד לנצל את פרוטוקול WinRM (Windows Remote Management) לביצוע תנועה רוחבית והפעלת פקודות מרחוק. כלים כמו evil-winrm מאפשרים לתוקף להתחבר למחשבים מרוחקים באמצעות WinRM ולבצע פעולות כמו הרצת פקודות או יצירת משתמשים חדשים.
דוגמה לשימוש ב-evil-winrm¶
נניח שהתוקף השיג את ה- NTLM Hash של משתמש ויש לו גישה ל- WinRM בשרת היעד. הוא יכול להשתמש ב- evil-winrm כדי להתחבר ולבצע פקודות על המחשב המרוחק:
בפקודה זו:
-
TARGET-IP: כתובת ה-IP של המחשב היעד.
-
USER: שם המשתמש.
-
NTHASH: ה-NTLM Hash של המשתמש.
בזמן הריצה, התוקף יקבל גישה למחשב היעד ויוכל להריץ עליו פקודות כמנהל.
טכניקות נוספות לביצוע Pass the Hash¶
בנוסף לכלים שצוין עד כה, קיימות מספר טכניקות נוספות בהן ניתן להשתמש לביצוע Pass the Hash ולהשיג תנועה רוחבית ברשת.
PsExec¶
כלי PsExec הוא כלי נוסף מבית Sysinternals שמאפשר לבצע פקודות מרחוק על מחשבים אחרים ברשת. התוקף יכול לנצל את PsExec עם ה- NTLM Hash על מנת לבצע פעולות על מערכת יעד.
דוגמה לשימוש ב-PsExec¶
RDP (Remote Desktop Protocol)¶
עוד דרך בה ניתן לבצע Pass the Hash היא דרך RDP. אם השרת היעד מאפשר חיבורי RDP ויש גישה ל- NTLM Hash של המשתמש, התוקף יכול לבצע התחברות מרוחקת ולהשתלט על המערכת.