PracticU

הסבר על Proxychains

בלי כתוביותעם כתוביות
PracticU › קורס פריצה ומבדקי חדירה לתשתית ארגונית - בדיקות חוסן מתקדמות ל-Active Directory - קורס זה נדרש למבחן ההסמכה היוקרתי OSCP › הסבר על Proxychains
מילון מושגים:
VPN - רשת פרטית וירטואלית שיוצרת חיבור מוצפן דרך האינטרנט, כאילו המכשיר מחובר ישירות לרשת מרוחקת.
פרוקסי - שרת מתווך שמעביר בקשות בין לקוח ליעד, ויכול לשמש להסתרה, לסינון, למטמון או לבקרת גישה.
SSH - פרוטוקול לחיבור מרוחק ומוצפן למחשב, בעיקר לשרתי Linux, לצורך ניהול דרך שורת הפקודה.
HTTP - פרוטוקול להעברת דפי אינטרנט ונתונים בין דפדפן לשרת. הגרסה המאובטחת שלו היא HTTPS.
פרוטוקול - מערכת כללים מוסכמת שקובעת כיצד מכשירים או תוכנות מתקשרים ומחליפים מידע, למשל HTTP או TCP.
הרשאה - קביעה אילו פעולות ומשאבים מותרים למשתמש או לתהליך לאחר שזהותו אומתה. שולטת במי רשאי לעשות מה.
בקשה - פנייה שלקוח שולח לשרת כדי לקבל מידע או לבצע פעולה. השרת מחזיר עליה תגובה.
שם משתמש - מזהה ייחודי שמשתמש מזין כדי להזדהות במערכת, לרוב יחד עם סיסמה.

