פגיעות ב- Vim אפשרה ביצוע קוד בעת פתיחת TXT

מֶרֶץ

פגיעות חדשה תוקנה בעורכי הטקסט המותקנים מראש בהפצות שונות נמצא לינוקס בעורכי הטקסט Vim ו- Neovim (CVE-2019-12735).

הבאג שנמצא בעורכי אלה מאפשר להאקרים לשלוט במחשבים כאשר משתמשים פותחים קובץ טקסט זדוני. הבעיה מתבטאת בפעילות המודל המופעלת כברירת מחדל (": set modeline"), המאפשרת להגדיר את אפשרויות העריכה בקובץ שעובד.

Vim ומזלג NeoVim שלו הכילו פגם שנמצא בדוגמניות. תכונה זו מאפשרת למשתמשים לציין מידות חלון ואפשרויות מותאמות אישית אחרות בסמוך לתחילת או סוף קובץ הטקסט.

תכונה זו מופעלת כברירת מחדל בגרסאות לפני Vim 8.1.1365 Neovim 0.3.6 והיא חלה על כל סוגי הקבצים, כולל קבצי .txt.

על פגיעות ב- Vim

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

יחד עם זאת, הפקודה ": source" היא אחת מאלה המותרות, בה אתה יכול להשתמש בשינוי "!" להפעלת פקודות שרירותיות מהקובץ שצוין.

לכן, כדי לבצע את הקוד, מספיק לציין בשורת המודל מבנה של הטופס "set foldexpr = execute ('\: source! Some_file'):". ב- Neovim, שיחת הביצוע אסורה, אך במקום זאת ניתן להשתמש ב- assert_fails.

מצד שני, בארגז החול הוא נועד למנוע תופעות לוואי:

ניתן להעריך את האפשרויות 'foldexpr', 'formatexpr', 'inclusiveeexpr', 'indentexpr', 'lineline' ו- 'foldtext' בארגז חול. משמעות הדבר היא שאתה מוגן מפני ביטויים אלה עם תופעות לוואי לא נעימות. זה מספק ביטחון מסוים כאשר אפשרויות אלה מוגדרות ממודל.

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

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

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

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

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

"PoC זה מתאר גישה התקפה אמיתית בה מופעלת מעטפת הפוכה כאשר המשתמש פותח את הקובץ", כתב רזמג'ו. «כדי להסתיר את ההתקפה, הקובץ ייכתב מחדש מיד עם פתיחתו. כמו כן, PoC משתמש ברצפי בריחה סופניים כדי להסתיר את קו הדגם כאשר תוכן מודפס עם חתול. (חתול-v חושף את התוכן בפועל). «

פגיעות של ביצוע פקודה דורשת הפעלה של פונקציונליות דוגמנות סטנדרטית, כמו בחלק מההפצות של לינוקס כברירת מחדל. הפגם נמצא ב- Vim לפני גרסה 8.1.1365 וב- Neovim לפני גרסה 0.3.6.

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

בהפצות, הבעיה נפתרת ב RHEL, SUSE / openSUSE, Fedora, FreeBSD, אובונטו, Arch Linux ו- ALT.

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

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


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

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

*

*

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