PracticU

העלאת הרשאות על ידי ניצול באגים בהרשאות על רגיסטרי

בלי כתוביותעם כתוביות
PracticU › קורס סייבר למתחילים - Hacking - בדיקות חוסן תשתיתי ופריצה ל-Windows 10/11 - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › העלאת הרשאות על ידי ניצול באגים בהרשאות על רגיסטרי
מילון מושגים:
הרשאה - קביעה אילו פעולות ומשאבים מותרים למשתמש או לתהליך לאחר שזהותו אומתה. שולטת במי רשאי לעשות מה.
באג - תקלה או שגיאה בקוד שגורמת לתוכנה להתנהג בניגוד למצופה.
שורת פקודה - ממשק טקסטואלי שבו מקלידים פקודות למערכת ההפעלה ומקבלים תגובה בטקסט, במקום להשתמש בעכבר.
HTTPS - הגרסה המאובטחת של HTTP, שמצפינה את התקשורת בין הדפדפן לשרת בעזרת TLS ומאמתת את זהות האתר.
אנטי וירוס - תוכנה שמזהה, חוסמת ומסירה תוכנות זדוניות מהמחשב, ומנטרת פעילות חשודה.
וירוס - תוכנה זדונית שמשכפלת את עצמה ומתפשטת ממחשב למחשב, ועלולה לפגוע בקבצים או בפעולת המערכת.
סשן - פרק זמן של פעילות רציפה בין משתמש למערכת, שבו נשמר מידע על מצבו, למשל לאחר התחברות לאתר.
CMD - שורת הפקודה הקלאסית של Windows (Command Prompt), להרצת פקודות ותוכניות בממשק טקסטואלי.