הסבר על Proxychains
בשיעור זה אנו רוצים לראות איך עובד Proxychains, שמכניס בכוח תוכנות אל ה-VPN, אל הפרוקסי, גם אם הן לא יודעות לעבוד איתו.
נושאי הסיכום המוצגים בשיעור:
1. הסטינג שלנו עד עכשיו: מה שעשינו הוא SSH אל הקורבן, שה-IP שלו מסוים, ואמרנו לו להיות SOCKS, להיות שרת פרוקסי עם המתג המתאים, עשה לי את הפרוקסי אצל הקורבן. אצלנו בנטסטאט התחיל להאזין פורט 9050, וכל מה שייכנס לפורט הזה ב-IP שלי יגיע למחשב של הקורבן ויצא משם אל הרשת הפנימית, כי הקורבן שלנו מחובר גם לרשת החיצונית וגם לרשת הפנימית, ואנחנו מחוברים רק לכתובת החיצונית, כפי שאפשר לראות שיש לנו רק אותה. אז פתחנו עם המתג המתאים של SSH פרוקסי אצל הקורבן, ועכשיו כל מה שאני אכניס לפורט הזה, 9050, יצא שם ויגיע אל המחשבים שם, אל היעדים שם.
2. הבעיה, לא כל התוכנות יודעות פרוקסי: הבעיה היא שלא כל התוכנות, כמו Firefox החכם שיש לו בהגדרות אפשרות של פרוקסי, יודעות לשלוח את הפאקטים שלהן לתוך הפרוקסי. וראינו בהרצאה הקודמת שאפשר לעשות Manual ולכתוב פה את ה-IP של ה-SOCKS פרוקסי ולאן לשלוח את הפאקטים של ה-Firefox.
3. מה עושים עם תוכנה טיפשה: מה קורה כשיש לי תוכנה שאני רוצה להשתמש בה והיא לא יודעת לעשות דברים כאלו? אז יש לי כלי עזר שעושה את זה בכוח, בכוח מכניס פאקטים לתוך הפרוקסי, והכלי העזר הזה, התוכנה הזאת, נקראת Proxychains. בואו נתקין אותה.
4. תקני הפרוקסי: מזכירים שיש כמה תקנים לפרוקסי, יש פרוקסי של HTTP, פרוקסי של SOCKS 4 ופרוקסי של SOCKS 5. היתרונות של SOCKS הם שהם לא מוגבלים לפרוטוקול ספציפי, ו-Proxychains יודע לעבוד עם שלושת הסוגים האלו, כלומר עם שלושת סוגי שרתי הפרוקסי. אנחנו הולכים עכשיו לעבוד עם SOCKS 4, למה? כי המתג המתאים של SSH הוא SOCKS 4.
5. ההגדרות של Proxychains: אני מתקין Proxychains ואחרי ההתקנה צריך להגדיר לו איפה נמצא הפרוקסי שאליו הוא יכניס את כל הפאקטים. עושים הרצה עם הרשאות מנהל לעורך טקסט, לקובץ ההגדרות של proxychains.conf, וזה קובץ ההגדרות שלו. שם כותבים האם זה Strict Chain, האם ללכת בדיוק לפי הסדר של כל שרתי הפרוקסי שאתן לו, או שללכת בצורה רנדומלית, אפשר לעשות רנדום צ'יין ואז הוא כל פעם יקפוץ לשרת פרוקסי אחר. אני אשאיר את ה-strict chain, זה אומר ללכת בדיוק לפי סדר שרתי הפרוקסי שאני אגיד לו, תעבור דרך השרת הראשון, אחרי זה תעבור דרך השרת השני. אני יכול לעשות לו ממש שרשרת של שרתים שדרכם יעבור הפאקט, אני יכול לקפוץ דרך השרת הראשון, לשני, לשלישי. בינתיים נשאיר את ה-strict chain. אני יכול גם להגיד לו להכניס את כל ה-DNS, את כל הבקשות ה-DNS, גם לתוך ה-proxy, לתוך ה-VPN.
6. רשימת הפרוקסי בהגדרות: והדבר הכי חשוב זה השורה האחרונה, שאומרת לאיזה שירותי פרוקסי לשלוח את הפאקטים, Proxy List, רשימה של שירותי פרוקסי, ויש לי פה שורה אחת שהגיעה ברירת מחדל, לשלוח בתקן של SOCKS 4 אל 127.0.0.1, שזה אל ה-IP של עצמי, בפורט 9050. ותראו איזה קטע, זה בדיוק מה שיש לי, פורט 9050, וזה בדיוק מה שהייתי צריך, יש לי מזל, אחרת הייתי כותב ידנית את השורה הזאת. כרגע יש לי רק שרת פרוקסי אחד, וההגדרה הזאת מתאימה לי מאוד מאוד. דרך אגב, אני יכול להוסיף פה שם משתמש וסיסמה, ואז רק מי שמכיר את השם והסיסמה יוכלו לעבור דרך שרת הפרוקסי שלי, ואראה לכם את זה בהמשך. כרגע אין לי פה סיסמה, יוצאים מהקובץ. זאת ההגדרה שלי ברשימת הפרוקסי, לי שרת פרוקסי אחד ודרכו אני עובר.
7. שימוש עם nmap: ועכשיו אני יכול להשתמש ב-Proxychains כדי להכניס את כל הפאקטים של nmap אל יעד שלא קיים אצלי בכלל, לתוך ה-VPN. אני מזכיר לכם שאצלי בבדיקת הכתובות קיים רק הטווח החיצוני, אבל אני אומר ל-nmap לסרוק את הרשת הפנימית. איך הוא יגיע אליה? דרך הפרוקסי צ'יינס. דרך אגב, אם לא היה לי פרוקסי צ'יינס, הייתי יכול לפתוח פורט אצלי, שיעבור אל הפורט המתאים ביעד, לפתוח פורט אחד בלבד ולעשות סריקה של פורט אחד בלבד. אבל זה לא נוח, לסרוק כל פורט בנפרד, זה לא נוח לפתוח כל פורט בנפרד. פרוקסי צ'יינס פותח לי הכל. ואנחנו מריצים את הפרוקסי צ'יינס, מכניסים הכל לתוך ה-VPN, לתוך הפרוקסי, את ה-nmap שלנו, ושימו לב, ה-nmap הולך לכתובת שלא קיימת במחשב המקומי, והוא סורק לי את הפורט. ותסתכלו איזה יופי, כתוב פה ש-Proxychains מעביר את הבקשות שלו לתוך הפרוקסי, וזאת התשובה שלו, שפורט 88 פתוח. במקום לפתוח פורט פורט, כמו שזה היה פעם, היינו פותחים פורט אצלי מקומית שיגיע לאנשהו, אני פתחתי את כל הפורטים. אני יכול לעשות לדוגמה סריקה של 20 פורטים ב-IP מסוים. לא לשכוח את שני המתגים המוכרים, אחד שלא יעשה פינגים לפני כן ואחד שלא יתעסק עם ה-DNS.
8. ההדגמה בפעולה: ואנחנו רואים ממש איך עובד Proxychains. הוא כותב פה שהוא חוטף את הפאקטים, מעביר אותם הלאה, אנחנו ממש פה רואים איך הוא מעביר אותם ליעד הזה, ומחכה לתשובה בפורט מסוים. ותראו איזה יופי שאנחנו יכולים לסרוק גם מחשב אחד באיזשהו פורט, וגם מחשב אחר. כל מחשב שבא לנו אנחנו יכולים לסרוק. כל מה שנכניס לפורט 9050 המקומי שלי יצא שם בחוץ, לתוך הרשת הפנימית. טוב, בואו נעצור את הסריקה, הבנתם שהסריקה עובדת, פשוט לא בא לי לחכות שהוא יעבור על 20 פורטים.
9. Firefox בלי מודעות לפרוקסי: נפעיל עכשיו את Firefox, שילך אל ה-IP הפנים-ארגוני. ושימו לב, אני מתייחס ל-Firefox כאילו הוא לא יודע מה זה פרוקסי. אני מכניס את הפאקטים שלו, בלי שהוא מודע לזה, לפרוקסי צ'יינס. תראו, עכשיו ה-Firefox יופעל, הוא מראה לי את האתר, אבל בהגדרות שלו, בהגדרות של פרוקסי, כתוב לו no proxy. זאת אומרת שהוא, מבחינתו, שלח את זה רגיל לאינטרנט. הוא לא היה מודע שחטפתי לו עם הפרוקסי צ'יינס את הפאקטים ושלחתי ליעד מסוים. גם ב-no proxy אני יכול לחטוף את הפאקטים שלו עם פרוקסי צ'יינס, וזה עובד. אבל מעניין לראות אותי מה קרה כאן. אני אעשה סינון לפי HTTP, אראה שזה בפאקט 49, ואז נוריד את הסינון עכשיו פה, ואנחנו בפאקט 49 יכולים לראות שיהיה לנו HTTP גט מהיעד, ולפניו SSH. אתם רואים? הגיע מידע ב-SSH מהתוקף אל הקורבן, זאת אומרת ההוא, האקר, שלח לכאן פאקט ב-SSH ומיד יצא פאקט ב-HTTP, כאילו ה-SSH עם המתג קילף את הפאקט והוציא אותו החוצה, ואחרי שה-HTTP החזיר את התשובה והוא שלח לו אק שהכל תקין, הוא מעביר אותו ישר לתוך ה-SSH. אז רואים פה את הבקשה דרך ה-VPN, את היציאה שלה החוצה, את התשובה של השרת הפנים-ארגוני, וכניסה פנימה חזרה אל ה-VPN. אז ראינו שכל זה עובד.
סיכמנו את הכלי Proxychains, מהסטינג של מנהרת ה-SOCKS אצל הקורבן והפורט המקומי, דרך ההבנה שלא כל תוכנה יודעת פרוקסי והתקנים השונים, ההגדרות של סדר השרתים ורשימת הפרוקסי, ועד להדגמות מוצלחות של סריקת nmap וגלישת Firefox שנחטפו בכוח אל תוך המנהרה. בשיעור הבא נעסוק בנושא יצירת שרת SOCKS
עם Metasploit. זה הכל, תודה רבה.
בשיעור הבא נעסוק בנושא יצירת שרת SOCKS
עם Metasploit.
SR13018HE

