לאחרונה נחשף כי התגלתה שיטה המאפשרת לתוקף לאלץ את תעבורת המשתמש לצאת ממנהרת ה-VPN שלו באמצעות תכונות מובנות של פרוטוקול DHCP.
שיטת התקפה חדשה זו , המכונה "TunnelVision", מאפשרת להפנות מחדש את תעבורת הקורבן דרך מארח של התוקף (בתנאי שלתוקף יש גישה לרשת המקומית או שולט ברשת אלחוטית).
חשוב לציין שהרעיון של שינויי ניתוב מקומי אינו חדש והוא שימש בדרך כלל בהתקפות שנועדו לזייף שרתי DNS. לדוגמה, TunnelCrack, אשר ניתב מחדש את התנועה דרך שער ברירת מחדל חלופי, השפיע על כל לקוחות ה-VPN של iOS שנבדקו, כמו גם על רשתות ה-VPN של macOS, Windows, Linux ו-Android.
על TunnelVision
מוזכר כי המהות של TunnelVision היא שהתוקף יכול להפעיל שרת DHCP משלו ולהשתמש בו כדי לשלוח מידע ללקוח על מנת לשנות את הניתוב . באופן ספציפי, תוקף יכול להשתמש באפשרות DHCP 121, שנועדה להעביר מידע מסלול סטטי , כדי לשנות את טבלת הניתוב במחשב של הקורבן ולנתב את התנועה מבלי לעבור דרך ה-VPN.
מטרת המחקר הזה הייתה לבדוק טכניקה זו מול ספקי VPN מודרניים כדי לקבוע את הפגיעות שלהם ולהודיע לציבור הרחב על בעיה זו. זו הסיבה שסיכמנו עם CISA להגיש CVE כאשר נחשוף בפניהם ומדוע החלטנו לתת שם לפגיעות.
הניתוב מחדש מושג על ידי הגדרת סדרה של נתיבים עבור תת-רשתות עם הקידומת /1 , בעלי עדיפות גבוהה יותר מנתיב ברירת המחדל עם הקידומת /0. כתוצאה מכך, במקום ממשק הרשת הווירטואלית שתצורתו נקבעה עבור ה-VPN, התעבורה תנותב דרך ממשק הרשת הפיזי למארח של התוקף ברשת המקומית.
במקום להישלח דרך ה-VPN, התעבורה נשלחת בטקסט רגיל ללא מנהרה למערכת של התוקף. בעיה זו משפיעה על כל לקוח VPN שאינו משתמש במרחבי שמות של רשת מבודדים כדי לנתב תעבורה למנהרה או שאינו קובע כללי סינון מנות האוסרים ניתוב תעבורת VPN דרך ממשקי רשת פיזיים קיימים.
ניתן לבצע TunnelVision בכל מערכת התומכת באפשרות DHCP 121 , כולל לינוקס, חלונות, iOS ו-macOS, ללא קשר לפרוטוקול ה-VPN בו נעשה שימוש (Wireguard, OpenVPN, IPsec) ולחבילת ההצפנה המופעלת.
מוזכר כי אנדרואיד אינה פגיעה למתקפה זו משום שאינה מעבדת את האפשרות 121 ב-DHCP . למרות שהמתקפה מאפשרת גישה לתעבורה, היא אינה מאפשרת יירוט של חיבורים או קביעת התוכן המועבר דרך פרוטוקולים מאובטחים ברמת האפליקציה, כגון TLS ו-SSH. לדוגמה, התוקף אינו יכול לקבוע את תוכן הבקשות הנשלחות דרך HTTPS, אך יכול להבין לאילו שרתים נשלחות הבקשות.
כדי להגן מפני התקפה, ניתן ליישם מספר אמצעים ברמת סינון החבילות: איסור שליחת חבילות המיועדות לממשק ה-VPN דרך ממשקי רשת אחרים, חסימת חבילות DHCP באמצעות אפשרות 121, שימוש ב-VPN בתוך מכונה וירטואלית או מכולה נפרדים המבודדים מהרשת החיצונית, או שימוש במצבי תצורת מנהרה מיוחדים המשתמשים במרחבי שמות של רשת לינוקס.
כדי לזייף נתיבים , פותח גם דונגל USB שתוכנן במיוחד , המדמה את פעולתו של מתאם רשת, וכאשר הוא מחובר למחשב דרך DHCP, מצהיר על עצמו כשער. יתר על כן, כאשר השער נמצא תחת שליטת תוקף (לדוגמה, כאשר קורבן מתחבר לרשת אלחוטית הנשלטת על ידי תוקף), פותחה טכניקה להחדרת מנות לתוך המנהרה הנתפסות כמקורן בממשק רשת ה-VPN. מספר סקריפטים פורסמו גם כן לניסויים בהתקפות אלו.
לבסוף, אם אתם מעוניינים ללמוד עוד על כך , תוכלו למצוא פרטים נוספים בקישור הבא.