PracticU

הגנה של שרתים בדומיין
נגד NtlmRelayX

בלי כתוביותעם כתוביות
PracticU › קורס פריצה ומבדקי חדירה לתשתית ארגונית - בדיקות חוסן מתקדמות ל-Active Directory - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › הגנה של שרתים בדומיין נגד NtlmRelayX
מילון מושגים:
NTLM - פרוטוקול אימות ותיק של מיקרוסופט המבוסס על ערכי האש של סיסמאות, שקדם ל-Kerberos.
אנטי וירוס - תוכנה שמזהה, חוסמת ומסירה תוכנות זדוניות מהמחשב, ומנטרת פעילות חשודה.
וירוס - תוכנה זדונית שמשכפלת את עצמה ומתפשטת ממחשב למחשב, ועלולה לפגוע בקבצים או בפעולת המערכת.
האש - פונקציה שממירה מידע לערך קצר באורך קבוע. שינוי קטן בקלט משנה את התוצאה, והיא חד-כיוונית.
חתימה דיגיטלית - מנגנון מבוסס הצפנה שמוכיח את מקור המידע ושלא שונה בדרך, בעזרת המפתח הפרטי של החותם.
שיתוף - תיקייה או משאב שהועמדו לרשת כדי שמשתמשים אחרים יוכלו לגשת אליהם לפי הרשאות.
ברודקאסט - שידור של הודעה אחת לכל המכשירים ברשת המקומית בו-זמנית.
OU - יחידה ארגונית ב-Active Directory: מכל לארגון משתמשים, קבוצות ומחשבים ולהחלת מדיניות עליהם.

הגנה של שרתים בדומיין נגד NtlmRelayX

בשיעור זה אנו לומדים כיצד להגן על שרתים בארגון מפני התקפת הממסר של NTLM, התקפה שאינה תלויה באורך הסיסמה ואינה נעצרת על ידי אנטי-וירוס, ומיישמים שכבות הגנה ברמת המדיניות וברמת הרשת.
נושאי הסיכום המוצגים בשיעור:
1. מדוע ההתקפה הזאת מסוכנת במיוחד: התקפת הממסר של NTLM אינה תלויה באורך הסיסמה ואינה דורשת לשבור האש, מספיק להיות מחוברים לרשת של הארגון ואפשר לתקוף שירותים שעובדים עם NTLM גם כשהאנטי-וירוס שלהם פעיל ומעודכן, ולכן זו אחת ההתקפות החזקות ביותר על שרתים מתוך הארגון.
2. שתי שיטות הגנה מרכזיות: מלבד ניתוק NTLM מהרשת שאינו סביר במציאות, הגנה ראשונה היא חיוב חתימה דיגיטלית על תקשורת השיתוף, והגנה שנייה היא מניעת כלל הקריאות הברודקאסט ברשת שמאפשרות לתוקף להציב את עצמו באמצע.
3. הקמת יחידה ארגונית לשרתים המוגנים: בניהול המשתמשים והמחשבים יוצרים יחידה ארגונית חדשה בשם שמציין דרישת חתימת השיתוף, וגוררים אליה את שרת הקבצים, כדי שמדיניות מיוחדת תחול עליו בלבד.
4. יצירת מדיניות קבוצתית לחתימה: בכלי ניהול המדיניות הקבוצתית יוצרים מדיניות חדשה עבור היחידה הארגונית, נכנסים לעריכתה, למדיניות אבטחה ברמת המחשב, לאפשרויות אבטחה, ומפעילים את ההגדרה של חתימה דיגיטלית תמידית, בניגוד לאפשרות המתינה להסכמת הלקוח.
5. מה ברירת המחדל ומה מטרת ההגדרה: כברירת מחדל בקר הדומיין מחייב חתימה דיגיטלית אך שאר השרתים אינם, וההסבר בהגדרה עצמה מבהיר שמטרתה למנוע התקפת איש בין, ומוסיף אזהרה שמדפסות ישנות שאינן יודעות לחתום דיגיטלית לא יוכלו לדבר עם השרת הזה.
6. הפעלת המדיניות על השרת: המדיניות נשמרת בתיקיית המערכת המשותפת של בקר הדומיין שבה יושבות כל המדיניות של הדומיין, והתחנות והשרתים מושכים אותן בפקודת העדכון של המדיניות, כאשר יש כאלה שאוהבים להריץ אותה עם דגל של כפייה, ולבסוף מבצעים הפעלה מחדש כי יש הגדרות שנקלטות רק אחרי ההפעלה מחדש, ומוודאים בכלי שמציג את המדיניות שיושמה על המחשב שההגדרה אכן נקלטה.
7. בדיקת ההגנה בפועל: מפעילים שוב את הכלי של ההתקפה, כותבים בצד הלקוח שם שרת עם שגיאת הקלדה מכוונת, הקריאה עונה שהתוקף הוא שרת הקבצים, אך ההתקפה נכשלת כי נדרשת חתימה דיגיטלית, ומוודאים שהשיתוף שהוקם על ידי ההתקפה אינו קיים עוד.
8. הגנה שנייה, כיבוי הקריאות ברשת: במדיניות קבוצתית שחלה על כל הארגון, בתבניות ניהוליות ובלקוח ה-DNS, מפעילים את ההגדרה שמכבה את הפתרון שמות שמבוסס שידור מרובה, כלומר מנטרלים לגמרי את הפרוטוקול שבאמצעותו התחנות צועקות ברשת את שמות המחשבים שאינם נמצאים, ולאחר מכן מעדכנים את המדיניות בבקר הדומיין ובשרת הקבצים, כאשר אפשר גם להמתין לעדכון אוטומטי אך כדי לחסוך זמן מריצים אותו ידנית.
9. חסימת שאר הפרוטוקולים שצועקים ברשת: מלבד אותו פרוטוקול יש גם את שמות הרשת הישנים מימי הווינדוס הקודם, וחוסמים אותם במאפייני כרטיס הרשת בהגדרות המתקדמות של הפרוטוקול על ידי ביטול השימוש בו, וגם את שירות שמות הרשת של אפל על ידי הוספת מפתח רישום שמכבה אותו, ומבצעים הפעלה מחדש כדי שההגדרות ייכנסו לתוקף.
10. הבדיקה הסופית: לאחר כל החסימות, כשכותבים בלקוח שם שאינו קיים מתקבלת מיד ההודעה שאין מחשב כזה, בלי שום המתנה ובלי שום פעילות ברשת, מכיוון שהמחשב הלך ישר אל שרת ה-DNS ושם קיבל תשובה מיידית שאין דבר כזה, וכך שום תחנה אינה צועקת עוד ברשת, כלי המעקב של התוקף אינו מקבל פניות ואינו מצליח להציב את עצמו באמצע התקשורת.
לסיכום, בשיעור זה ביצענו שכבות הגנה מול התקפת הממסר של NTLM, חייבנו חתימה דיגיטלית תמידית על תקשורת השיתוף בשרת הקבצים דרך מדיניות קבוצתית שיושמה ונבדקה, וכיבינו בכל הארגון את שלושת הפרוטוקולים שצועקים שמות ברשת, כך שהמחשבים פונים רק לשרת ה-DNS ולתוקף אין יותר הזדמנות להציב את עצמו באמצע התקשורת. SR12938HE

