Mesterséges intelligencia által vezérelt kibertámadások: Hogyan lehet felismerni, megelőzni és megvédeni az intelligens fenyegetéseket?

Olvassa el most
A helyszíni fordításokhoz mesterséges intelligenciát használunk, és bár törekszünk a pontosságra, nem biztos, hogy mindig 100%-os pontosságúak. Megértését nagyra értékeljük.

Kritikus CVE-2025-24293 a Ruby on Rails-ben - Aktív tárolási RCE az OPSWAT Unit 515 által felfedezve

a OPSWAT
Ossza meg ezt a bejegyzést

Bevezetés a Ruby on Rails rendszerbe

A Ruby on Rails (Rails) egy teljes körű, Model-View-Controller (MVC) webes keretrendszer, amely Ruby segítségével készült. "Akkumulátorokkal együtt"érkezik, és a fejlesztőknek mindent kínál, amire szükségük van: objektum-relációs leképező (Active Record), kérés/válasz és nézet réteg (Action Pack/Action View), háttérben futó feladatfeldolgozás, levelezők, WebSocket támogatás, fájltárolás és feltöltés (Active Storage), és még sok más.

A Ruby on Rails 2004-es megjelenése óta a világ egyik legszélesebb körben elfogadott webes keretrendszerévé nőtte ki magát. Ma már több millió webhely és alkalmazás - köztük olyan nagynevű platformok, mint a GitHub, a Shopify, az Airbnb, a Basecamp és a Netflix - működik vele. Mivel nagy hangsúlyt fektet a konfigurációval szembeni konvencióra, a fejlesztői termelékenységre és a gyors prototípuskészítésre, a Rails mind a startupok, mind a nagyvállalatok számára a legmegfelelőbb keretrendszerré vált.

515. egység Kutatás: Rails: Kritikus sebezhetőségek feltárása a Railsben

A független kutatás során Thai Do, az OPSWAT 515-ös egységének tagja két sebezhetőséget azonosított a Ruby on Rails-ben - az egyik távoli kódfuttatáshoz (RCE) vezethet. Ezeket a megállapításokat felelősségteljesen közölték a Rails biztonsági csapatával, amellyel OPSWAT a folyamat során végig egyeztetett.

2025. augusztus 13-án a Rails-csapat nyilvános tanácsokat tett közzé, és mindkét sebezhetőséget javított verziókat adott ki.

Érintett verziók és javított kiadások

