PracticU

התקנה של Visual Studio

בלי כתוביותעם כתוביות
PracticU › קורס סייבר למתחילים - Hacking - בדיקות חוסן תשתיתי ופריצה ל-Windows 10/11 - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › התקנה של Visual Studio
מילון מושגים:
Visual Studio - סביבת פיתוח משולבת (IDE) של מיקרוסופט לכתיבה, ניפוי והרצה של קוד, בעיקר בשפות .NET.
C# - שפת תכנות מונחית עצמים של מיקרוסופט, המשמשת בעיקר לפיתוח יישומים על פלטפורמת .NET.
וירוס - תוכנה זדונית שמשכפלת את עצמה ומתפשטת ממחשב למחשב, ועלולה לפגוע בקבצים או בפעולת המערכת.
תהליכון - יחידת ביצוע בתוך תהליך, המאפשרת להריץ כמה מהלכים במקביל ולחלוק את אותו זיכרון.
שרת אינטרנט - תוכנה או מחשב שמקבלים בקשות HTTP ומגישים דפי אינטרנט ומשאבים ללקוחות.
אנטי וירוס - תוכנה שמזהה, חוסמת ומסירה תוכנות זדוניות מהמחשב, ומנטרת פעילות חשודה.
Node.js - סביבת ריצה שמאפשרת להריץ קוד JavaScript מחוץ לדפדפן, בעיקר בצד השרת.
חתימה דיגיטלית - מנגנון מבוסס הצפנה שמוכיח את מקור המידע ושלא שונה בדרך, בעזרת המפתח הפרטי של החותם.

התקנה של Visual Studio

בשיעור זה אנו מסבירים מדוע עלינו להוסיף שכבת התחמקות נוספת לסוס הטרויאני שלנו, מציגים את רעיון העטיפה בשפת C# סביב ה-payload שכתוב בשפת מכונה, ומתקינים את סביבת הפיתוח Visual Studio הדרושה לכך.
נושאי הסיכום המוצגים בשיעור:
1. הסטטוס הנוכחי של התחמקות: בהרצאה הקודמת הצלחנו להפעיל את הסוס הטרויאני תחת Defender, אך בבדיקה באתר AntiScan נמצא ש-19 מתוך 26 אנטי-וירוסים תופסים אותנו.
2. מה הבעיה: אנו כן הצלחנו לחמוק מהחתימות, אך לא מההתנהגות החשודה, וכדי להתמודד עם זה נדרש להוסיף קוד שמזהה סביבת סנדבוקס ומכונה וירטואלית ויוצא בשקט בלי להריץ את הקוד הזדוני.
3. עטיפת ה-payload במעטפת: איננו רוצים לעבוד ישירות עם פקודות בשפת מכונה שקשה לתפעל, ולכן נעטוף את הקוד הזדוני במעטפת חכמה ונוחה בשפת C#, ו-msfvenom יודע לייצר את ה-payload בפורמט של C#.
4. הפניה לדוגמת ה-PowerShell: בדומה למה שכבר ראינו בגרסת ה-PowerShell של ה-payload, גם שם הייתה מעטפת שקצתה זיכרון, העתיקה לתוכו את המערך עם פקודות שפת המכונה, ויצרה Thread שהריץ אותו, עם שמות משתנים מכוערים ומשתנים בכל פעם כדי שלא יתפסו על ידי חתימות.
5. הכנת סביבת העבודה: הקמת שלושה חלונות עבודה, מריץ של ה-Handler שמאזין ברקע לקבלת פניות ומקודד את השלב השני, שרת ווב בפייתון להפצת הקובץ, וחלון פקודות שגרתיות.
6. לקח מההדגמה: ה-handler לא האזין בהתחלה כי שכחנו סיומת קובץ בפקודה, וגם נראה כיצד מריצים את כל ההקמה של המאזין, שרת הווב והפקודות כפקודה אחת בשורה בודדת במקום בצעדים ידניים.
7. המטרה של ה-C#: אנו ניקח מה-payload שנוצר בפורמט C# את מערך פקודות שפת המכונה, ונכתוב בעצמנו את שלוש הפקודות המרכזיות, הקצאת זיכרון, העתקת התוכן אליו והרצת Thread מהזיכרון, ובנוסף נוכל להוסיף ב-C# כל התחכמות משלנו כנגד האנטי-וירוס.
8. התקנת Visual Studio: מורידים את גרסת Community החינמית מתוך שלוש הגרסאות, Community לקהילה, Professional ו-Enterprise לארגונים, והמתקין הוא למעשה סביבת פיתוח שלמה לכתיבת קוד.
9. בחירת הרכיבים להתקנה: Visual Studio היא סביבה ענקית שיודעת לפתח אתרי ווב, יישומי ענן, פייתון, Node.js ואפליקציות למובייל, אך אנו בוחרים רק את רכיב הפיתוח לדסקטופ שכולל את C#, וממתינים להשלמת ההתקנה.
10. עצה לגבי חתימה דיגיטלית: מתקין Visual Studio רץ בלי אזהרות מכיוון שהוא חתום דיגיטלית, ולכן מומלץ גם לקבצים שאנו מפיצים להוסיף חתימה דיגיטלית או לחלופין להעלות אותם לשירותי ענן ולשלוח לינק להורדה.
לסיכום, בשיעור זה הסברנו מדוע הסוס הטרויאני שלנו עדיין מתגלה למרות שחמקנו מהחתימות, הצגנו את הרעיון של עטיפת ה-payload בשפת C# שמאפשרת להוסיף זיהוי סנדבוקס והתחמקויות נוספות, והתקנו את Visual Studio Community כדי להיות מוכנים לכתיבת המעטפת בשיעור הבא. SR12504HE

