העדכון שאתם לא יכולים להרשות לעצמכם לדלג עליו: סוף התמיכה ב-Office 2016 ו-Office 2019

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

CVE-2025-24293 קריטי ב-Ruby on Rails – Active Storage RCE התגלה על ידי OPSWAT יחידה 515

עַל יְדֵי OPSWAT
שתף את הפוסט הזה

מבוא ל-Ruby on Rails

Ruby on Rails (‏Rails) היא מסגרת אינטרנט מלאה מסוג Model-View-Controller (MVC) שנבנתה עם Ruby. היא מגיעה "כולל סוללות ", ומציעה למפתחים את כל מה שהם צריכים ישירות מהקופסה: Mapper Object-Relational (Active Record), שכבת בקשה/תגובה ותצוגה (Action Pack/Action View), עיבוד עבודות רקע, שליחי דיוור, תמיכה ב-WebSocket, אחסון והעלאות קבצים (Active Storage), ועוד ועוד.

מאז השקתה הראשונית בשנת 2004, Ruby on Rails צמחה והפכה לאחת ממערכות ההפעלה האינטרנטיות המאומצות ביותר בעולם. כיום היא מפעילה מיליוני אתרים ואפליקציות - כולל פלטפורמות ידועות כמו GitHub, Shopify, Airbnb, Basecamp ונטפליקס. עם הדגש החזק שלה על מוסכמות על פני תצורה , פרודוקטיביות מפתחים ויצירת אבות טיפוס מהירה, Rails הפכה למערכת הפעלה מועדפת הן עבור סטארט-אפים והן עבור ארגונים גדולים.

יחידה 515 מחקר: חשיפת פגיעויות קריטיות במסילות

במהלך מחקר עצמאי, תאי דו , חבר ב- OPSWAT צוות יחידה 515 של Rails זיהה שתי פגיעויות ב-Ruby on Rails - אחת מהן עלולה להוביל לביצוע קוד מרחוק (RCE). ממצאים אלה נחשפו באחריות לצוות האבטחה של Rails, שאיתו OPSWAT מתואם לאורך כל התהליך.

ב-13 באוגוסט 2025, צוות Rails פרסם הודעות לציבור ושחרר גרסאות מתוקנות שטיפלו בשתי הפגיעויות.

גרסאות מושפעות ומהדורות מתוקנות

רְכִיב
גרסאות מושפעות
גרסאות קבועות
אחסון פעיל (CVE-2025-24293)
מסילות ≥ 5.2.0 ומטה מהשחרור הקבוע
7.1.5.2, 7.2.2.2, 8.0.2.1
רישום רשומות פעילות (CVE-2025-55193)
Rails < 7.1.5.2, < 7.2.2.2, < 8.0.2.1
7.1.5.2, 7.2.2.2, 8.0.2.1

בעיות אבטחה שזוהו ב-Rails

CVE-2025-24293 – שיטות טרנספורמציה לא בטוחות לאחסון פעיל

פגיעות זו משפיעה על Active Storage בגרסאות Rails ≥ 5.2.0. היא מתרחשת כאשר שיטות טרנספורמציה לא בטוחות של תמונות מועברות ל- mini_magick , מה ש - בשילוב עם קלט משתמש לא מאומת - עלול להוביל לביצוע קוד מרחוק (RCE). בעוד ש- Rails מציינת כי הפגם אינו ניתן לניצול תחת תצורת ברירת מחדל, יישומים שחושפים אפשרויות טרנספורמציה למשתמשים נמצאים בסיכון מיוחד.

CVE-2025-55193 – הזרקת ANSI Escape ברישום רשומות פעילות

פגיעות זו משפיעה על רישום Active Record בכל גרסאות Rails לפני 7.1.5.2, 7.2.2.2 ו-8.0.2.1. תוקפים עלולים להזריק מזהים מיוחדים המכילים רצפי ANSI escape לתוך יומני רישום, ובכך עלולים לתמרן את האופן שבו שאילתות מופיעות בפלט הטרמינל ולהוביל ליומנים מטעים או פגומים. למרות שהפגם אינו חושף נתונים באופן ישיר או מאפשר ביצוע קוד, הוא עלול להפריע למאמצי הניטור והתגובה לאירועים. צוות האבטחה של Rails פתר את הבעיה באותן גרסאות מתוקנות.

ניתוח טכני של CVE-2025-24293 – ביצוע קוד מרחוק באחסון פעיל

סקירה כללית של אחסון פעיל

Active Storage הוא המסגרת המובנית של Rails לטיפול בהעלאות קבצים. היא מאפשרת למפתחים לצרף קבצים למודלים של Active Record ולאחסן אותם באופן מקומי (לצורך פיתוח/בדיקה) או בשירותי ענן כמו Amazon S3, Google Cloud Storage או Microsoft Azure . Core התכונות כוללות ביצוע טרנספורמציות תמונה, יצירת תצוגות מקדימות עבור קבצים שאינם תמונה כמו קבצי PDF וסרטונים, ושיקוף העלאות לשירותים מרובים לצורך יתירות או הגירה.

כיצד עובדות טרנספורמציות תמונה

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

קוד Ruby on Rails באמצעות גרסת Active Storage לשינוי גודל התמונה, רלוונטי ל-CVE-2025-24293

