
הטקסט המלא של הדקות הראשונות בהרצאה «הגנה של שרתים בדומיין נגד NtlmRelayX» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.
שלום לכולם, בהרצאה הזו אנחנו נלמד להגן נגד התקפת NTLM ריליי X התקפה סופר חזקה על שרתים בארגון כי היא לא תלויה באורך הסיסמה לא צריך לשבור את ההאש אפשר לתקוף את השרתים בלי לדעת את הסיסמה המקורית של האדמיניסטרטור מספיק לנו להיות מחובר לווילאן שלו, לרשת שלו ואנחנו כבר מצליחים לתקוף שירותים שעובדים
עם NTLM גם אם האנטיווירוס שלהם דולק ומעודכן אז אתם חייבים ללמוד איך לעצור את ההתקפה החזקה הזאת תלויה באורך סיסמה, לא תלויה באנטיווירוסים, ולדעתי זאת אחת ההתקפות הכי חזקות שקיימות על השרתים מתוך הארגון.
אז איך מונעים את ההתקפה הזאת? חוץ מלנתק NTLM ברשת, שזה די לא סביר, אפשר לעשות חתימה דיגיטלית. לחייב SMB לחתום דיגיטלית, לעשות חתימה על כל ההודעות שהוא מוציא.
זאת אומרת, אני בא לדומיין קונטרולר, לכל הרשת שלי, פותח פה Users and Computers, עושה OU חדש, תיקייה חדשה נקרא לה smb signing required ככה קראתי לתיקייה הזאת הייתי יכול לקרוא לה בכל שם אחר ואני גורר לתוכה את הפייל סרבר שלי ועכשיו על ה-OU הזאת על התיקייה הזאת אני אפעיל פוליסה שתחייב smb signing איך
אני עושה את זה אני עושה tools פותח group policy gpmc מחפש פה את ה-OU החדש שבנינו הנה הוא עושה right click Create a GPO, ליצור Group Policy. איך נקרא לה? גם נקרא לה SMB Signing Required Policy, נניח.
הנה היא הופיעה כאן. נעשה עליה Right Click Edit. נלך ל-Policies, Security, Local Policies. אני רק אדזיז את זה טיפה, שיהיה לי מקום. Security Options, אני אדזיז את זה עוד טיפה.
אז אני עושה Double Click על Digital Sign Communication Always. תמיד לחתום, בניגוד ל-If Client Agrees, רק אם קליינט מרשה. אני אומר לא, לא מעניין אותי קליינט מסכים או לא מסכים, אני תמיד דורש חתימה דיגיטלית על ההודעות.
יש פה גם הסבר בדיוק מה זה עושה, ופה בהסבר כתוב שזה Enabled for Domain Controller, כי ברירת מחדל דומיין קונטרולר מחייב לחתום, וכל שאר השרתים זה Disabled, לא חייבים לחתום.
והם ממש פה כותבים שהמטרה זה Prevent למנוע Man in the Middle. טוב, בואו נדליק את הפוליסה הזאת, נעשה לה Enabled, הוא אומר תיזהר אם יש לך מדפסות ישנות שלא יודעות לחתום דיגיטלית הם לא יוכלו לדבר עם השרת הזה אני עושה אוקיי והשרת עכשיו ידרוש את החתימה הדיגיטלית זה ייכנס ל-registry שלו הפוליסה הזאת למעשה
הולכת לתיקייה משותפת כאן בשרת בשרת ה-DC בתיקייה שנקראת sysvol כאן יושבות כל הפוליסות של כל הדומיין והתחנות והשרתים באים ומושכים אותם דרך gp update הוא מחדש את הפוליסה זה אומר שהוא משך אותה וביצע אותה יש כאלו שאוהבים לעשות סלאש פורס כדי לוודא שזה אכן מתבצע ואם צריך אפילו לעשות ריסטארט בואו גם אנחנו נעשה ריסטארט כי יש הגדרות שהוא תופס רק אחרי ההפעלה מחדש
סיימנו הפעלה מחדש ועכשיו נעזר בארסופ כדי לבדוק שההגדרה אכן תפסה ככה אני בודק איזה פוליסות תפסו על המחשב ואנחנו רואים פה שזה אכן נעשה ומה השם של הפוליסה שעשתה את ההגדרה הזאת ודבר אחרון נבדוק שההתקפה הזאת אכן נחסמה על הפייל סרבר שלנו אנחנו שוב מפעילים את הכלי של אימפקט ntlm relay x הנה הוא פה מחכה
למישהו שיתחבר אליו ב-smb ריספונדר פה ממשיך לעבוד בואו נראה מה יקרה עכשיו נעשה שני סלאשים פייל סרבר נניח מנהל רשת טעה וכתב שני r בסוף כאן אנחנו רואים ש-lnmnr שלח תשובה ל-dc שהוא הפייל סרבר מצוין אבל האם הרילי הצליח בואו נראה הוא מנסה לתקוף את 133 על ידי גלגול הודעות מ-0.10 ל-133 אבל סיינינג is required הוא לא מצליח בואו
נבדוק את זה שבפורט 11000 אין לו כבר שיתופים דרך אגב היינו יכולים גם למנוע את האלה למנהר הזה את הצעקות האלו ברשת זאת אומרת יש לנו שתי שיטות איך להגן אחת זה לדרוש את ה-SMB סיינינג והשיטה השנייה בכלל למנוע את כל הצעקות האלו בואו נראה איך מונעים את הצעקות ברשת אנחנו מגיעים ל- Group Policy Management ל-
GPMC, עומדים על פוליסה שתופסת על כל הארגון, לוחצים Right Click Edit, ופה בתוך Policies ברמת המחשב יש לנו Administrative Templates, בואו נרחיב את זה קצת, Network, DNS Client, והנה ההגדרה שחיפשתי: Turn-off Multicast Name Resolution,
לכבות את ה-LLMNR שמשתמש במולטיקאסט. בואו ניכנס פנימה ונראה את ההסבר, וכתוב כאן If you enable these policy settings, LLMNR will be disabled.
מצוין, זה בדיוק מה שאני רוצה. אני חוסם את LLMNR, נהדר. עכשיו בכל הארגון שלי לא יהיו יותר צעקות ברשת. נעשה GP Update, נעדכן גם את ה-DC שלי, שימשוך את הפוליסה הזאת, וגם את ה-File Server.
כמובן שהייתי יכול לחכות והוא היה מתעדכן לבד,