PracticU

התקנת דלת אחורית - Registry Backdoor

בלי כתוביותעם כתוביות
PracticU › קורס סייבר למתחילים - Hacking - בדיקות חוסן תשתיתי ופריצה ל-Windows 10/11 - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › התקנת דלת אחורית - Registry Backdoor
מילון מושגים:
root - משתמש העל במערכות Linux, בעל הרשאות מלאות לכל פעולה. גם הרמה העליונה בעץ של תיקיות או נתונים.
אנטי וירוס - תוכנה שמזהה, חוסמת ומסירה תוכנות זדוניות מהמחשב, ומנטרת פעילות חשודה.
Group Policy - מנגנון ב-Active Directory להחלת הגדרות ומדיניות אבטחה באופן מרכזי על משתמשים ומחשבים בדומיין.
NAT - מנגנון שמתרגם כתובות IP פרטיות לכתובת ציבורית אחת, כדי לאפשר למחשבים ברשת פנימית לגשת לאינטרנט.
טרמינל - חלון או תוכנה שמספקים ממשק שורת פקודה להקלדת פקודות למערכת ההפעלה.
CMD - שורת הפקודה הקלאסית של Windows (Command Prompt), להרצת פקודות ותוכניות בממשק טקסטואלי.
Base64 - שיטת קידוד שממירה נתונים בינאריים לטקסט מתווים מודפסים, כדי להעבירם בבטחה בערוצים טקסטואליים.
Unicode - תקן קידוד תווים אוניברסלי שמכסה את כתבי השפות בעולם, ומאפשר לייצג כמעט כל תו.

התקנת דלת אחורית - Registry Backdoor

