PracticU

האזנה ל-PayPal עם Frida SSL Unpinning

בלי כתוביותעם כתוביות
PracticU › קורס סייבר והאקינג ל-Android - פריצה לטלפונים ואפליקציות אנדרואיד - בודק חוסן - Mobile App Pentesting › האזנה ל-PayPal עם Frida SSL Unpinning
מילון מושגים:
SSL - פרוטוקול להצפנת תקשורת ברשת ולאימות זהות השרת. קודמו של TLS, והשם עדיין נפוץ בשימוש.
תעודה דיגיטלית - מסמך מוצפן שמאשר את זהותו של אתר או שרת וקושר אותו למפתח ציבורי, ומונפק על ידי רשות אישורים.
שרת - מחשב או תוכנה שמספקים שירות למחשבים אחרים (לקוחות) ברשת, למשל אחסון קבצים, אתר אינטרנט או מסד נתונים, ומגיבים לבקשות שלהם.
פרוקסי - שרת מתווך שמעביר בקשות בין לקוח ליעד, ויכול לשמש להסתרה, לסינון, למטמון או לבקרת גישה.
סקריפט - קובץ המכיל רצף פקודות שמבוצעות על ידי מפרש, לרוב כדי להפוך משימות לאוטומטיות.

האזנה ל-PayPal עם Frida SSL Unpinning
הרצאה זו מסבירה, בגובה המושג, מה זה SSL Pinning ולמה עקיפתו (SSL Unpinning) נחשבת לשלב מתקדם יותר מהאזנה רגילה לתקשורת.
מה ההבדל מהאזנה רגילה
אפליקציות מסוימות, כמו PayPal בדוגמה, לא מסתפקות בכך שהמכשיר סומך על תעודה דיגיטלית כלשהי. הן בודקות בתוך הקוד שלהן שהתעודה שמגיעה היא בדיוק התעודה של השרת שלהן (Pinning). כך גם אם הותקנה תעודת פרוקסי במכשיר, האפליקציה מזהה שזו לא התעודה המקורית ומסרבת להתחבר.
איך עוקפים את זה
באמצעות Frida אפשר להזריק קוד לאפליקציה בזמן ריצה ולהחליף את ההתנהגות של פונקציית הבדיקה הזו, כך שתתעלם מהשוואת התעודות. זה מתבצע באמצעות סקריפטים מוכנים שקיימים לצורך מחקר אבטחה.
למה זה חשוב
ההדגמה ממחישה שגם הגנה חזקה כמו Certificate Pinning אינה בלתי ניתנת לעקיפה כאשר לתוקף יש שליטה מלאה על המכשיר שעליו רצה האפליקציה, ולכן יש ערך לשכבות הגנה נוספות בצד השרת.
השיעור הבא בקורס: פריצה של UnCrackable-Level1 - חלק 1

פרקי ההרצאה: האזנה ל-PayPal עם Frida SSL Unpinning

  1. 00:00

    חזרה על ההאזנה לתקשורת

  2. 00:38

    הגנת SSL Pinning של PayPal

  3. 01:14

    הפעלת שרת ה-Frida במכשיר

  4. 01:50

    התנהגות האפליקציה ללא תעודה

  5. 02:25

    סקריפט ה-SSL Unpinning

  6. 03:25

    הפעלת הסקריפט על האפליקציה

תמלול ההרצאה: האזנה ל-PayPal עם Frida SSL Unpinning

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

  1. 00:02

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

  2. 00:17

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

  3. 00:38

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

  4. 01:00

    עד שהטלפון עולה לנו, בואו קודם כל נעתיק את זה לשם, את הקובץ של free the server שדרכו נשלח את כל הפקודות לטלפון. אז מה אנחנו עושים? קודם כל אנחנו עושים פוש ודוחפים את זה לתיקיית אתם בתוך טלפון.

  5. 01:18

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

  6. 01:27

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

  7. 01:39

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

  8. 01:48

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

  9. 02:05

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

  10. 02:25

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

  11. 02:33

    כאן יש לנו סקריפט מוכן שיודע לעשות SSL Unpinning Bypass ויש סקריפט מוכן שעושה את הכל וזה נהדר, שימו לב אנחנו צריכים לשתול את התעודה שאנחנו רוצים שהוא יסמוך עליה בנתיב הזה אז אני עושה את הפקודה ADB PUSH ושותל את זה בנתיב הזה כי זה מה שכתוב לי בתוך הסקריפט

  12. 02:54

    אוקיי, אז בואו נלך לכאן כי יש לנו פה את התעודה שלנו, זאת התעודה שאני רוצה לשתול אני עושה עוד פעם CMD, שותל את התעודה בנתיב הזה, one file pushed, נהדר.

  13. 03:09

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

  14. 03:32

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

  15. 03:46

    אז מינוס U אומר דרך USB, מינוס L אומר מקובץ. זה שם של קובץ שאני יכול לשמור הכל בקובץ הזה. זה אומר שאני מכווץ ככה הכל, עושה על הכל קופי פייסט.

  16. 03:58

    בואו אני אראה לכם. עושה notepad, שומר את הכל. כן זה זה, שומר את הכל, נותן לזה רק שם כזה, למה?

  17. 04:09

    סתם המצאתי שם, כותב גרשיים גרשיים, נניח בדאונלודס,

לקורס המלא: קורס האקינג לאנדרואיד אונליין

ההרצאה הקודמת: מודול SSL Unpinning ב-EdXposed

ההרצאה הבאה: פריצה של UnCrackable-Level1 - חלק 1

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

  • SSL Strip
  • הסבר על SSL VPN
  • אתר SSL Labs
  • סיכום ב-3 דקות - הגדרת SSL

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

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