פרקי ההרצאה: הגנה של שרתים בדומיין נגד NtlmRelayX

  1. 00:00

    סכנת התקפת NTLM Relay

  2. 00:38

    הגנה באמצעות SMB Signing

  3. 01:16

    יצירת פוליסת SMB Signing

  4. 01:51

    הגדרת חתימה דיגיטלית תמידית

  5. 02:49

    החלת הפוליסה ובדיקתה

  6. 03:23

    אימות שההתקפה נחסמה

  7. 04:20

    חסימת LLMNR דרך Group Policy

תמלול ההרצאה: הגנה של שרתים בדומיין נגד NtlmRelayX

הטקסט המלא של הדקות הראשונות בהרצאה «הגנה של שרתים בדומיין נגד NtlmRelayX» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:02

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

  2. 00:24

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

  3. 00:41

    אז איך מונעים את ההתקפה הזאת? חוץ מלנתק NTLM ברשת, שזה די לא סביר, אפשר לעשות חתימה דיגיטלית. לחייב SMB לחתום דיגיטלית, לעשות חתימה על כל ההודעות שהוא מוציא.

  4. 00:54

    זאת אומרת, אני בא לדומיין קונטרולר, לכל הרשת שלי, פותח פה Users and Computers, עושה OU חדש, תיקייה חדשה נקרא לה smb signing required ככה קראתי לתיקייה הזאת הייתי יכול לקרוא לה בכל שם אחר ואני גורר לתוכה את הפייל סרבר שלי ועכשיו על ה-OU הזאת על התיקייה הזאת אני אפעיל פוליסה שתחייב smb signing איך

  5. 01:19

    אני עושה את זה אני עושה tools פותח group policy gpmc מחפש פה את ה-OU החדש שבנינו הנה הוא עושה right click Create a GPO, ליצור Group Policy. איך נקרא לה? גם נקרא לה SMB Signing Required Policy, נניח.

  6. 01:37

    הנה היא הופיעה כאן. נעשה עליה Right Click Edit. נלך ל-Policies, Security, Local Policies. אני רק אדזיז את זה טיפה, שיהיה לי מקום. Security Options, אני אדזיז את זה עוד טיפה.

  7. 01:49

    אז אני עושה Double Click על Digital Sign Communication Always. תמיד לחתום, בניגוד ל-If Client Agrees, רק אם קליינט מרשה. אני אומר לא, לא מעניין אותי קליינט מסכים או לא מסכים, אני תמיד דורש חתימה דיגיטלית על ההודעות.

  8. 02:03

    יש פה גם הסבר בדיוק מה זה עושה, ופה בהסבר כתוב שזה Enabled for Domain Controller, כי ברירת מחדל דומיין קונטרולר מחייב לחתום, וכל שאר השרתים זה Disabled, לא חייבים לחתום.

  9. 02:15

    והם ממש פה כותבים שהמטרה זה Prevent למנוע Man in the Middle. טוב, בואו נדליק את הפוליסה הזאת, נעשה לה Enabled, הוא אומר תיזהר אם יש לך מדפסות ישנות שלא יודעות לחתום דיגיטלית הם לא יוכלו לדבר עם השרת הזה אני עושה אוקיי והשרת עכשיו ידרוש את החתימה הדיגיטלית זה ייכנס ל-registry שלו הפוליסה הזאת למעשה

  10. 02:36

    הולכת לתיקייה משותפת כאן בשרת בשרת ה-DC בתיקייה שנקראת sysvol כאן יושבות כל הפוליסות של כל הדומיין והתחנות והשרתים באים ומושכים אותם דרך gp update הוא מחדש את הפוליסה זה אומר שהוא משך אותה וביצע אותה יש כאלו שאוהבים לעשות סלאש פורס כדי לוודא שזה אכן מתבצע ואם צריך אפילו לעשות ריסטארט בואו גם אנחנו נעשה ריסטארט כי יש הגדרות שהוא תופס רק אחרי ההפעלה מחדש

  11. 03:05

    סיימנו הפעלה מחדש ועכשיו נעזר בארסופ כדי לבדוק שההגדרה אכן תפסה ככה אני בודק איזה פוליסות תפסו על המחשב ואנחנו רואים פה שזה אכן נעשה ומה השם של הפוליסה שעשתה את ההגדרה הזאת ודבר אחרון נבדוק שההתקפה הזאת אכן נחסמה על הפייל סרבר שלנו אנחנו שוב מפעילים את הכלי של אימפקט ntlm relay x הנה הוא פה מחכה

  12. 03:30

    למישהו שיתחבר אליו ב-smb ריספונדר פה ממשיך לעבוד בואו נראה מה יקרה עכשיו נעשה שני סלאשים פייל סרבר נניח מנהל רשת טעה וכתב שני r בסוף כאן אנחנו רואים ש-lnmnr שלח תשובה ל-dc שהוא הפייל סרבר מצוין אבל האם הרילי הצליח בואו נראה הוא מנסה לתקוף את 133 על ידי גלגול הודעות מ-0.10 ל-133 אבל סיינינג is required הוא לא מצליח בואו

  13. 04:04

    נבדוק את זה שבפורט 11000 אין לו כבר שיתופים דרך אגב היינו יכולים גם למנוע את האלה למנהר הזה את הצעקות האלו ברשת זאת אומרת יש לנו שתי שיטות איך להגן אחת זה לדרוש את ה-SMB סיינינג והשיטה השנייה בכלל למנוע את כל הצעקות האלו בואו נראה איך מונעים את הצעקות ברשת אנחנו מגיעים ל- Group Policy Management ל-

  14. 04:26

    GPMC, עומדים על פוליסה שתופסת על כל הארגון, לוחצים Right Click Edit, ופה בתוך Policies ברמת המחשב יש לנו Administrative Templates, בואו נרחיב את זה קצת, Network, DNS Client, והנה ההגדרה שחיפשתי: Turn-off Multicast Name Resolution,

  15. 04:44

    לכבות את ה-LLMNR שמשתמש במולטיקאסט. בואו ניכנס פנימה ונראה את ההסבר, וכתוב כאן If you enable these policy settings, LLMNR will be disabled.

  16. 04:54

    מצוין, זה בדיוק מה שאני רוצה. אני חוסם את LLMNR, נהדר. עכשיו בכל הארגון שלי לא יהיו יותר צעקות ברשת. נעשה GP Update, נעדכן גם את ה-DC שלי, שימשוך את הפוליסה הזאת, וגם את ה-File Server.

  17. 05:09

    כמובן שהייתי יכול לחכות והוא היה מתעדכן לבד,

לקורס המלא: מבדקי חדירה ל‑Active Directory

ההרצאה הקודמת: השתלטות על כל הדומיין - עם NtlmRelayX

ההרצאה הבאה: עצירת Netbios דרך GPO Script

הרצאות קשורות מקורסים אחרים

  • XSS - הגנה נגד פריצה לאתר
  • רשומת SPF - הגנה נגד פישינג - DNS
  • ארונות וסוגי שרתים
  • התקנת DC שני - בדומיין - חלק 1

קורסים נוספים במסלול

  • קורס SOC - מיישם הגנת סייבר
  • קורס סייבר למתחילים - Hacking - בדיקות חוסן תשתיתי ופריצה ל-Windows 10/11 - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP
  • קורס פריצה ומבדקי חדירה לאתרי אינטרנט - בדיקות חוסן לאתרים - Web Pentesting - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP
  • קורס סייבר והאקינג ל-Android - פריצה לטלפונים ואפליקציות אנדרואיד - בודק חוסן - Mobile App Pentesting