בשיעור זה אנו לומדים מהי דלת אחורית וכיצד להבטיח הישארות במערכת גם אחרי הפעלה מחדש של המחשב, בשיטת ההשתלה בריג'סטרי של וינדוס, תוך שמירה על עקרון ההסתרה מבלי להשאיר אף קובץ על הדיסק.
נושאי הסיכום המוצגים בשיעור:
1. מהי דלת אחורית: כאשר אנו יושבים בזיכרון הקורבן, הפעלה מחדש של המחשב מוחקת את הנוכחות שלנו, ולכן נדרש מנגנון שמפעיל את ה-payload שלנו אוטומטית גם אחרי הריסטארט, וזהו עיקרון ה-persistence.
2. שלוש שיטות קיבוע: סקירת שיטות להשתלה קבועה במערכת, השתלה בריג'סטרי מבלי לגעת בדיסק בכלל, הצבת סקריפט בתיקיית Startup שמופעלת בכל כניסה של יוזר, והתקנת Windows Service שרץ ברקע עם הדלקת המחשב.
3. הכנת הסביבה: עדכון Metasploit בקאלי לאחר כניסה למצב root, כיוון שהדגמות ההשתלה דורשות גרסה מעודכנת של הפריימוורק.
4. נטרול אנטי-וירוס דרך Group Policy: במקום כיבוי ידני שהתהפך אחרי כל ריסטארט, נכנסים ל-gpedit.msc, למדיניות ברמת המחשב, ומכבים את Real-Time Protection של Defender, ואז האנטי-וירוס מנוטרל באופן קבוע ונעול על ידי המנהל גם אחרי הפעלה מחדש.
5. חיפוש מודולי persistence: באמצעות search ב-Metasploit מאתרים את כל המודולים ששמם מכיל windows ו-persistence, ומגלים מודולים לריג'סטרי, לשירותי וינדוס ולהתקנת payload בתיקיית ההפעלה.
6. בחירת ערוץ תקשורת: ההחלטה להשתמש ב-payload מסוג reverse HTTPS, מכיוון שתקשורת זו נראית למאזין כגלישה רגילה באינטרנט עם הצפנה, וכך ההתחברות של הקורבן חזרה אלינו נראית תמימה, כולל שימוש בפורט 443 הרגיל של אתרי אינטרנט.
7. ההבדל בין reverse ל-bind: ב-payload מסוג reverse הקורבן הוא זה שמתחבר אלינו, ולכן הוא חוצה דרך חומות אש ורשתות NAT, בעוד ב-bind אנחנו מתחברים אל הקורבן.
8. ביצוע הפריצה: שימוש באקספלויט הידוע של חולשת SingBreeze גרסה 1028, קביעת RHOST לכתובת הקורבן, החלפת ה-payload ל-reverse HTTPS, קביעת LHOST לכתובת שלנו ו-LPORT ל-443, והרצת האקספלויט.
9. הרצת פקודות מערכת מתוך Metasploit: הפקודה ifconfig אינה קיימת ב-Metasploit אך הוא יודע להריץ אותה בטרמינל הרגיל ולהחזיר את התוצאות, וכך מאתרים את הכתובת המקומית שלנו לקביעת LHOST.
10. מעבר ליוזר הפעיל: לאחר הפריצה אנו יוזר System, ובעזרת ps מאתרים את התהליך של explorer ששייך ליוזר אלכס היושב על המחשב, ומבצעים migrate לתהליך שלו.
11. מדוע להתחבר ליוזר ולא למכונה: כיוון שהסקריפט שנשתול מיועד לרוץ בכל כניסה של יוזר מסוים למערכת, אנו עוברים תחילה להיות אותו יוזר, ורק בשיעור הבא נראה קיבוע בזמן הדלקת המחשב.
12. היכרות עם מודול registry persistence: באמצעות info קוראים על המודול מתוך ה-Meterpreter, והמודול מסביר שהוא מתקין payload שמורץ אוטומטית בזמן אתחול המערכת או בזמן לוגין של יוזר או System, ושהוא שותל את עצמו בריג'סטרי.
13. הרצת המודול מתוך Meterpreter: דרך אחת היא להריץ run ישירות בתוך ה-Meterpreter עם פרמטרים כמו startup=user וה-payload המבוקש, כאשר משתנה ה-payload אינו מופיע ברשימת שדות החובה אך הוא קיים וניתן להגדרה.
14. הרצת המודול מבחוץ: הדרך השנייה והנוחה היא לצאת ב-background ל-Metasploit הראשי, לעשות use למודול registry persistence, לקבוע את המשתנה SESSION למספר הסשן הפתוח, לקבוע payload, LHOST ו-LPORT, ואז להריץ run.
15. הפרמטרים שמקבלים המודול: מודול ה-persistence מקבל את הסשן שאליו מתחבר, את ה-payload שיופעל בכל כניסה, ואת פרמטרי ה-payload עצמו, כלומר לאן הסקריפט השתול יתחבר חזרה.
16. איפה הסקריפט נשתל בריג'סטרי: הסקריפט נשתל תחת HKCU, כלומר הריג'סטרי של היוזר הנוכחי, בתוך Software ומפתח עם שם אקראי, והוא מופעל דרך מפתח ה-Run המפעיל תוכנות אוטומטית בכל כניסה של היוזר.
17. בדיקת ההשתלה בריג'דיט: פתיחת regedit וניווט אל המפתח שנוצר, שם רואים ערך עם שם אקראי שמריץ פקודת CMD, ולימוד על משתנה הסביבה COMSPEC שמצביע על CMD ומופיע ברשימת משתני הסביבה של וינדוס.
18. הסתרת הסקריפט בקידוד Base64: הערך בריג'סטרי מריץ PowerShell במצב hidden שמריץ באמצעות invoke expression סקריפט המקודד ב-Base64 בקידוד Unicode, והסימן שווה בסוף הטקסט הוא סימן מוכר לקידוד Base64.
19. הכנת המאזין לפני הבדיקה: סוגרים את כל הסשנים הקיימים ומפעילים מודול Handler ב-Metasploit שמאזין ברקע לחיבורי reverse HTTPS נכנסים, ומגדירים לו איזה payload לשלוח למתחבר, מה שמדגים חלוקה של התוכנה לחלק ראשון השתול אצל הקורבן וחלק שני שנשלח אחרי החיבור הראשוני.
20. הבדיקה המלאה עם הקורבן: לאחר ריסטארט של המחשב הקורבן לא קורה דבר עד שהיוזר מתחבר, וברגע שאלכס נכנס למערכת נפתח אוטומטית סשן Meterpreter חדש, getuid מאשר שאנו כאלכס, ומנקודה זו זמינות לנו כל הפקודות שלמדנו.
לסיכום, בשיעור זה הכרנו את שלוש השיטות להשתלה קבועה במערכת, נטרלנו את האנטי-וירוס באופן קבוע דרך Group Policy, פרצנו דרך חולשת SingBreeze, עברנו ליוזר הפעיל במיגרייט, שתלנו סקריפט מוצפן ב-Base64 בריג'סטרי של היוזר דרך מפתח ה-Run, והקמנו Handler שממתין לחיבור החוזר, כך שבכל לוגין של הקורבן אנו מקבלים שליטה מחודשת על המחשב.
בשיעור הבא נעסוק בנושא התקנת דלת אחורית - Windows Service Backdoor.
SR12478HE

