
הטקסט המלא של הדקות הראשונות בהרצאה «עצירה וחסימה של NTLMRelayX MiTM6 Mitigation» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם, בהרצאה הזו אנחנו נראה איך מונעים את ההתקפה הזאת ומונעים אותה על ידי הלד-אפ סיינינג עם טוקנים כמו שב-SMB מנענו SMB ריליי על ידי חתימה, ככה אנחנו גם פה מונעים. המניעה היא מאוד מאוד פשוטה: לא לאפשר NTLM ריליי עתה, כל ה-NTLM ריליי הזה, למנוע אותו.
הבעיה שפרוטוקול ה-NTLM לא יודע למנוע התקפת ריליי, הוא לא יודע להתמודד עם זה. אז מה שעושים? אומרים טוב אם אתה לא יודע להתמודד עם זה אז בשלב הבא אחרי העימות של NTLM כבר בשלב ה-LDAP עצמו נחתום כל חבילה ואז האקר לא יוכל לעשות כלום כי האקר לא יכול לחתום על החבילות
כי אין לו את הסיסמה של היוזר זאת אומרת ש-NTLM ריליי עתק יצליח ההתקפה של NTLM ריליי תצליח אתה תעבור עימות תגיע כבר לשלב הבא של LDAP או SMB ואז כבר בשלב הבא השרת ידרוש פקטים שיהיו חתומים עם הסיסמה של היוזר והאקר לא יודע את הסיסמה של היוזר והוא לא יצליח לחתום על הפקטים אז למרות שהוא עבר אימות
של ntlm בשלב הפרוטוקול בשלב התכלס השרת לא יקבל ממנו פקטים כי הם לא יהיו חתומים כאילו המניעה היא לא ברמת ה ntlm אלא בשלב הבא של הפרוטוקול עצמו אז כמו שראינו smb סיינינג אז צריך לעשות אותו דבר ldap סיינינג שפרוטוקול אלדאפ ידרוש פאקטים חתומים עם הסיסמה של היוזר,
אבל גם אלדאפ סיינינג הזה הוא דפוק, אז הוסיפו לו טוקנים נוספים. זה דרך אגב יחסית חדש, כי אלדאפ סיינינג היה דפוק, אז הוסיפו לו טוקנים, וזה קרה לפני כמה שנים בודדות.
איך עושים את כל זה תכלס? איך מונעים את ההתקפה הזאת? אנחנו באים ל-Tools, בתוך ה-Tools Group Policy Management אנחנו הולכים לעשות שייכנס ל-registry של כל המחשבים בארגון, במיוחד הדומיין קונטרולרים, וידרשו את החתימה הזאת.
כמו שאתם יכולים לראות, באתר של מייקרוסופט הם מודים בעצמם שיש להם באג שהתגלה ב-2017, זה מספר הבאג הזה, זה נקרא CVE. מייקרוסופט בעצמם מודים בזה שיש בעיה של התקפת Man in the Middle, כאשר האטאקר, התוקף, מצליח לעשות forward, לגלגל קדימה Authentication Request בקשות
העימות לתוך שרת ה-LDAP בואו נמנע את זה ניכנס כאן לדומיין שלנו נראה שיש לנו כבר פוליסה שעשינו לפני כן שמבטלת אלה למנהר רק שזה לא עוזר כי IPv6 עבד אבל אני לא רוצה לבטל IPv6 אני רוצה בדומיין קונטרולר לדרוש LDAP סיינינג זה הכל שדומיין קונטרולר לא יקבל חבילות LDAP לא חתומות אז מה יש לנו פה בתוך הפוליסה יש
לנו פה כל מיני הגדרות ובסיקיוריטי סטינגס כבר מוגדר לנו שהדומיין קונטרולר לא צריך בכלל חתימה. אתם רואים איזה שטות זאת? דומיין קונטרולר מראש מוגדר כאחד שלא דורש חתימה.
לא יודע למה מייקרוסופט עשו את זה כברירת מחדל, נעשה אדיט, ניכנס לפוליסה הזאת, יש פה מעל 3,000 הגדרות, אז אל תנסו לסקור את זה.
נגיע ל-Security Options של המחשב, ונחפש פה דומיין קונטרולר. ויש פה את ההגדרה הזאת: עכשיו אני לא הולך לגעת בזה כי זה לא באמת יעזור לי בכלום אני צריך משהו יותר חדש וחכם האופציה הזאת עם הטוקינים זה מה שיציל אותי, הטוקינים החדשים האלו שהם הכניסו אני עושה על זה דאבל
קליק, עושה V ומגדיר תמיד לדרוש את הטוקינים נסגור את הפוליסה אנחנו יכולים לחכות שהשרת יעדכן את הפוליסות שלו לבד או יעשה ריסטארט ואפשר לעשות gp update / force כדי שהשרת המקומי יאכוף מחדש את הפוליסות ויכניס אותן לרג'יסטרי המקומי שלו.
בואו נעשה ארסופ לבדוק שכרגע ההגדרה הזאת פועלת. ריזלט אנד סט אוף פוליסי. אתם רואים למעלה כתוב ארסופ? זה אומר מה קורה תכלס במחשב הזה ברקע זה לגבי אגרופוליסי, איזה הגדרות פועלות עליו, ואני רואה שההגדרה שלי תפסה על דומיין קונטרולר
שאני דורש את הטוקינים החדשים ומאיזה פוליסה. אני ממליץ לכם לא לשנות את הפוליסה הקיימת, הדפולטית, אלא ליצור פוליסה חדשה ולשים בה רק את ההגדרה הזאת.
אני שיניתי פוליסת בריאת מחדל וזה נחשב לא כל כך יפה. בואו נעשה גם ריסטארט ליתר ביטחון כדי שהסרוויס של LDAP יעבוד מחדש.
ואחרי הריסטארט ננסה את ההתקפה שלנו. לפני כן אני רק רוצה לבדוק מי הם שרתי ה-DNS של הקורבן שלי, שזה פייל סרבר. כרגע יש לו רק שני שרתי DNS ב-IPv4. אני מפעיל את ה-man in the middle v6 רק על השרת הזה כדי לא לדפוק את כל הרשת כי אני הולך להתחזות ל-DNS של הדומיין הזה וכל הבקשות ה-DNSיות יעברו אליי ואני לא ה-DNS האמיתי הזה, קצת אדפוק לו את העבודה.
עשיתי ריסטארט לפייל סרבר והנה אני רואה שהוא מבקש מ-DHCP לקבל כתובת. הנה הפייל סרבר עושה ריסטארט ומתקשר עם DHCP. הנה אני שולח לו ספוף ריפליי, ריפליי מזויף.
בואו נפעיל את ההתקפה של ntlm-relay-x אני רק בודק שב-IP-config/all השרת אחרי ה-restart קיבל את ה-DNS שלי זה חלק מאוד מאוד חשוב בהתקפה שאני אכנס כ-DNS שלו אם זה לא עובד לי אני עושה ריסטארט למחשב אם ה-Renew לא עובד בקיצור אני שרת DNS
ועכשיו הדפדפן עם ההרשאות של דומיין אדמין יחפש פרוקסי ואני אגלגל את החיפוש של הפרוקסי שלו את העימות של הפרוקסי שלו ל-LDAP אבל הפעם זה פיילד, אתם רואים? זה נכשל.