בערך 25 נקודות תורפה התגלו בזפיר, מערכת RTOS

צפריר

חוקרים מחברת NCC Group פרסמו לאחרונה תוצאות הביקורות של פרויקט זפיר, שהיא מערכת הפעלה בזמן אמת (RTOS), המיועדת לאבזר מכשירים על פי המושג "אינטרנט של דברים" (IoT). זפיר מפותחת בהשתתפות אינטל.

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

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

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

על נקודות תורפה

הביקורת חשפה 25 נקודות תורפה בזפיר ופגיעות אחת ב- MCUboot. בסך הכל הם זוהו 6 נקודות תורפה בערמת הרשת, 4 בליבה, 2 בקליפת הפקודה, 5 במטפלים בשיחות המערכת, 5 במערכת המשנה USB ו- 3 במנגנון עדכון הקושחה.

שתי בעיות הוקצו לרמת סכנה קריטית, שניים: גבוה, 9 בינוני, 9 - נמוך ו -4 - לקחת בחשבון. בעיות משפיע קריטי על מחסנית IPv4 ועל מנתח ה- MQTT, ואילו מהאלה מסוכנים כוללים אחסון בנפח USB ומנהלי התקן USB DFU.

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

מחסנית ה- IPv4 של הפלטפורמה זוהתה פגיעות מנוצלת מרחוק, מה שמוביל לשחיתות זיכרון בעת ​​עיבוד מנות ICMP שהשתנו בצורה מסוימת.

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

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

הבעיות מכסות גם את קוד עיבוד שיחות המערכת עצמו - גישה למספר שיחה שלילי של המערכת מובילה להצפת מספרים שלמים. ANDהליבה זיהתה גם בעיות ביישום הגנת ASLR (רנדומיזציה של מרחב כתובות) והמנגנון להתקנת תוויות כנריות בערימה, מה שהופך את המנגנונים הללו ללא יעילים.

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

הפגיעות ב- USB DFU, מנהל התקן להורדת קושחה חדשה באמצעות USB, מאפשרת לטעון תמונת קושחה שונה לפלאש הפנימי של מיקרו-בקר מבלי להשתמש בהצפנה ולעקוף מצב אתחול מאובטח עם אימות חתימה דיגיטלית של רכיבים. בנוסף, נחקר קוד ה- MCUboot open booter, בו נמצאה פגיעות שאינה מסוכנת שעלולה להוביל להצפת מאגר בעת שימוש בפרוטוקול ניהול פשוט (SMP) מעל UART.


תוכן המאמר עומד בעקרונותינו של אתיקה עריכתית. כדי לדווח על שגיאה לחץ כאן.

היה הראשון להגיב

השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.