Komponens
Érintett verziók
Javított verziók
Aktív tárolás (CVE-2025-24293)
Rails ≥ 5.2.0 és a fix kiadás alatti verziók
7.1.5.2, 7.2.2.2, 8.0.2.1
Aktív rekord naplózása (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

A Rails-ben azonosított biztonsági problémák

CVE-2025-24293 - Aktív tároló nem biztonságos átalakítási módszerei

Ez a sebezhetőség az Active Storage-t érinti a Rails ≥ 5.2.0 verziókban. Akkor fordul elő, amikor nem biztonságos képátalakítási módszerek kerülnek átadásra a mini_magicknak, ami - érvénytelenített felhasználói bemenettel kombinálva - távoli kódfuttatáshoz (RCE) vezethet. Bár a Rails megjegyzi, hogy a hiba alapértelmezett konfigurációban nem kihasználható, azok az alkalmazások, amelyek transzformációs opciókat tárnak a felhasználók elé, különösen veszélyeztetettek.

CVE-2025-55193 - ANSI Escape Injection az Active Record naplózásban

Ez a sebezhetőség a 7.1.5.2, 7.2.2.2.2 és 8.0.2.1 előtti Rails-verziók Active Record naplózását érinti. A támadók speciálisan kialakított, ANSI escape szekvenciákat tartalmazó azonosítókat juttathatnak be a naplókba, ami manipulálhatja a terminál kimenetén megjelenő lekérdezések megjelenését, és félrevezető vagy sérült naplókhoz vezethet. Bár a hiba közvetlenül nem tesz hozzáférhetővé adatokat, és nem tesz lehetővé kódfuttatást, akadályozhatja a felügyeleti és incidensreakciós erőfeszítéseket. A Rails biztonsági csapata ugyanezen javított kiadásokban orvosolta a problémát.

A CVE-2025-24293 - Active Storage távoli kódvégrehajtás technikai elemzése

Az aktív tárolás áttekintése

Az Active Storage a Rails beépített keretrendszere a fájlfeltöltések kezelésére. Lehetővé teszi a fejlesztők számára, hogy fájlokat csatoljanak az Active Record modellekhez, és azokat akár helyben (fejlesztés/tesztelés céljából), akár felhőszolgáltatások, például az Amazon S3, a Google Cloud Storage vagy a Microsoft Azure segítségével tárolják. Az Core funkciók közé tartozik a képtranszformációk elvégzése, előnézetek készítése nem képfájlokhoz, például PDF-ekhez és videókhoz, valamint a feltöltések tükrözése több szolgáltatásba redundancia vagy migráció céljából.

Hogyan működnek a képtranszformációk

A képtranszformációk lehetővé teszik a fejlesztők számára, hogy a csatolmányokat meghatározott méretekben vagy formátumokban szállítsák. Ez úgy történik, hogy egy képmellékleten meghívjuk a variant() metódust, és átadjuk a támogatott műveleteket.

Amikor egy ügyfél egy eltérő URL-címet kér, az Active Storage igény szerint elvégzi az átalakítást az eredeti blobból, az eredményt a konfigurált szolgáltatáson tárolja, és visszaad egy átirányítást az újonnan létrehozott fájlra.

A Rails két processzort támogat a képtranszformációkhoz: Vips és MiniMagick. A használt processzor a config.active_storage.variant_processor segítségével konfigurálható.

A képtranszformációkban támogatott konkrét műveleteket az image_processing gem határozza meg, és a Rails-alkalmazáshoz konfigurált mögöttes processzortól függ.

A CVE-2022-21831 hiányos javítása

2022 márciusában a Rails-csapat nyilvánosságra hozta a CVE-2022-21831-et, egy kritikus kódinjekciós sebezhetőséget az Active Storage képátalakítási funkciójában. A javítás bevezette az átalakítási módszerek alapértelmezett engedélyezési listáját a probléma enyhítése érdekében.

A javítás és a Rails forráskódjának alaposabb felülvizsgálata során azonban Thai DoOPSWAT 515-ös egység) felfedezett egy megkerülést, amely az eredeti javítást hiányossá tette. Ez a megkerülés ismét lehetővé tette a támadók számára a távoli kódvégrehajtás (RCE) elérését, ami a CVE-2025-24293 felfedéséhez vezetett.

Gyökér ok az image_processing Gem-ben

Amikor egy transzformációt alkalmazunk, a Rails delegálja a műveletet az image_processing gem-nek, amely végül meghívja az ImageProcessing::Processor#call-t a lib/image_processing/processor.rb fájlban.

Ha a konfigurált változatfeldolgozó a MiniMagick, a sebezhetőség a lib/image_processing/mini_magick.rb fájlban található két függvényben található:

-load_image - elfogadja a **loader érvénytelenített opcióit.

-save_image - elfogadja a **saver érvénytelenített beállításait.

A load_image esetében a **loaderben a page, geometry és auto_orient kivételével minden kulcs-érték pár megmarad a **optionsban. Ugyanez vonatkozik a save_image-re is, ahol az allow_splitting kivételével a kulcsok a **options-ban maradnak. Ezeket az opciókat később átadjuk az Utils.apply_options(magick, **options) parancsnak, amely MiniMagick CLI flagként alkalmazza őket (pl. -quality).

Bár a loader és a saver szerepel az alapértelmezett engedélyezési listán, és ezért biztonságosnak tekinthető, ez a bizalom nem helyénvaló. Gondosan megtervezett bemenettel egy támadó kihasználhatja ezeket az opciókat az ellenőrzések megkerülésére, és végül arra késztetheti a Rails-t, hogy tetszőleges rendszerparancsokat hajtson végre a gazdaszámítógépen.

