PracticU

ביצוע Pivoting ב-Windows
עם Meterpreter ב-MSFconsole

בלי כתוביותעם כתוביות
PracticU › קורס פריצה ומבדקי חדירה לתשתית ארגונית - בדיקות חוסן מתקדמות ל-Active Directory - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › ביצוע Pivoting ב-Windows עם Meterpreter ב-MSFconsole
מילון מושגים:
שרת - מחשב או תוכנה שמספקים שירות למחשבים אחרים (לקוחות) ברשת, למשל אחסון קבצים, אתר אינטרנט או מסד נתונים, ומגיבים לבקשות שלהם.
שרת אינטרנט - תוכנה או מחשב שמקבלים בקשות HTTP ומגישים דפי אינטרנט ומשאבים ללקוחות.
סשן - פרק זמן של פעילות רציפה בין משתמש למערכת, שבו נשמר מידע על מצבו, למשל לאחר התחברות לאתר.
פורט - מספר שמזהה שירות או תהליך מסוים בתוך מחשב, ומאפשר לכוון תעבורת רשת ליעד הנכון. למשל פורט 80 ל-HTTP.
שיתוף - תיקייה או משאב שהועמדו לרשת כדי שמשתמשים אחרים יוכלו לגשת אליהם לפי הרשאות.
כתובת IP - מספר שמזהה באופן ייחודי מכשיר ברשת מבוססת פרוטוקול IP, ומאפשר לשלוח אליו ולקבל ממנו מידע.

