אנו נרגשים להציג סדרה של בלוגים על ניתוח טכני המתמקדים במגוון פגיעויות וחשיפות נפוצות (CVE), שזוהו וטופלו באמצעות טכנולוגיות זיהוי איומים מתקדמות שלנו. כל המחקר נעשה על ידי הסטודנטים לתארים מתקדמים המשתתפים במחקר. OPSWAT תוכנית המלגות בתחום אבטחת הסייבר הושקה בספטמבר 2023.
בבלוג זה, נסביר את הפגיעות CVE-2020-14425 ב-Foxit PDF Reader וכיצד ארגונים יכולים להגן על עצמם מפני ניצול לרעה.

קורא PDF של פוקסיט
Foxit PDF Reader הוא כלי PDF שפותח על ידי Foxit Software , המספק מגוון תכונות ליצירה, צפייה, עריכה וחתימה דיגיטלית על מסמכי PDF. הגרסה החינמית של Foxit Reader צברה פופולריות ונמצאת בשימוש על ידי למעלה מ-700 מיליון משתמשים.
כדי לשפר את היכולות והגמישות שלו, Foxit PDF Reader תומך בהרחבות JavaScript, המציעות למשתמשים אפשרויות התאמה אישית; עם זאת, הדבר מציג גם סיכון אבטחה פוטנציאלי, מה שהופך את התוכנה למטרה לתוקפים.

CVE-2020-14425
פגיעות ב-Foxit PDF Reader לפני גרסה 10.0 מאפשרת לתוקפים לבצע קוד מרחוק במכשיר של הקורבן כאשר נפתח קובץ PDF שנוצר במיוחד. פגיעות זו התרחשה עקב חולשת אבטחה של פונקציית ה-JavaScript app.opencPDFWebPage. אם Foxit Reader מוגדר להשתמש בדפדפן ברירת המחדל כדי לפתוח כתובות URL מוטמעות בקובץ ה-PDF, הקוד הזדוני המוטמע בקובץ ההפעלה עלול להתבצע מבלי להפעיל תיבת דו-שיח של אזהרת אבטחה.
קובץ PDF שנוצר כדי לנצל את ה-CVE הזה יכול להיות מופץ באמצעות קמפיין פישינג בדוא"ל או קישורים זדוניים מוטמעים. אם המשתמש פותח את קובץ ה-PDF שנפרץ באמצעות גרסת Foxit Reader הפגיעה, התוקף יכול להשיג שליטה על המכשיר של הקורבן באמצעות ביצוע קוד מרחוק.

ניתוח CVE-2020-14425
קבצי PDF מאורגנים באמצעות מבנה מבוסס עץ, המורכב מקטע כותרת, קטע גוף, טבלת הפניות צולבות וקטע טריילר.
- הכותרת מתחילה ב-%PDF-1.x, המציינת את גרסת פורמט ה-PDF. נכון לעכשיו, גרסת הפורמט נעה בין 1.0 ל-1.7. קטע הכותרת כולל גם מטא-נתונים של המסמך, כגון המחבר, תאריך היצירה ומידע רלוונטי אחר.
- גוף הקובץ כולל את מלוא תוכן קובץ ה-PDF, המובנה באובייקטים כמו דפים, זרמי טקסט, גופנים, טפסים, קוד JavaScript ואלמנטים אחרים.
- טבלת ההפניות המקושרות (טבלת Xref) מכילה את ההפניות וקיזוז הבייטים עבור כל האובייקטים בקובץ ה-PDF. היא מאפשרת גישה מהירה לאובייקטים מבלי לקרוא את הקובץ כולו.
- הטריילר מאחסן מידע נוסף החיוני לאיתור טבלת ה-xref, כגון המספר הכולל של ערכים בטבלת ה-xref והמצביע לתחילתה.

מכיוון שגוף הקובץ מכיל את האובייקטים הרגישים של קבצי PDF, התקפות מתמקדות לרוב בהחדרת קוד זדוני לרכיב זה.
קבצי PDF הפכו למטרה לתוקפים בשל שכיחותם בכל מקום. מכיוון שקבצי PDF יכולים להכיל קוד JavaScript, ניתן להשתמש בהם לביצוע מגוון התקפות כאשר הם נפתחים על ידי דפדפן, כגון מניעת שירות (DoS), הפניה פתוחה או סקריפטים בין אתרים (XSS).
בנוסף, תוקפים עשויים להשתמש בטכניקות ניצול לרעה כגון Use After Free (UAF) ו-Buffer Overflow (BoF). הם עשויים גם לנצל טיפול בכשל תוכנה כדי לבצע מתקפת Remote Code Execution (RCE) על מערכת הקורבן. כתוצאה מכך, קובץ PDF עלול להכיל תוכנת כופר, להצפין נתונים על המכונה ולדרוש כופר משמעותי עבור שחזור, או שהתוקפים עלולים להשיג שליטה מלאה על מכונת הקורבן.
ב-Foxit Reader, כאשר כתובת URL של דף אינטרנט מוטמעת, למשתמשים יש שתי אפשרויות תצוגה: הצגת דף האינטרנט בתוך Foxit Reader או שימוש בדפדפן ברירת המחדל במכשיר של המשתמש. בתצורת ברירת המחדל, Foxit Reader ניגש באופן פנימי לדף האינטרנט המוטמע. בתוך תוכן ה-PDF, כדי לבקש פתיחת דף אינטרנט, Foxit Reader משתמש בפונקציית OpencPDFWebPage, קוד JavaScript. API נועד ליזום פתיחה של כתובת URL של דף אינטרנט מוטמע בקובץ PDF.

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

ניצול פגיעויות

עם הפגיעות שזוהתה, וקטור תקיפה פוטנציאלי כולל מתקפת פישינג המשתמשת בקובץ PDF כטוען כדי להפעיל מטען מצורף מוסתר. בתרחיש זה, גורם האיום שולח קובץ ZIP המכיל קובץ PDF וקובץ הרצה מוסתר לקורבן, בכוונה להטעות אותו ולגרום לו לפתוח את המסמך. לאחר מכן, ה-CVE ב-Foxit Reader מאפשר לקוד ה-JavaScript המוטמע להפעיל את קובץ ההפעלה המוסתר, ובכך ליצור חיבור shell הפוך למחשב של התוקף.
כדי להחדיר קוד JavaScript לקובץ PDF, התוקף יכול לשנות ישירות את תוכן קובץ ה-PDF או להשתמש בכלים כמו Foxit Phantom PDF. הקוד הזדוני מגדיר את נתיב הקובץ הזדוני ומבצע את הקוד המזיק באמצעות הפונקציה opencPDFWebPage.


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

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

תיקון
ה Multiscanning טכנולוגיה ב Metadefender Core מזהה קבצים זדוניים דחוסים בסיסמאות, ומאפשר למנהלי מערכת לזהות במדויק את האיומים הללו. עם שילוב של יותר מ-30 מנועי אנטי-וירוס יחד, שיעור זיהוי התוכנות הזדוניות מגיע ליותר מ-99.99%. יתר על כן, עם התכונה המוטמעת Deep CDR טכנולוגיית (נטרול ובנייה מחדש של תוכן), Metadefender Core יכול להסיר ביעילות קוד JavaScript שעלול להיות זדוני וליצור מחדש קבצים שעברו ניקוי ובטוחים לשימוש.




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