פגיעות iSCSI של ליבת לינוקס מאפשרת העלאת הרשאות

לאחרונה מידע חשוב אודות הזיהוי של פגיעות (רשום כ- CVE-2021-27365) בקוד המשנה של iSCSI גרעין לינוקס זה מאפשר למשתמש מקומי חסר זכות להריץ קוד ברמת הליבה ולקבל הרשאות שורש במערכת.

הבעיה נגרמת על ידי באג בתפקוד של מודול libiscsi iscsi_host_get_param (), שהוצג בשנת 2006 במהלך פיתוח תת-המערכת iSCSI. בגלל היעדר פקדי גודל נכונים, חלק מהתכונות של מחרוזות iSCSI, כגון שם מארח או שם משתמש, עשויות לחרוג מערך PAGE_SIZE (4KB).

ניתן לנצל את הפגיעות על ידי שליחת הודעות Netlink על ידי משתמש חסר זכות שמגדיר תכונות iSCSI לערכים הגדולים מ- PAGE_SIZE. בעת קריאת נתוני תכונות דרך sysfs או seqfs, קוד נקרא להעביר את התכונות ל- sprintf כך שיועתקו למאגר בגודל PAGE_SIZE.

תת-המערכת המסוימת המדוברת היא הובלת נתונים של SCSI (Small Computer System Interface), המהווה תקן להעברת נתונים המיועדים לחיבור מחשבים להתקנים היקפיים, במקור באמצעות כבל פיזי, כגון כוננים קשיחים. SCSI הוא תקן מכובד שפורסם במקור בשנת 1986 והיה תקן הזהב לתצורות שרתים, ו- iSCSI הוא בעצם SCSI על פני TCP. SCSI משמש עד היום, במיוחד במצבי אחסון מסוימים, אך כיצד זה הופך למשטח התקפה במערכת לינוקס המוגדרת כברירת מחדל?

ניצול פגיעות בהפצות תלוי בתמיכה בטעינה אוטומטית של מודול הליבה scsi_transport_iscsi כשמנסים ליצור שקע NETLINK_ISCSI.

בהפצות שבהן מודול זה נטען באופן אוטומטי, ניתן לבצע את ההתקפה ללא קשר לשימוש בפונקציונליות iSCSI. יחד עם זאת, לצורך שימוש מוצלח במנצל, נדרש בנוסף רישום של הובלת iSCSI אחת לפחות. בתורו, כדי לרשום תחבורה, אתה יכול להשתמש במודול הליבה של ib_iser, הנטען אוטומטית כאשר משתמש לא מורשה מנסה ליצור שקע NETLINK_RDMA.

טעינה אוטומטית של מודולים נדרשת לשימוש ב- exploit תומך ב- CentOS 8, RHEL 8 ופדורה על ידי התקנת חבילת הליבה rdma במערכת, המהווה תלות עבור כמה חבילות פופולריות ומותקן כברירת מחדל בתצורות עבור תחנות עבודה, מערכות שרתים עם ממשק משתמש וירטואליזציה של סביבות מארח.

יחד עם זאת, rdma-core אינו מותקן בעת ​​שימוש בבניית שרת העובדת רק במצב קונסולה וכאשר מתקינים תמונת התקנה מינימלית. לדוגמא, החבילה כלולה בהפצה הבסיסית של פדורה 31, אך אינה כלולה בשרת פדורה 31.

דביאן ואובונטו פחות רגישים לבעיהשכן חבילת ה- rdma-core טוענת רק את מודולי הליבה הדרושים להתקפה אם קיימת חומרת RDMA. עם זאת, חבילת אובונטו בצד השרת כוללת את חבילת open-iscsi, הכוללת את הקובץ /lib/modules-load.d/open-iscsi.conf כדי להבטיח שמודולי iSCSI נטענים אוטומטית בכל אתחול.

ניתן להשתמש באב-טיפוס עובד של הנצל נסה את הקישור למטה.

הפגיעות תוקנה בעדכוני הליבה של Linux 5.11.4, 5.10.21, 5.4.103, 4.19.179, 4.14.224, 4.9.260 ו- 4.4.260. עדכוני חבילות גרעין זמינים בהפצות דביאן (Oldstable), אובונטו, SUSE / openSUSE, Arch Linux ופדורה, ואילו עבור RHEL עדיין לא פורסמו תיקונים.

כמו כן, בתת-מערכת iSCSI תוקנו שתי נקודות תורפה פחות מסוכנות שיכול להוביל לדליפת נתוני גרעין: CVE-2021-27363 (מידע שהודלף על מתאר התחבורה של iSCSI דרך sysfs) ו- CVE-2021-27364 (קריאה מאזור שמחוץ למגבלות החיץ).

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

מקור: https://blog.grimm-co.com


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

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

*

*

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