ביצוע Pivoting ב-Windows
עם Meterpreter ב-MSFconsole
בשיעור זה אנו עושים Pivoting, עוברים דרך השרת הזה, שרת ווב, שיש לו גם רגל פנים ארגונית וגם רגל בחוץ, שני כרטיסי רשת, ואנחנו רוצים מבחוץ לעבור דרכו ולהגיע לשרת הפנימי.
נושאי הסיכום המוצגים בשיעור:
1. הבעיה של התוקף: השרת הפנימי יש לו רק כתובת פנימית, ואנחנו בחוץ ולנו יש רק כתובת חיצונית. בקיצור, בשביל להגיע מהרשת החיצונית אל הרשת הפנימית צריך לעבור דרך הקורבן, ואני רוצה שהקורבן הזה יעביר לי את כל הפאקטים. זה נקרא לעשות פיבוטינג, וזה מאפשר לי תנועה בתוך הרשת, תנועה רוחבית ברשת, ישירות מתוך הקאלי שלי.
2. הקמת המאזין: דבר ראשון, אני מפעיל מאזין שיאזין ל-Windows 64 ביט, שיתחבר עם המטרפריטר אליי, אל התוקף. אני כותב פה קאלי ומפעיל את המאזין. ובקורבן יש לי פה את ה-payload שיתחבר אליי. ככה מתחילה התקפה, מזה שאני שולט על קורבן אחד ויש לי פה סשן מול קורבן אחד בלבד.
3. פקודת הפיבוט בתוך הסשן: עכשיו אני נכנס לתוך הסשן הזה, לתוך המחשב של הקורבן, ויש לי פקודת פיבוט. פיבוט עם מתג העזרה מראה את כל האפשרויות שיש לו, כאשר פיבוטינג זה לעבור דרך מישהו לטארגט אחר. בואו נראה איך משתמשים בזה. נעשה Pivot Add עם מתג הפלטפורמה עבור Windows, שיעשה מאזין על Windows, 64 ביט, ארכיטקטורה 64 ביט, והוא הולך להאזין על הקורבן שלי בפייפים, בשיתופים של 445. זאת אומרת, כולם יתחברו אליו בפורט 445 כאילו הוא שיתוף, ומאחורי הקלעים תהיה התוכנה הזדונית שלי.
4. המושג Pipe Name: לכל תוכנה יש Pipe Name שונה, זה למעשה המזהה של התוכנה בתוך הפורט 445. אני מזכיר לכם שבפורט 445 יש גם שיתוף קבצים רגיל וגם אפליקציות שמדברות ביניהן. וכדי לזהות איזה אפליקציה בתוך הפורט 445 רוצה לדבר, יש לכל אפליקציה Pipe Name משלה. אני המצאתי את השם MyPipeName, יכולתי להמציא כל שם שבא לי וזה יישב בתוך הפורט 445, ולכן גם אף אחד לא ישים לב לזה שיש לי תקשורת בתוך הארגון שהיא זדונית. ואני שם את המאזין הזה בפייפ, בשיתוף 445, על ה-IP הפנימי של הקורבן, ואני מזכיר לכם שיש לנו פה רגל פנימית בטווח הפנימי ורגל חיצונית בטווח החיצוני, אז אני שם את המאזין על הרגל הזאת, בתוך השיתופים, בתוך הפייפים, והשם של התוכנה יהיה MyPipeName. הנה הוא מתחיל להאזין, וכל מי שיגיע לפה יעבור חזרה אליי, אל הקאלי. למעשה הפיבוט מעביר את זה אל הקאלי המקורי שלי שיושב בחוץ.
5. בדיקה והמתנה: אני יכול לעשות Pivot List ולראות שיש לי את הפייפ הזה בתוך המחשב של הקורבן, ואני מחכה שמישהו יתחבר אליו, ובסוף הוא יגיע אליי. אני עושה background ועכשיו אני צריך ליצור payload זדוני שהתחבר לפייפ. עד עכשיו ה-payload התחבר לנו ל-IP ופורט, והפעם אנחנו נעשה מטרפריטר את ה-payload שלו שהתחבר ל-named pipes.
6. יצירת הפיילוד עם הפייפ: אז אנחנו נכנסים למודול שלו, use windows x64 מטרפריטר reverse named pipes, נעשה את ה-payload הזדוני שזה למעשה כמו לעשות msfvenom אבל בלי לצאת מ-Metasploit. זאת אומרת אני יכול לעשות פיילודים זדוניים גם מבחוץ על ידי msfvenom וגם מתוך המטאספלויט עצמו, מתוך המודול, וזה שני דרכים איך לייצר פיילוד זדוני. אני אומר לו פה ב-Options לאן להתחבר, Pipe Host Name, תתחבר ל-IP כזה וכזה, זה יהיה exe זדוני שהולך להתחבר בפייפים של השיתופים ל-IP הזה, שזה IP של הקורבן שלי, שפה יש לנו כבר מאזין ששמנו. זה הקוד הזדוני, הפיילוד הולך להתחבר ל-IP הזה, ול-PipeName, השם שהמצאנו לו, זה MyPipeName. בואו נעשה Options ונראה, זה השם של ה-Pipe, זה השם של ה-Host, ואפשר עכשיו לעשות Generate וליצור את הפיילוד החדש שלנו. נקרא לו פיילוד 2. זהו, עשינו אותו, עכשיו בדיסק שלנו הופיע לנו פיילוד 2, והוא יתחבר לפייפ ב-IP הזה, ובסוף יגיע אליי.
7. העברת הפיילוד והחיבור המוצלח: טוב בואו נעביר אותו לקורבן שלנו, תחשבו שאני שולח לו מייל או גורם לו באיזושהי שיטה להפעיל את הפיילוד הזה. בינתיים אני אעשה פשוט קופי פייסט דרך המחשב הפיזי שלי, זאת אומרת אני מעביר אותו בקופי פייסט למחשב, ומהמחשב הפיזי עושה עוד פעם קופי ומעביר לתוך המחשב של הקורבן בקופי פייסט. זאת אומרת שעכשיו הוא יתחבר לזה ובסוף יגיע אליי. בואו נראה, נעשה דאבל קליק כאן, ואנחנו יכולים לראות במטה ספלויט מטר פריטר סשן 2 נפתח ויהיה פיבוטינג. אנחנו ממש רואים פה שזה עובד ויש לנו פה בסשנס שני סשנים, אחד לקורבן המקורי, לשרת ווב, וסשן שני כבר בתוך הרשת, לשרת הקבצים, דרך הקורבן המקורי. זאת המשמעות של פיבוטינג. ואני יכול להיכנס עכשיו לסשן השני שלי, אני יכול לעשות IP קונפיג ולראות שאני באמת שם, אצלו בתוך המחשב הפנימי. הרעיון שאני מכאן קופץ לכאן, ופיבוטינג לוקח אותי חזרה אל התוקף, זה הכל.
סיכמנו את ה-Pivoting ב-Windows בעזרת Meterpreter, מהקמת המאזין והסשן הראשון על שרת הווב שמגשר בין הרשתות, דרך יצירת מאזין פייפ בתוך פורט השיתופים עם Pipe Name מומצא, יצירת פיילוד שמתחבר לפייפ הזה ישירות מהמודול, ועד לקבלת סשן שני מהשרת הפנימי שעבר דרך הקורבן הראשון. זה הכל, תודה רבה.
SR13020HE

