עדכוני ה-errata של OpenBSD 7.9 סוגרים באגים בליבה ש-Calif שילבה לניצול מקומי להשגת הרשאות root
חברת האבטחה Calif טוענת כי פגם בזיכרון משותף, שראשיתו לפני כ-37 שנה בקוד ה-BSD המקורי, היה מחצית משרשרת מקומית להשגת הרשאות root. לדברי Calif, OpenBSD הפיצה את התיקונים כ-errata 018 ו-026.

נקודות מרכזיות
- 1Calif פרסמה מחקר על ניצול מקומי להשגת הרשאות root ב-OpenBSD המשלב שני באגים בליבה; התיקונים מופיעים בעדכוני ה-errata של OpenBSD 7.9.
- 2לפי Calif, אחד הפגמים קשור למונה הצמדות זיכרון משותף מסוג 16-bit עם סימן, שראשיתו לפני כ-37 שנה בקוד המקור המקורי של BSD.
- 3עדכון errata 018 של OpenBSD, מתאריך 14 בספטמבר 2026, מסווג כתיקון אמינות לגלישת מספר שלם ב-shmat.
- 4עדכון errata 026, מתאריך 30 בספטמבר 2026, מסווג כתיקון אבטחה לבאג בספירת הפניות בליבה שעלול לגרום ל-use-after-free.
- 5הניצול מחייב גישה מקומית; Calif הציעה גם הקשחה רחבה יותר של הליבה, כגון ניתוק בטוח של רשומות מרשימות, אקראיות במקצי הזיכרון והפחתות סיכון מבוססות מהדר.
הידיעה המלאה
חברת האבטחה Calif פרסמה מחקר המתאר כיצד השיגה הרשאות root במערכת OpenBSD באמצעות שילוב של שני פגמים בליבה, שהפרויקט תיקן מאז. בסקירה מאת Andrew Griffiths, הנושאת את התאריך 16 באוקטובר, מסרה החברה כי ניתן להתחקות אחר אחד הבאגים כ-37 שנה לאחור, עד לקוד המקור המקורי של BSD. לדברי Calif, היא דיווחה על הפגיעויות ל-OpenBSD מוקדם יותר השנה, לעתים קרובות יחד עם הצעות לתיקונים.
לפי Calif, הפגם הוותיק יותר נוגע למונה העוקב אחר הצמדות של זיכרון משותף, שהוגדר כערך 16-bit עם סימן, ועלול לגלוש. החברה מסרה כי גלישה זו עלולה להוביל ל-use-after-free באמצעות מצב מרוץ (race condition), ויחד עם כתיבה נפרדת מחוץ לגבולות (out-of-bounds) בליבה, אפשרה למשתמש מקומי להסלים את הרשאותיו ל-root. לדברי Calif, המתקפה עבדה כאשר הקישור מחדש של הליבה KARL של OpenBSD והגנות המעבד SMAP ו-SMEP היו מופעלים, ולא נדרש לה באג של חשיפת מידע. הסקירה כוללת גם קישורים לקוד ולהוכחת היתכנות (proof of concept).
לדברי Calif, הבעיות טופלו ב-errata 018 ו-026 של OpenBSD. בדף ה-errata של OpenBSD 7.9, עדכון 018 נושא את התאריך 14 בספטמבר 2026 ומופיע כתיקון אמינות המונע גלישת מספר שלם ב-shmat. עדכון errata 026, מתאריך 30 בספטמבר 2026, מופיע כתיקון אבטחה לבאג בספירת הפניות שעלול היה לגרום למצב use-after-free בליבה. שני העדכונים חלים על כל הארכיטקטורות. Calif מציינת את שני העדכונים כתיקונים לבעיות שבשרשרת שלה, כך שאחד משני התיקונים נושא תווית של אמינות ולא של אבטחה.
בדף ה-errata נכתב כי התיקונים מופצים כקובצי diff מאוחדים (unified diffs) חתומים, וכי כלי השירות syspatch יכול להתקין עדכונים בינאריים בארכיטקטורות amd64, i386 ו-arm64. תיקונים לגרסאות הנתמכות משולבים גם בענף -stable, שהפרויקט מתחזק במשך שנה לאחר כל גרסה. Calif מתארת את הניצול כהסלמת הרשאות מקומית, כלומר תוקף יזדקק תחילה לגישה למערכת.
מעבר לעדכוני ה-errata, Calif הציגה כמה רעיונות הקשחה שנועדו להקשות על נתיבי תקיפה דומים. בהם בדיקות תקינות לפני הסרת רשומות מרשימות מקושרות דו-כיווניות, שלדברי החברה FreeBSD ו-NetBSD כבר מיישמות, וכן אקראיות רבה יותר בזיכרון הליבה, שכן לדברי Calif מקצי הזיכרון של ליבת OpenBSD נותרו דטרמיניסטיים, אף ש-KARL הופך את פריסת הקובץ הבינארי של הליבה לאקראית. החברה הצביעה גם על יכולות מהדר כגון ה-array bounds sanitizer ו-Alloc Tokens העתידיים. לדברי Calif, היא הציעה את ה-sanitizer ל-FreeBSD ודיווחה שם באופן פרטי על 21 בעיות שהוא היה מאתר, וטענה כי הפחתת הסיכון של מחלקות באגים שלמות הופכת חשובה יותר ככל שבינה מלאכותית מסייעת בגילוי פגיעויות.
למה זה חשוב
מנהלי מערכות שמתקינים רק עדכוני errata המסווגים כתיקוני אבטחה עשויים לדלג על 018, ש-OpenBSD מציגה כתיקון אמינות, אף ש-Calif מציינת אותו כאחד משני התיקונים לבאגים בשרשרת הניצול שלה להשגת root. מאחר שקוד הניצול מוזכר בפומבי, מומלץ לוודא ששני העדכונים, 018 ו-026, מותקנים, במיוחד במערכות שבהן משתמשים לא מהימנים יכולים להתחבר מקומית.
ציר זמן
· פורסם
נושאים#OpenBSD#ליבה#הסלמת הרשאות#ניהול עדכונים#Calif
מקורות
ידיעה זו מתבססת על המקורות הבאים. קראו אותם לקבלת ההקשר המלא.