העלאת הרשאות על ידי ניצול באגים בהרשאות על רגיסטרי
בשיעור זה נעלה הרשאות ממשתמש רגיל עד לרמת המערכת על ידי ניצול הרשאות שגויות על הרגיסטרי, ולא על קובצים כפי שעשינו בשיעור הקודם. כל השירותים של ווינדוס רשומים ברגיסטרי, ואם מתכנת של תוכנת צד שלישי משאיר הרשאות רחבות מדי על הענף של השירות שלו, משתמש רגיל יכול להפנות את השירות אל קובץ משלו. נבצע את התהליך פעם בממשק גרפי ופעם כולו בשורת פקודה מרחוק.
נושאי הסיכום המוצגים בשיעור:
1. הסביבה והתוכנה: מתקינים את Serviio, שרת סטרימינג אמיתי שהופך את המחשב הביתי לספריית מדיה שמזרימה סרטים בשידור חי לטלוויזיות ולהתקנים נוספים, עם גרסה חינמית וגרסה בתשלום. השירות שלו רץ ברקע עם הרשאות של Local System.
2. הכנת ההתקפה: מוכנים שני סוסי טרויאני, קובץ exe רגיל לשליחה לקורבן וקובץ exe מסוג שירות לשלב ההחלפה, מאזין של reverse HTTPS ממתין לחיבורים, ושרת web משמש להעברת הקבצים. האנטי וירוס מנוטרל לצורך ההדגמה.
3. כניסה ראשונית למכונה: הקורבן מקבל לינק, מוריד את הסוס הטרויאני ומפעיל אותו, ומתקבל סשן. בעזרת getuid מאומת שהמשתמש הוא אלכס, ובעזרת getprivs שההרשאות בסיסיות בלבד, כלומר נדרשת העלאת הרשאות.
4. השירות והרגיסטרי: במסך השירותים רואים שהשירות הותקן, רץ עם הרשאות System ומופעל אוטומטית. כל שירות רשום ברגיסטרי תחת HKLM System CurrentControlSet Services, שם יש לכל שירות מפתח משלו ובתוכו ערך שנקרא Image Path שמפנה אל קובץ ה exe שמורץ. ממסך השירותים הגרפי קורא מאותו מקום בדיוק.
5. הבאג בהרשאות הענף: אם על המפתח של השירות ברגיסטרי ניתנו למשתמשים רגילים הרשאות Full Control, אפשר להיכנס לענף הזה ולהחליף את ה Image Path כך שיפנה אל הסוס הטרויאני של התוקף. מעתה ווינדוס עצמו יפעיל את הסוס הטרויאני עם הרשאות Local System בכל הפעלה של השירות.
6. הפעלה מחדש וקבלת ההרשאות: אחרי אתחול המחשב נפתח סשן חדש עוד לפני שהמשתמש בכלל ביצע התחברות, ו getuid מאומת שאנו Local System, המשתמש החזק ביותר במערכת. זו ההעלאה השלמה, והיא הושגה בממשק הגרפי.
7. איפוס והכנת הבאג ידנית: מתקינים את התוכנה מחדש כדי לאפס את ההגדרות, ומכיוון שבמקרה הזה המתכנתים לא עשו את הטעות בפועל, מדמים אותה מראש על ידי מתן הרשאות לכל המשתמשים על מפתח השירות ברגיסטרי. המאזין מופעל מחדש כשספירת הסשנים מתחילה מאפס, והסביבה נקייה מסשנים קודמים.
8. חזרה לנקודת הפתיחה: הקורבן מפעיל את הסוס הטרויאני ומתקבל סשן יחיד, getuid מראה את המשתמש אלכס ו getprivs מראה הרשאות נמוכות של משתמש פשוט. מכאן מתחילה העלאת ההרשאות בשורת פקודה בלבד, בלי שום ידיעה מוקדמת על המחשב.
9. הכלי accesschk: מורידים את הכלי accesschk מחבילת Sysinternals, אוסף כלים של חברה שמיקרוסופט רכשה לפני כעשרים שנה, שכולל כלים רבים כמו Autoruns ו Autologon. הכלי מציג הרשאות בפועל על קבצים, רגיסטרי, שירותים ותהליכים, והוא מה שדרוש לגילוי הבאג.
10. הורדה והעברה בשורת פקודה: מורידים את הכלי בעזרת wget ישירות מה CMD, חולצים את ה zip בעזרת unzip, ומעבירים אותו אל המכונה הנפגעת בעזרת פקודת upload של המטרפריטר. מודגש ההבדל בין CMD רגיל למטרפריטר, שיש לו יכולות כמו upload, ומוסבר על תיקייה מקומית ותיקייה מרוחקת נוכחיות ועל השימוש בנקודה לתיקייה הנוכחית.
11. גילוי השירות הפגיע: מריצים את accesschk על הרגיסטרי של כל השירותים במערכת, והכלי סורק ומדווח על שירות שיש לו למשתמשים הרשאות קריאה וכתיבה. כך מאתרים את הבאג בצורה אוטומטית ומקבלים את שם השירות הפגיע.
12. החלפת ה Image Path בעזרת reg: בעזרת reg query מתשאלים את הענף של השירות ורואים את ה Image Path הנוכחי, ואז בעזרת reg add עם הפרמטר הכופה מוסיפים מפתח Image Path חדש שמפנה אל הסוס הטרויאני. תשאול חוזר מאמת שההחלפה הצליחה, והכול התבצע מרחוק בפקודות.
13. הפעלה מחדש והשלמת ההעלאה: מבצעים אתחול מיידי של המחשב בעזרת שאטדאון עם הפרמטרים המתאימים, שולחים את הסשן הנוכחי לרקע וממתינים. אחרי האתחול נפתח סשן חדש, getuid מאומת שהוא Local System גם בלי שהמשתמש ביצע התחברות, כי הסוס הטרויאני עלה בתור שירות של ווינדוס עצמו.
בשיעור זה הושגה העלאת הרשאות מלאה עד Local System בשתי שיטות, ממשק גרפי ושורת פקודה, באמצעות הרשאות שגויות על ענף השירות ברגיסטרי, בעזרת הכלים accesschk, reg query ו reg add. בשיעור הבא נעסוק בהעלאת הרשאות על ידי ניצול באגים בנתיב לקובץ.
SR12558HE

פרקי ההרצאה: העלאת הרשאות על ידי ניצול באגים בהרשאות על רגיסטרי

  1. 00:00

    העלאת הרשאות דרך הרגיסטרי

  2. 00:39

    הכרת התוכנה הפגועה

  3. 02:02

    הכנת ה-Payload והמאזין

  4. 02:59

    שליטה ראשונית כמשתמש רגיל

  5. 03:56

    הרשאות השירות במערכת

  6. 04:51

    הגדרות השירות ברגיסטרי

  7. 05:48

    שינוי נתיב ההפעלה

  8. 06:42

    אימות ההרשאות אחרי הפעלה מחדש