פרקי ההרצאה: התקנה של Visual Studio

  1. 00:00

    סיכום זיהוי התנהגות חשודה

  2. 00:35

    בדיקת סביבה וירטואלית מבודדת

  3. 01:15

    עטיפת הקוד במעטפת C-Sharp

  4. 02:26

    הפעלת שרת Web והנדלר

  5. 04:18

    הקצאת זיכרון בשפת מכונה

תמלול ההרצאה: התקנה של Visual Studio

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

  1. 00:02

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

  2. 00:18

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

  3. 00:31

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

  4. 00:43

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

  5. 00:57

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

  6. 01:29

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

  7. 01:41

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

  8. 01:53

    אני לא רוצה לגעת כל כך, כמה שפחות, בפקודות בשפת מכונה כי זה קשה לעבוד עם זה אני רוצה לעטוף את זה עם מעטפת יותר חכמה ב-C-Sharp שזה יותר נוח לכתוב קוד בשפת C-Sharp אל תדאגו זה לא יהיה משהו מפחיד ומה אני הולך לעשות איך אני הולך לעשות בעצם את העטיפה הזאת אני אעשה כמו שהם עשו את זה עם כל ה-PowerShell ו-Visual

  9. 02:20

    Basic וכל הדברים מה הם עשו בואו נראה ב-PowerShell מה הם עשו רק בואו נראה את זה כאן שיהיה לנו יותר יפה ויותר נוח נפעיל שנייה את הפייתון שיעשה לנו שרת ווב.

  10. 02:33

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

  11. 02:45

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

  12. 02:58

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

  13. 03:22

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

  14. 03:33

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

  15. 03:47

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

  16. 04:02

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

  17. 04:18

    התכנסנו פה בשביל לראות ב-C-Sharp את הפקודות. ומה אנחנו רוצים לעשות ב-C-Sharp? מה אנחנו עושים עם כל הפקודות האלו בשפת מכונה?

  18. 04:27

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

  19. 04:40

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

  20. 04:58

    העתיק לכתובת הזאת את התוכן של הדבר הזה ופתח תרד. פתח תרד, תרד זה תהליך שרץ, למעשה הריץ את זה.

  21. 05:08

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

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

ההרצאה הקודמת: Meterpreter EXE vs Windows Defender

ההרצאה הבאה: כתיבת C# wrapper סביב Meterpreter Payload

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

  • התקנה של אנגולר 4 על Visual Studio
  • התקנה של Visual Studio Code
  • הגדרות של Visual Studio
  • Docker & Visual Studio

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

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