פרקי ההרצאה: התקנת דלת אחורית - Registry Backdoor

  1. 00:00

    הרעיון של פרסיסטנס ברג'יסטרי

  2. 01:37

    נטרול ההגנה דרך Group Policy

  3. 03:46

    בחירת payload לפרסיסטנס

  4. 05:29

    סוגי payload של Meterpreter

  5. 07:12

    הגדרת כתובות היעד וה-host

  6. 08:45

    זיהוי ההרשאות הנוכחיות

  7. 09:43

    צפייה בפרטי ה-Exploit

תמלול ההרצאה: התקנת דלת אחורית - Registry Backdoor

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

  1. 00:02

    שלום לכולם, ברוכים הבאים להרצאה על Backdoor דלת אחורית שאנחנו משאירים במחשב פתוחה בשבילנו לאחר שפרצנו פנימה כדי שנוכל לשרוד את ה-Restart, את ההפעלה מחדש.

  2. 00:18

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

  3. 00:33

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

  4. 00:43

    אני שם את כל הסקריפט, את כל הפקודות של התחברות חזרה לקאלי, התחברות חזרה אליה אחרי הריסטארט. את כל הפקודות של הסקריפט אני שם ברג'יסטרי, לא שם שום קובץ בדיסק.

  5. 00:57

    ואז האנטיווירוס לא יכול לתפוס אותי. זאת שיטה מדהימה, ואני הולך להראות לכם אותה. יש עוד שיטה, לעשות סקריפט ולשים אותו בתיקייה של סטארט-אפ פולדר.

  6. 01:07

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

  7. 01:26

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

  8. 01:48

    אחרי זה נלמד איך לעקוף את האנטיווירוס, אני לא רוצה לדבר עכשיו איך עוקפים אותו האמת שזה לא כזה מסובך לעקוף אותו אני רוצה להיכנס לווירוס Threats Protections Manage Settings ולעשות פה Off.

  9. 02:04

    הבעיה שכל ההפעלה מחדש הוא נדלק אז אני לא אעשה פה Off, אני אעשה דרך Group Policy. אז אני כותב gp-edit.msc שזה Group Policy. Edit Group Policy.

  10. 02:17

    פוליסה זה מדיניות שחלה על המחשב. יש לנו מדיניות שחלה ברמת המחשב וברמת יוזר. אני ברמת המחשב רוצה לכבות את האנטיווירוס. אז אני הולך ל-Windows Components פה, מיקרוסופט אני מתחיל לכתוב את השם דפנדר אנטיווירוס פותח אותו real time protection הנה זה זה ומחפש את ההגדרה turn off real time protection שימו לב מה יקרה פה כשאני אעשה את זה שימו לב כאן זה on אני עושה על זה

  11. 02:51

    דאבל קליק עושה את זה disable turn off enable turn off לכבות שימו לב מה יקרה פה כשאני אעשה פה נקסט, הופה, אתם ראיתם מה קרה פה? זה נהיה אוף ואי אפשר להדליק אותו יותר.

  12. 03:06

    אתם רואים? אי אפשר להדליק את זה יותר. זהו. זה מחובה ברמת הפוליסה, Manage by your administrator. זאת אומרת שברגע שקבעתי פה turn-off real-time protection, שם זה נחבא.

  13. 03:19

    אז זהו, עכשיו האנטיווירוס לא יציק לנו? מצוין. בואו נבדוק גם שחוץ מ-real-time protection פה זה גם במצב אוף, גם פה זה במצב אוף וגם פה זה במצב אוף.

  14. 03:30

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

  15. 03:51

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

  16. 04:01

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

  17. 04:34

    בואו נגדיל חזרה. אז אנחנו הולכים לא לראות את כולם, אלא כמה מהם. בואו נתחיל מ-registry, כי לדעתי זה הכי מגניב שלא שמים שום קובץ בארט-דיסק.

  18. 04:44

    אוקיי, אחרי שאנחנו החלטנו איך אנחנו רוצים לקבע אותו, בואו נקבל גם החלטה איך אנחנו מקבלים תקשורת מהקורבן אלינו, ואני רוצה לעשות את זה ב-HTTPS.

  19. 04:56

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

  20. 05:23

    לה הוא יראה HTTPS רגיל כאילו המחשב שלו הלך לאיזשהו אתר באינטרנט אנחנו רואים פה מלא פיילודים של מטרפריטר שזה ה-CMD המשוכלל ויש לו פה רוורס HTTPS וביינד, ביינד זה שאנחנו מתחברים אליו ורוורס שהוא מתחבר אלינו אז הוא מתחבר אלינו ב-HTTP, HTTPS אני אשתמש בפקודת גרפ שישלוף לי רק HTTPS'ים

  21. 05:29

    והנה הוא שלף לי רק את השורות שיש בהם מילת HTTPS אני רואה פה עם פרוקסי אני רואה פה צורת התחברות עם ווין HTTP ו-Win INED אנחנו לא ניכנס עכשיו לדקויות מה ההבדלים ביניהם מבחינת הביצוע של התקשורת נבחר נניח את זה נניח שאנחנו נרצה להשתמש ב-payload הזה אחרי הפריצה אני מנסה כמה שיותר לדמות

  22. 06:13

    מצב במציאות כדי שיהיה כמה שיותר אמיתי אפילו שה-payload הזה הוא לא ברירת מחדל אני רוצה להשתמש ב-HTTPs שייראה הכי אמיתי שאפשר טוב אז החלטנו שאנחנו הולכים על פיילוד הזה על הפצצה הזאת אחרי שהיא מתפוצצת אחרי שחדרנו פנימה יופי טוב אז בוא נתחיל לפרוץ אז אנחנו קודם כל מנצלים את החולשה שנקראת סינג בריז זאת החולשה בתוכנת סינג

  23. 06:39

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

  24. 07:03

    אוקיי, בואו נעשה show options, נראה מה יש לנו פה, יש לנו פה שדה לימי פורצים, ה-host required, ואני קובע שנפרוץ ל-147, מה עוד, אני רואה פה שאחרי שנפרוץ, ה-payload שלנו, הפצצה שלנו תהיה reverse tcp, חיבור tcp רגיל, אני לא, אני מעדיף שיהיה HTTPS,

  25. 07:26

    זאת אומרת כאילו אנחנו בתוך HTTPS זה לא כזה משנה, אנחנו יכולים להשתמש ב-Reverse TCP אנחנו יכולים להשתמש ב-Reverse HTTPS אני מעדיף שיהיה Reverse HTTPS כי זה נשמע לי ממש הכי דומה לתקשורת רגילה של המשתמש יופי, בואו נעשה שואו אופצ'אנס, נראה מה יש לנו עכשיו אז ה-host קבענו אותו, ה-IP שלנו ב-payload,

  26. 07:51

    לאן הוא יתחבר אלינו, reverse זה אומר שהוא מתחבר אלינו, הוא יתחבר ל-153 שזה IP שלנו, פורט 444, לא, אני רוצה שאני אהיה כאילו שרת אינטרנט, אז אני אעשה 443, EF-Config, אתם יכולים לראות שהוא ראה שהפקודה הזאת לא קיימת בתוך ה-Meta-Sploit, אז הוא עשה אקזק בתוך הטרמינל הרגיל ונתן לי תוצאות, זאת אומרת, הוא יודע להריץ פקודות

  27. 08:17

    מהטרמינל הרגיל. אז אני רואה ב-53 שזאת הכתובת שלי, פורט 443, options אנחנו רואים באמת שאחרי שאנחנו נפרוץ הוא יחזור אלינו ברוורס HTTPS ב-153.443 נהדר עכשיו אני עושה exploit או run ופורץ אליו לוקח לו כמה שניות אחרי שאנחנו פורצים אליו אני רוצה לעבור להיות המשתמש עצמו זאת אומרת

  28. 08:45

    אני כרגע get user ID אני כרגע user system אני עושה PS בודק את כל התהליכים שרצים במחשב בשם explorer אני רואה שיש תהליך בשם אלכס, זה המשתמש שכרגע יושב על המחשב ואני עושה מיגרייט לתהליך שלו, 3956 ואני נהיה עכשיו אלכס.

  29. 09:07

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

  30. 09:23

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

  31. 09:31

    אז אפשר בזמן הלוגין, אפשר בזמן ההדלקה של המחשב. עכשיו, אנחנו יכולים להשתמש בכמה סקריפטים של Persistance. זוכרים את ה-Registry Persistance?

  32. 09:41

    זה זה שהיה פה למעלה. זה שם של ה-Exploit שעשינו לו search, אני מזכיר לכם למעלה למעלה בהתחלה. למעלה למעלה ממש בהתחלה. עשינו פה Exploit Windows Registry Persistance.

  33. 09:55

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

  34. 10:21

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

לקורס המלא: קורס סייבר למתחילים אונליין

ההרצאה הקודמת: שימוש בממשק גרפי של msfconsole

ההרצאה הבאה: התקנת דלת אחורית - Windows Service Backdoor

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

  • הרצאה על Registry
  • התקנת Registry פרטי לאחסון Image
  • יצירת Backdoor - וונדוס 11 עם Metasploit
  • שינוי Port של Remote Desktop ב-Registry

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

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