פרקי ההרצאה: ביצוע Pivoting ב-Windows עם Meterpreter ב-MSFconsole

  1. 00:00

    הכרת סביבת ההתקפה

  2. 00:35

    הצורך לעבור דרך הקורבן

  3. 01:33

    הפעלת פקודת ה-Pivot

  4. 02:31

    האזנה על פורט השיתופים

  5. 03:25

    יצירת ה-Payload החדש

  6. 04:17

    הגדרת החיבור ל-Pipe

תמלול ההרצאה: ביצוע Pivoting ב-Windows עם Meterpreter ב-MSFconsole

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

  1. 00:02

    שלום לכולם, בהרצאה הזו אנחנו נעשה פיבוטינג נעבור דרך השרת הזה, שרת ווב, שיש לו גם רגל פנים ארגונית וגם רגל בחוץ, שתי כרטיסי רשת ואנחנו רוצים מבחוץ לעבור דרכו ולהגיע לשרת הפנימי השרת הפנימי יש לו רק כתובת 192.168 ואנחנו בחוץ ולנו יש רק כתובת 10.100 בקיצור, בשביל להגיע מ-10100 ל-192-168 צריך לעבור דרך הקורבן, ואני רוצה שהקורבן הזה

  2. 00:36

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

  3. 00:46

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

  4. 01:11

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

  5. 01:27

    בואו נראה איך משתמשים בזה. נעשה Pivot Add מינוס פלטפורם Windows שיעשה מאזין על Windows, 64 ביט, ארכיטקטורה 64 ביט, והוא הולך להאזין על הקורבן שלי בפייפים, בשיתופים של 445. זאת אומרת, כולם יתחברו אליו בפורט 445 כאילו הוא שיתוף, ומאחורי הקלעים תהיה התוכנה הזדונית שלי.

  6. 01:52

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

  7. 02:08

    וכדי לזהות איזה אפליקציה בתוך הפורט 445 רוצה לדבר, יש לכל אפליקציה Pipe Name משלה. אני המצאתי את השם MyPipeName, יכולתי להמציא כל שם שבא לי וזה יישב בתוך הפורט 445 ולכן גם אף אחד לא ישים לב לזה שיש לי תקשורת בתוך הארגון שהיא זדונית ואני שם את המאזין הזה בפייפ בשיתוף 445 על IP הפנימי

  8. 02:36

    של הקורבן 134 אני מזכיר לכם יש לנו פה רגל פנימית 192, 168, 122 ובסוף 134 ו-10, 100 חיצונית אז אני שם את המאזין על הרגל הזאת בתוך השיתופים, בתוך הפייפים, והשם של התוכנה יהיה MyPipeName.

  9. 02:57

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

  10. 03:17

    אני עושה background ועכשיו אני צריך ליצור payload זדוני שהתחבר לpip עד עכשיו ה-payload התחבר לנו ל-IP ופורט הפעם אנחנו נעשה מטרפריטר את ה-payload שלו שהתחבר ל-named pipes אז אנחנו נכנסים למודול שלו use windows x64 מטרפריטר reverse named pipes נעשה את ה-payload הזדוני שזה למעשה כמו

  11. 03:42

    לעשות msf enum אבל בלי לצאת מ-metasploit זאת אומרת אני יכול לעשות פיילאודים זדוניים גם מבחוץ על ידי MSFenum וגם מתוך המטאס פלויט עצמו מתוך המודול.

  12. 03:55

    זה שני דרכים איך לייצר פיילאוד זדוני. אני אומר לו פה ב-Options לאן להתחבר, Pipe Host Name, תתחבר ל-IP כזה וכזה, זה יהיה אקזס זדוני שהולך להתחבר בפייפים של השיתופים ל-IP הזה, שזה IP של הקורבן שלי, שפה יש לנו כבר מאזין ששמנו.

  13. 04:13

    זה הקוד הזדוני, הפיילוד הולך להתחבר ל-IP הזה, ול-PipeName, השם שהמצאנו לו זה MyPipeName. בואו נעשה Options ונראה, זה השם של ה-Pipe, זה השם של ה-Host, ואפשר עכשיו לעשות Generate וליצור את הפיילוד החדש שלנו.

  14. 04:32

    נקרא לו פיילוד 2. זהו, עשינו אותו,

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

ההרצאה הקודמת: איסוף מידע בוונדוס - עם MSFconsole

ההרצאה הבאה: יצירת Reverse Shell עם PLink - על גבי SSH מתוך Windows

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

  • Meterpreter EXE vs Windows Defender
  • EC2-Windows
  • Ansible on Windows
  • ביצוע המרה - Cast

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

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