כאשר לקוח מבקש כתובת URL משתנה, Active Storage מבצע את הטרנספורמציה לפי דרישה מה-blob המקורי, מאחסן את התוצאה בשירות שתצורתו נקבעה ומחזיר הפניה לקובץ שנוצר לאחרונה.

Rails תומך בשני מעבדים לטרנספורמציות תמונה: Vips ו- MiniMagick . ניתן להגדיר את המעבד שבשימוש דרך config.active_storage.variant_processor.

קוד Ruby on Rails Active Storage המציג הגדרות variant_processor, הרלוונטיות ל-CVE-2025-24293

הפעולות הספציפיות הנתמכות בטרנספורמציות תמונה נקבעות על ידי ה- image_processing gem ותלויות במעבד הבסיסי שתצורתו נקבעה עבור יישום Rails.

תיקון לא שלם של CVE-2022-21831

במרץ 2022, צוות Rails חשף את CVE-2022-21831 , פגיעות קריטית של הזרקת קוד בתכונת טרנספורמציה של תמונות של Active Storage. התיקון הציג רשימת היתרים כברירת מחדל של שיטות טרנספורמציה כדי לצמצם את הבעיה.

צילום מסך של קוד active_storage.rb המציג שיטות עיבוד תמונה נתמכות המקושרות ל-CVE-2025-24293

עם זאת, במהלך סקירה מעמיקה יותר של התיקון וקוד המקור של Rails, Thai Do ( OPSWAT יחידה 515) גילתה עקיפה שהפכה את התיקון המקורי ללא שלם. עקיפה זו החזירה נתיב לתוקפים להשיג ביצוע קוד מרחוק (RCE), מה שהוביל לחשיפת CVE-2025-24293.

שורש הבעיה באבן החן של עיבוד התמונה

כאשר מוחלת טרנספורמציה, Rails מאציל את הפעולה לפונקציה image_processing , אשר בסופו של דבר קוראת לפונקציה ImageProcessing::Processor#call בקובץ lib/image_processing/processor.rb.

קטע קוד Ruby מ- image_processing gem המציג לוגיקה המקושרת ל- CVE-2025-24293

אם מעבד הגרסה שהוגדרה הוא MiniMagick , הפגיעות טמונה בשתי פונקציות בתוך lib/image_processing/mini_magick.rb :

load_image – מקבל אפשרויות לא מאומתות מ- **loader.

save_image – מקבל אפשרויות לא מאומתות מ- **saver.

קוד רובי מ-image_processing gem המציג את השיטות load_image ו-save_image המקושרות ל-CVE-2025-24293

עבור load_image , כל זוגות מפתח-ערך ב- **loader מלבד page, geometry ו- auto_orient נשמרים ב- **options . אותו הדבר חל על save_image , כאשר מפתחות מלבד allow_splitting נשארים ב- **options . אפשרויות אלו מועברות מאוחר יותר ל- Utils.apply_options(magick, **options) , אשר מחיל אותן כדגלי MiniMagick CLI (למשל, -quality).

קטע קוד Ruby מ- image_processing gem המציג את מתודת apply_options המקושרת ל- CVE-2025-24293

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

תרחיש ניצול ביישומי מסילות

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

קוד Ruby on Rails באמצעות user.avatar.variant עם פרמטרים, הממחיש את CVE-2025-24293

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

הוכחת היתכנות: ביצוע קוד מרחוק

ביישומי Rails המריצים גרסאות פגיעות (לפני 8.0.2.1, 7.2.2.2 ו-7.1.5.2 ), OPSWAT יחידה 515 הדגימה בהצלחה שרשרת ניצול לרעה שבה קלט טרנספורמציה לא מאומת הוביל לביצוע פקודת מעטפת.

סרטון PoC זה מדגים את יכולת הניצול של CVE-2025-24293 ומדגיש את ההשפעה בעולם האמיתי על יישומי Rails:

שירותי בדיקת חדירה מקצועית ומניעת נזקים

על ארגונים לטפל ב- CVE-2025-24293 וב- CVE-2025-55193 על ידי שדרוג Ruby on Rails למהדורות האבטחה העדכניות ביותר (7.1.5.2, 7.2.2.2, או 8.0.2.1) . אם תיקון מיידי אינו אפשרי, אמצעי הגנה זמניים כוללים הגבלת טרנספורמציות תמונה לקביעות מוגדרות מראש, אימות וחיטוי קלט משתמש, הקשחת מדיניות ImageMagick והבטחה שיומני רישום אינם יכולים לפרש רצפי בריחה של ANSI.

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

בְּ OPSWAT יחידה 515 מספקת שירותי בדיקות חדירה של יישומי אינטרנט מיוחדים, הרבה מעבר לסורקים אוטומטיים או ביקורות רשימות תיוג. הצוות שלנו מורכב ממומחי אבטחה התקפית מנוסים, בעלי ניסיון של שנים בבדיקת יישומים בקנה מידה גדול בתעשיות מגוונות. באמצעות מתודולוגיה שיטתית ואוורסרית, אנו חושפים פגיעויות בזרימות אימות, אימות קלט, בקרת גישה וטיפול בנתונים - בעיות שיכולות להימשך אפילו במסגרות מתוקנות במלואן כמו Ruby on Rails.

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

תגיות:

הישאר מעודכן עם OPSWAT !

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