שתי נקודות תורפה זוהו במניעת שירות הליבה של לינוקס

פגיעויות

במהלך תקופת השבוע פורסמו כמה פתרונות לבעיות שונות בליבת הלינוקס, אך התגלו גם כמה אחרים, מתוכם גילה Wanpeng Li לאחרונה שני מניעת שירות (DOS) בגרעין הלינוקס.

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

הפגיעות הראשונה, עם מספר CVE-2018-19406 בנושא פגיעות וחשיפות נפוצות, זה קיים בפונקציה הליבה של לינוקס kvm_pv_send_ipi, שמוגדרת בקובץ arch / x86 / kvm / lapic.c.

הפגיעות של CVE-2018-19406 קיימת בליבת לינוקס 4.19.2, המאפשר לתוקף להשתמש בקריאות מערכת משוכללות למכשירים לא מתוקנים כדי להשיג מצב DOS. הסיבה לבעיה זו נובעת מכישלונו של בקר ה- Interrupt מתקדם לתכנות (APIC).

וונפנג לי כתב:

"הסיבה היא שמפת ה- apic טרם אוגלה, מבחן המבחן מפעיל את ממשק pv_send_ipi על ידי vmcall, מה שמביא לכך שלא הופנה הפניה ל- kvm-> arch.apic_map. "תיקון זה מתקן את זה על ידי בדיקה אם המפה האפית היא NULL או לא ומיד אם כן."

הפגיעות השנייה שגילה Wanpeng Li מוגבלת למצבים בהם תוקף יכול לגשת פיזית למכשיר.

נושא זה ממוספר CVE-2018-19407 במאגר הפגיעות הלאומי ומופיע בפונקציה vcpu_scan_ioapic בקשת / x86 / kvm / x86.c בליבת הלינה 4.19.2 של Linux, ומאפשר למשתמשים מקומיים לגרום סטיית מניעת שירות (NULL pointer) ו- BUG) באמצעות שיחות מערכת מעוצבות שמגיעות למצב בו איופיק אינו מאותחל.

עוד פגיעות שמשפיעה על ליבת לינוקס CVE-2018-18955

יתר על כן, גם במהלך השבוע התגלה פגיעות (CVE-2018-18955) בקוד התרגום uid / gid ממרחב שמות המשתמשים.

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

לדוגמא, כאשר אתה משתמש במערכת קבצים משותפת במיכל ובסביבת מארח, אתה יכול לקרוא את התוכן של קובץ / etc / shadow בסביבה הראשית באמצעות פנייה ישירה ל- i-node.

הפגיעות קיימת בהפצות המשתמשות בגרעין 4.15 ובגרסאות חדשות יותר, למשל באובונטו 18.04 ובאובונטו 18.10, Arch Linux ו- Fedora (גרעין 4.19.2 עם תיקון כבר זמין ב- Arch וב- Fedora).

RHEL ו- SUSE אינם מושפעים. ב- Debian וב- Red Hat Enterprise Linux, תמיכה במרחב המשתמשים אינה מופעלת כברירת מחדל, אלא נכללת באובונטו ובפדורה.

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

הבעיה תוקנה בגרסאות 4.18.19, 4.19.2 ו- 4.20-rc2.

פגיעות הוא קיים בפונקציה map_write () המוגדרת בקובץ הליבה / user_namespace.c, והיא נגרמת על ידי עיבוד שגוי של רווחי זיהוי משתמש מקוננים המשתמשים ביותר מ -5 טווחי UID או GID.

בתנאים אלה, התרגום של המזהים uid / gid ממרחב השם לליבה (מפה קדימה) עובד כהלכה, אך אינו נעשה במהלך המרה הפוכה (מפה הפוכה, מליבה למרחב מזהה).

נוצר מצב שבו מזהה המשתמש 0 (שורש) ממופה כראוי למזהה 0 בגרעין במהלך המרה קדימה, אך אינו משקף את המצב בפועל במהלך טרנספורמציה הפוכה המשמשת בבדיקות inode_owner_or_capable () ו- privileged_wrt_inode_uidgid ().

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


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

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

*

*

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