PracticU

מציאת מקום בזיכרון עבור Payload - Shellcode

בלי כתוביותעם כתוביות
PracticU › קורס סייבר למתחילים - Hacking - בדיקות חוסן תשתיתי ופריצה ל-Windows 10/11 - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › מציאת מקום בזיכרון עבור Payload - Shellcode
מילון מושגים:
זיכרון - רכיב מהיר ונדיף שבו המחשב שומר נתונים ותוכניות בזמן ריצתם. תוכנו נמחק עם כיבוי המחשב.
סקריפט - קובץ המכיל רצף פקודות שמבוצעות על ידי מפרש, לרוב כדי להפוך משימות לאוטומטיות.
הקסדצימלי - שיטת ספירה בבסיס 16, המשתמשת בספרות 0-9 ובאותיות A-F, ונפוצה לייצוג ערכים בינאריים בקצרה.
חולשה - פגם או חולשה במערכת או בתוכנה שעלול לאפשר פגיעה באבטחה אם לא יטופל.
שירות - תוכנה שרצה ברקע ומספקת פונקציונליות לרכיבים אחרים, לרוב ללא ממשק משתמש, ומופעלת אוטומטית עם המערכת.
הרשאה - קביעה אילו פעולות ומשאבים מותרים למשתמש או לתהליך לאחר שזהותו אומתה. שולטת במי רשאי לעשות מה.

מציאת מקום בזיכרון עבור Payload - Shellcode

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

פרקי ההרצאה: מציאת מקום בזיכרון עבור Payload - Shellcode

  1. 00:00

    ניתוח קריסה ואוגר EIP

  2. 00:39

    הרחבת הבאפר לקוד

  3. 01:20

    הפעלת הדיבאגר Immunity

תמלול ההרצאה: מציאת מקום בזיכרון עבור Payload - Shellcode

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

  1. 00:02

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

  2. 00:22

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

  3. 00:34

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

  4. 00:50

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

  5. 01:07

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

  6. 01:32

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

  7. 01:55

    כן, אז ההתחלה זה אותו סקריפט, רק שהשינוי פה שאנחנו שולחים 4C הפעם,

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

ההרצאה הקודמת: התקפה buffer overflow - אוגר EIP

ההרצאה הבאה: איתור תווים פסולים - Bad Characters

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

  • מציאת תקלות במערכת נבדקת
  • הגבלת מקום בדיסק למשתמש - NTFS QUOTA
  • יצירת עמוד עבור המוצר
  • יצירת סכמה עבור Data Warehouse

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

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