תמלול ההרצאה: העלאת הרשאות על ידי ניצול באגים בהרשאות על רגיסטרי

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

  1. 00:02

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

  2. 00:28

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

  3. 00:48

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

  4. 01:02

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

  5. 01:12

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

  6. 01:24

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

  7. 01:29

    טרויאני אתם רואים יצרנו פה סוס טרויאני רגיל קובץ אקזה ויש לנו גם סוס טרויאני שזה קובץ גם אקזה יש לנו שני אקזה אחד עובד כסרוויס ואחד כסוס טרויאני רגיל ששולחים לבן אדם הפעלתי פה את ה-Web Server בפורט 8000 ושלחתי לינק לבן אדם שהוריד את הסוס הטרויאני שלי.

  8. 02:07

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

  9. 02:20

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

  10. 02:28

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

  11. 02:40

    רק אני רוצה פה להוסיף עוד אות z שלא יתחבר לכל סשן שמתחיל. נהדר. אז יש לי פה מאזין שמחכה לחיבור מהקורבנות שלי, ואנחנו יכולים לעשות jobs ולראות שיש לנו פה מאזין שמחכה, וsessions.

  12. 02:54

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

  13. 03:16

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

  14. 03:42

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

  15. 04:04

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

  16. 04:13

    אני לא מדבר איתכם על בעיית ההרשאות בקובץ, אלא ברג'יסטרי, בהרשאות שיש על רג'יסטרי. הרי כל הסרוויסים נרשמים ברג'יסטרי. איך המחשב יודע איזה סרוויס להפעיל ומתי? הכל כתוב כאן ב-HKLocalMachine System Current Control Set Services ושם של סרוויס.

  17. 04:36

    אז יש לנו פה לכל סרוויס תיקייה וכתוב בדיוק מה להפעיל. מפה, בדיוק מכאן, מהענף הזה ברג'יסטרי, מהנתיב הזה, התוכנה הזאת לוקחת את המידע. המידע הזה לדוגמה, path to the executable, המידע הזה הוא בדיוק הרג'יסטרי כאן. זאת אומרת שאם אני אחליף פה משהו זה יתחלף שמה.

  18. 04:57

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

  19. 05:18

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

  20. 05:46

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

  21. 06:07

    פה הנה הוא עושה ריסטארט ואנחנו נראה שיש לנו סשן חדש עכשיו את כל זה עשינו בממשק גרפי נכון אבל אנחנו רוצים ללמוד איך לעשות את זה גם בממשק CMD בשורת פקודה אז אנחנו חייבים לדעת לעשות גם דברים ב-CMD וזה מה שאנחנו הולכים לעשות עוד שנייה את כל התהליך הזה שוב אבל ב-CMD ואנחנו רואים פה Session 2 Opened,

  22. 06:30

    Sessions, אנחנו רואים Session 2 וישר רואים שזה Anti-Authority System, אנחנו יכולים להתחבר ל-Session 2, לכתוב Get UID ואנחנו כבר System, אנחנו יוזר הכי חזק במערכת שזה ה-Windows עצמו, הסרוויס הופעל עוד לפני הלוגין.

  23. 06:47

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

  24. 07:13

    את הבאג אני לוקח ברג'יסטרי נכנס לענף הזה של רג'יסטרי לתיקייה הזאת זה נקרא key עושה permissions ונותן הרשאות ליוזרס לכל המשתמשים וזהו הכל מוכן הכל מוכן תחשבו שזה הקורבן שהתקין את התוכנה ויש באג ב-registry בהרשאות.

  25. 07:34

    יופי, איך אנחנו פורצים אליו? אנחנו עושים דבר כזה, אנחנו הולכים ל-Downloads, מפעילים את הסוס הטרויאני שלנו, רגע, לפני שמפעילים אני רוצה לעשות פה Exit-Y לצאת לגמרי, יצאתי לחלוטין, חזרתי ל-CMD ל-Shell ואני מפעיל מאזין מחדש, למה עשיתי את זה? כי אני רוצה שיתחיל לספור את הסשנים מההתחלה,

  26. 07:56

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

  27. 08:09

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

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

ההרצאה הקודמת: העלאת הרשאות על ידי ניצול באגים בהרשאות NTFS

ההרצאה הבאה: העלאת הרשאות על ידי ניצול באגים בנתיב לקובץ

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

  • העלאת הרשאות - עקיפה של UAC
  • איך לעקוף הרשאות NTFS על ידי SeBackupPrivilege
  • באגים - Bugs
  • הרשאות על קבצים - חלק 1

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

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