Exploitation forgatókönyv Rails alkalmazásokban

Ha egy alkalmazás nem hitelesített felhasználói bemenetet ad át közvetlenül az átalakítási módszerekbe, például:

Egy támadó rosszindulatú bemenet segítségével manipulálhatja a betöltő vagy a mentési beállításokat. Ez megkerülné az engedélyezési listát, és tetszőleges parancsokat hajtana végre a kiszolgálón, ami távoli kódvégrehajtást (RCE) eredményezne.

A koncepció bizonyítása: Távoli kódvégrehajtás

A sebezhető verziókat futtató Rails alkalmazásokban (a 8.0.2.1, 7.2.2.2.2 és 7.1.5.2 verzió előtt) OPSWAT Unit 515 sikeresen bemutatott egy olyan kihasználási láncot, ahol az érvénytelenített transzformációs bemenet shell parancs végrehajtását eredményezte.

Ez a PoC-videó bemutatja a CVE-2025-24293 kihasználhatóságát, és kiemeli a Rails-alkalmazásokra gyakorolt valós hatását:

Mitigációs és professzionális behatolásvizsgálati szolgáltatások

A szervezeteknek a CVE-2025-24293 és CVE-2025-55193 problémákat a Ruby on Rails legújabb biztonsági kiadásokra (7.1.5.2, 7.2.2.2.2 vagy 8.0.2.1) történő frissítésével kell kezelniük. Ha az azonnali javítás nem lehetséges, az ideiglenes védintézkedések közé tartozik a képátalakítások korlátozása az előre meghatározott előbeállításokra, a felhasználói bemenet hitelesítése és szanálása, az ImageMagick házirendek keményítése, valamint annak biztosítása, hogy a naplók ne tudják értelmezni az ANSI escape szekvenciákat.

A javítások alkalmazása azonban nem szünteti meg az összes kockázatot a modern webes környezetekben. Az egyéni üzleti logika, a harmadik féltől származó integrációk és az összetett telepítési csővezetékek gyakran olyan kihasználható utakat teremtenek, amelyek túlmutatnak a gyártó által kiadott tanácsokon. Ezért elengedhetetlen a webes alkalmazások behatolásvizsgálata .

Az OPSWAT a Unit 515 olyan speciális webes alkalmazás behatolásvizsgálati szolgáltatásokat nyújt, amelyek messze túlmutatnak az automatizált szkennereken vagy ellenőrzőlistás auditokon. Csapatunk tapasztalt támadó biztonsági szakértőkből áll, akik többéves tapasztalattal rendelkeznek a nagyméretű alkalmazások tesztelésében a legkülönbözőbb iparágakban. Szisztematikus, ellenséges módszertant alkalmazva feltárjuk a hitelesítési folyamatok, a bemeneti érvényesítés, a hozzáférés-szabályozás és az adatkezelés sebezhetőségeit - olyan problémákat, amelyek még az olyan teljesen javított keretrendszerekben is fennmaradhatnak, mint a Ruby on Rails.

Minden egyes megbízás egyesíti a mély műszaki szakértelmet a vállalati szintű jelentéskészítéssel, világos, megvalósítható betekintést nyújtva, amely lehetővé teszi a fejlesztőcsapatok számára a hibák hatékony orvoslását. A Unit 515 megbízásával a szervezetek biztosak lehetnek abban, hogy kritikus alkalmazásaikat olyan szakértők tesztelik, akik nemcsak a valós támadási technikákat szimulálják, hanem azt is igazolják, hogy a javítások valóban megszüntetik a hiányosságokat. Ez a szakértelem erősíti a javítási erőfeszítéseket, csökkenti a fennmaradó kockázatot, és növeli az alkalmazások általános ellenálló képességét a fejlődő fenyegetésekkel szemben.

Címkék:

Maradjon naprakész az OPSWAT oldalon!

Iratkozzon fel még ma, hogy értesüljön a vállalat legfrissebb híreiről, történetekről, eseményinformációkról és sok másról.