פרקי ההרצאה: הסבר על Proxychains

  1. 00:00

    חזרה על פרוקסי ה-SOCKS

  2. 00:59

    המגבלה של תוכנות רגילות

  3. 01:54

    התקנת הכלי Proxychains

  4. 02:33

    הגדרת קובץ ההגדרות

  5. 03:14

    הגדרת שרתי הפרוקסי

  6. 04:11

    השימוש בכלי עם Nmap

  7. 04:48

    בדיקת התוצאות שהתקבלו

תמלול ההרצאה: הסבר על Proxychains

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

  1. 00:02

    שלום לכולם בהרצאה הזו אנחנו רוצים לראות איך עובד פרוקסי צ'יינס שהוא מכניס בכוח תוכנות לתוך ה-VPN לתוך הפרוקסי גם אם הן לא יודעות לעבוד איתו מה שעשינו זה SSH לתוך הקורבן שה-IP שלו זה 194 ואמרנו לו להיות SOX להיות שרת פרוקסי מינוס D עשה לי את הפרוקסי אצל הקורבן אצלי בנטסטאט התחיל להזין פורט 9050 וכל מה שייכנס לפורט

  2. 00:33

    הזה ב-IP שלי יגיע למחשב של הקורבן ויצא משם לרשת הפנימית כי הקורבן שלי מחובר גם לרשת 10.100 החיצונית וגם ל-192 הפנימית אני מחובר רק לכתובת 10 החיצונית, אתם יכולים לראות רק 10.100 יש לי אז אני פתחתי עם SSH-D פרוקסי אצל הקורבן ועכשיו כל מה שאני אכניס לפורט הזה 9050 יצא

  3. 01:03

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

  4. 01:19

    וראינו בהרצאה הקודמת שאפשר לעשות Manual ולכתוב פה את ה-IP של ה-SOX פרוקסי ולאן לשלוח את הפאקטים של ה-Firefox. מה קורה כשיש לי תוכנה שאני רוצה להשתמש בה והיא לא יודעת לעשות דברים כאלו אז יש לי כלי עזר שעושה את זה בכוח בכוח מכניס פאקטים לתוך הפרוקסי וכלי עזר הזה התוכנה הזאת נקראת פרוקסי צ'יינס בואו נתקין אותה אני רק מזכיר

  5. 01:45

    לכם שיש כמה תקנים לפרוקסי יש פרוקסי של htp פרוקסי של סוקס 4 ופרוקסי של סוקס 5 היתרונות של סוקס שהם לא מוגבלים לפרוטוקול ספציפי ופרוקסי צ'יינס יודע לעבוד עם שלושת הסוגים האלו זאת אומרת עם שלושת סוגי שרתי הפרוקסי אנחנו הולכים עכשיו לעבוד עם סוקס 4 למה כי ssh-d זה סוקס 4 אני בינתיים מתקין פרוקסי צ'יינס אני צריך להגדיר לו אחרי ההתקנה איפה

  6. 02:12

    נמצא הפרוקסי שאליו הוא יכניס את כל הפקטים אני עושה פה sudo run as administrator לעורך טקסט לנוטפט בשם נאנו לקובץ ההגדרות של proxychains.conf זה קובץ ההגדרות שלו כאן אני כותב האם זה סטריק צ'יין האם ללכת בדיוק לפי הסדר של כל שרתי הפרוקסי שאני אתן לך או שללכת בצורה רנדומלית אני

  7. 02:37

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

  8. 03:01

    אני יכול גם להגיד לו להכניס את כל ה-DNSים את כל הבקשות ה-DNS גם לתוך ה-proxy לתוך ה-VPN והדבר הכי חשוב זה השורה האחרונה הזאת אומרת לאיזה שירותי פרוקסי לשלוח את הפאקטים פרוקסי ליסט רשימה של שירותי פרוקסי ויש לי פה שורה אחת שהגיעה ברירת מחדל לשלוח בתקן של SOX4 ל-127.001 שזה ל-IP של עצמי בפורט 9050 ותראו איזה קטע, זה בדיוק מה שיש לי, port

  9. 03:30

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

  10. 03:41

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

  11. 03:51

    כרגע אין לי פה סיסמה, אני יוצא מהקובץ. זאת ההגדרה שלי בפרוקסי ליסט, לי שרת פרוקסי אחד ודרכו אני עובר ועכשיו אני יכול להשתמש בפרוקסי צ'יינס כדי להכניס את כל הפאקטים של nmap ליעד שלא קיים אצלי בכלל לתוך ה-vpn אני מזכיר לכם שאצלי ב-ip אדרס קיים רק 10 100 אבל אני אומר ל-nmap לסרוק 192 168 איך הוא יגיע אליו דרך הפרוקסי צ'יינס דרך אגב אם לא היה לי פרוקסי צ'יינס

  12. 04:23

    הייתי יכול לפתוח פורט 88 אצלי שיעבור ל-88 ביד לפתוח פורט אחד בלבד ולעשות צריקה של פורט אחד בלבד אבל זה לא נוח לסרוק כל פורט בנפרד זה לא נוח לפתוח כל פורט בנפרד פרוקסי צ'יינס פותח לי הכל ואנחנו מריצים את הפרוקסי צ'יינס מכניסים הכל לתוך ה-vpn לתוך הפרוקסי את ה-nmap שלנו ושימו לב ה-nmap הולך לכתובת שלא קיימת במחשב המקומי

  13. 04:55

    והוא סורק לי את הפורט ותסתכלו איזה יופי כתוב פה שproxy chains מעביר את הבקשות שלו לתוך הפרוקסי וזאת התשובה שלו שפורט 88 פתוח במקום לפתוח פורט פורט כמו שזה היה פעם היינו פותחים

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

ההרצאה הקודמת: יצירת SOCKS Proxy - עם SSH -D

ההרצאה הבאה: יצירת שרת SOCKS - עם Metasploit

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

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