A Rust Project frissítést adott ki a szabványos könyvtárához, miután egy sebezhetőségkutató felfedezte, hogy a Windows rendszereken kötegelt fájlok futtatására használt funkciót egy befecskendezési hiba miatt lehet kihasználni.
A Rust programozási nyelvhez tartozó általános funkciók, amelyeket szabványos könyvtárként ismernek, számos egyéb funkció mellett lehetőséget kínál a Windows kötegfájlok futtatására a Command API-n keresztül. A funkció azonban nem dolgozta fel elég szigorúan az API bemeneteit ahhoz, hogy kiküszöbölje annak lehetőségét, hogy kódot fecskendezzenek be a végrehajtásba. a Rust Security Response Working Group tanácsadója április 9-én jelent meg.
Noha a Rust jól ismert memóriabiztonsági funkcióiról, az incidens rávilágít arra, hogy a programozási nyelv nem véd a logikai hibáktól – mondta Yair Mizrahi, a JFrog alkalmazásbiztonsági cég vezető biztonsági rések kutatója.
„Összességében elmondható, hogy a Rust memóriabiztonsága jelentős előny, de a fejlesztőknek nagy figyelmet kell fordítaniuk a logikai hibák lehetőségére is, hogy biztosítsák Rust-alapú alkalmazásaik általános biztonságát és megbízhatóságát” – mondja. "Az ilyen logikai problémák megoldása érdekében a Rust szigorú tesztelési és kódellenőrzési folyamatot, valamint statikus elemző eszközök használatát javasolja a logikai hibák azonosítására és enyhítésére."
A Rust nagyon biztonságos programozási nyelv hírnevet szerzett magának, mivel nem hagyja nyitva az alkalmazásokat a memóriabiztonsági sebezhetőségként ismert, gyakran súlyos hibákkal szemben. A Google tulajdonított a memória nem biztonságos kód csökkenése a memóriabiztos nyelvekre való átállás miatt, mint például a Rust és a Kotlin, míg a Microsoft úgy találta, hogy egészen 2018-ig, amikor áttért a memóriabiztos nyelvekre, az ilyen biztonsági rések rendszeresen az összes biztonsági probléma 70%-át tette ki.
A Windows számos problémát vet fel
A legújabb probléma nem memóriabiztonsági sérülékenység, hanem a nem megbízható bevitel feldolgozásához használt logika probléma. A Rust szabványos könyvtárának egy része lehetővé teszi a fejlesztő számára, hogy meghívjon egy függvényt, amely kötegfájlt küld a Windows-gépre feldolgozásra. Vannak okai annak, hogy a kódot kötegfájlként küldjék el a gazdagépnek, mondja Joel Marcey, a Rust Foundation technológiai igazgatója, amely támogatja a programozási nyelv fenntartóit és a Rust ökoszisztémát.
„A kötegelt fájlok számos okból futnak a rendszereken, és a Rust olyan API-t biztosít, amely lehetővé teszi ezek meglehetősen egyszerű végrehajtását” – mondja. "Tehát bár ez nem feltétlenül a Rust leggyakoribb felhasználási esete, az API a javított javítás bevezetése előtt lehetővé tette a rosszindulatú szereplők számára, hogy elméletileg átvegyék a rendszert tetszőleges parancsok futtatásával, és ez határozottan kritikus sérülékenység."
A fejlesztő általában a szabványos könyvtár részét képező Command Application Programming Interface (API) segítségével kötegelt folyamatként továbbíthatja a munkaterhelést a Windows gazdagépnek. Általában a Rust garantálja a Command API bármely hívásának biztonságát, de ebben az esetben a Rust Project nem talált módot arra, hogy megakadályozza az összes argumentum végrehajtását, elsősorban azért, mert a Windows nem ragaszkodik semmiféle szabványhoz, és hogy a Az API lehetővé teheti a támadó számára, hogy kódot küldjön be, amely ezután végrehajtódik.
"Sajnos arról számoltak be, hogy a menekülési logikánk nem volt elég alapos, és lehetséges volt olyan rosszindulatú érveket átadni, amelyek önkényes shell-végrehajtáshoz vezettek" - állítja a Rust Security Response WG.
A Rust Project érzékenynek bizonyult
Bár a sebezhetőség kezelése fejfájást okozhat, a Rust Project megmutatta, hogy a csoport gyorsan megoldja a problémákat, mondják a szakértők. A szabványos könyvtári sebezhetőség, CVE-2024 24576-, végső soron a Windows kötegelt feldolgozási problémája, és más programozási nyelvekre is hatással van, ha nem elemzik megfelelően a Windows kötegelt folyamatának küldött argumentumokat. Úgy tűnik, hogy a Rust Project az első, aki kijavította az argumentumokat a Windows CMD.exe folyamatnak, mondja JFrog's Mizrahi.
A csoportok nem tudták teljesen kiküszöbölni a problémát, de a Command API nem ad vissza hibát, ha a funkciónak átadott kiegészítések nem biztonságosak, mondta a Rust Project.
A JFrog's Mizrahi sürgeti a Rust-ot, hogy bővítse ki a statikus alkalmazásbiztonsági tesztelés alkalmazását, és terjessze ki a zavaró és dinamikus tesztelés használatát.
„Összességében a Rust jó úton halad a memóriabiztonság hangsúlyozásával és a szigorú tesztelési gyakorlatok bátorításával” – mondja. „Ha ezeket az erőfeszítéseket a statikus elemzés és a fuzzing folyamatos fejlesztésével kombináljuk, az segíthet a Rust közösségnek és a szélesebb értelemben vett szoftveriparnak, hogy az elkövetkező években jelentős előrelépéseket tegyen a logikai hibák és a bemeneti ellenőrzési hibák kezelésében.”
- SEO által támogatott tartalom és PR terjesztés. Erősödjön még ma.
- PlatoData.Network Vertical Generative Ai. Erősítse meg magát. Hozzáférés itt.
- PlatoAiStream. Web3 Intelligence. Felerősített tudás. Hozzáférés itt.
- PlatoESG. Carbon, CleanTech, Energia, Környezet, Nap, Hulladékgazdálkodás. Hozzáférés itt.
- PlatoHealth. Biotechnológiai és klinikai vizsgálatok intelligencia. Hozzáférés itt.
- Forrás: https://www.darkreading.com/application-security/critical-rust-flaw-poses-exploit-threat-in-specific-windows-use-cases
- :van
- :is
- :nem
- $ UP
- 2018
- 7
- 9
- a
- képesség
- Szerint
- szereplők
- cím
- címzés
- megfelelő
- tapad
- fejlesztések
- Előny
- Után
- ellen
- Minden termék
- lehetővé
- megengedett
- lehetővé teszi, hogy
- Is
- között
- an
- elemzés
- és a
- bármilyen
- api
- Megjelenik
- Alkalmazás
- alkalmazás biztonsága
- alkalmazások
- április
- önkényes
- VANNAK
- érvek
- AS
- At
- támadó
- figyelem
- gyarapítja
- BE
- mert
- előtt
- hogy
- bővül
- tágabb
- bogarak
- de
- by
- hívás
- TUD
- képességek
- eset
- esetek
- osztály
- közel
- kód
- Kódellenőrző
- kombinálása
- hogyan
- parancs
- Közös
- közösség
- teljesen
- tovább
- tudott
- kritikai
- foglalkozó
- minden bizonnyal
- Fejlesztő
- fejlesztők
- DID
- Igazgató
- felfedezett
- do
- nem
- Által
- Csepp
- dinamikus
- könnyen
- ökoszisztéma
- erőfeszítések
- megszüntetése
- hangsúlyozva
- ösztönzi
- bátorító
- elég
- biztosítására
- hiba
- kivégez
- végrehajtott
- végrehajtás
- Bontsa
- szakértők
- Exploit
- Hasznosított
- meglehetősen
- Jellemzők
- filé
- Fájlok
- Találjon
- Cég
- vezetéknév
- Rögzít
- rögzített
- hibája
- hibái
- A
- Előre
- talált
- Alapítvány
- funkció
- funkciók
- szerzett
- Csoport
- Csoportok
- garanciák
- he
- segít
- vendéglátó
- azonban
- HTML
- HTTPS
- azonosítani
- if
- végre
- in
- incidens
- beleértve
- ipar
- bemenet
- bemenet
- Felület
- bele
- kérdés
- Kiadott
- kérdések
- IT
- ITS
- Joel
- jpg
- ismert
- nyelv
- Nyelvek
- legutolsó
- Szabadság
- könyvtár
- logika
- logikus
- gép
- csinál
- rosszindulatú
- sok
- Memory design
- microsoft
- Enyhít
- a legtöbb
- kell
- szükségszerűen
- figyelemre méltó
- of
- Ajánlatok
- on
- nyitva
- Más
- mi
- ki
- felett
- átfogó
- rész
- elhalad
- Elmúlt
- Múló
- Tapasz
- Fizet
- Plató
- Platón adatintelligencia
- PlatoData
- pózok
- lehetőség
- lehetséges
- potenciális
- gyakorlat
- megakadályozása
- elsősorban
- Probléma
- folyamat
- feldolgozás
- Programozás
- programozási nyelvek
- program
- bizonyíték
- bizonyul
- biztosít
- közzétett
- gyorsan
- miatt
- rendszeresen
- megbízhatóság
- Számolt
- hírnév
- kutató
- elmúlik
- válasz
- fogékony
- eredményez
- visszatérés
- Kritika
- jobb
- szigorú
- futás
- futás
- Rozsda
- s
- Biztonság
- Mondott
- azt mondják
- azt mondja,
- biztonság
- biztonság
- küld
- idősebb
- küldött
- készlet
- Héj
- váltás
- eltolódott
- mutatott
- jelentős
- So
- szoftver
- különleges
- standard
- statikus
- léptekkel
- beküldése
- beküldő
- ilyen
- Támogatja
- rendszer
- Systems
- Vesz
- Technológia
- Tesztelés
- hogy
- A
- azok
- akkor
- Ott.
- Ezek
- ők
- ezt
- alapos
- azok
- fenyegetés
- Keresztül
- nak nek
- szerszámok
- vágány
- jellemzően
- Végül
- aláhúzás
- sajnálatos módon
- -ig
- Frissítések
- sürgeti
- használ
- használati eset
- használt
- segítségével
- érvényesítés
- nagyon
- sérülékenységek
- sebezhetőség
- volt
- Út..
- JÓL
- amikor
- ami
- míg
- lesz
- ablakok
- val vel
- dolgozó
- Munkacsoport
- lenne
- év
- te
- A te
- zephyrnet