Megszületett a Linux kernel Rust kódjának első CVE-je

Címkék

Greg Kroah-Hartman arról írt, hogy a Rust önmagában nem egy csodaszer, ami megoldja az összes biztonsági problémát, de határozottan sokat segít és ha szélesebb körben lesz jelen a Linux kernel kódbázisában, akkor a kernelben előforduló sebezhetőségek jelentős részét eleve el lehet kerülni. Ugyanakkor most kiadták az első Rustos kernel-CVE-t is, ami csak összeomlást okoz, nem pedig memória-korrupcióból kiinduló, kihasználható sérülékenységet, ami egészében véve sokkal jobb dolog. Közben ugyanazon a napon rengeteg (159 darab) CVE érkezett a kernel C-s részéhez, ezért a tanulság változatlan: frissíts újabb kernelre.

A Linux kernel Rust kódjának első CVE-je megszületett

Bejegyzés itt.

Hozzászólások

bzt rage in ... 3 ... 2 ... 1 ...

trey @ gépház

rage
A forrásmegjelöléssel alátámasztott szakmai érvelés az szerinted "rage"? Milyen jó, hogy ilyen szakértő kezében van a HUP sorsa! (szark.)
Greg Kroah-Hartman arról írt, hogy a Rust önmagában nem egy csodaszer, ami megoldja az összes biztonsági problémát,
Ne csináljuk már úgy, mintha egész idáig nem pont Greg állította volna ez a hülyeséget a Rust-ról! Egy bocsánatkérés minimum elvárható lenne tőle most, hogy bebizonyosodott, nem volt igaza.
Ő írta: That's why I'm wanting to see Rust get into the kernel, these types of issues just go away, hát, el sem tűntek, de legalább lett mellettük további új hibalehetőség, mint látszik.
Közben ugyanazon a napon rengeteg (159 darab) CVE érkezett a kernel C-s részéhez
Közben egész évben mindössze 4 darab CVE érkezett a FreeBSD kernel C-s részéhez. Bizonyára ők másik C nyelvet használnak (szark.)

És mi lenne az?

  1. bzt rage?
  2. C vs. Rust kód mennyisége a Linux kernelben? Ill. a CVE-k aránya, hogyan idomul ehhez?
  3. Linux kernel vagy FreeBSD kernel mérete? És az ezekhez napvilágot látott CVE-k aránya?
  4. Ki használ FreeBSD-t és miért nem Linux-ot?

Ilyen hanyagul idefirkantott válaszokból elég nehéz kihámozni, hogy mire is gondolt a válasz írója!

Az én értelmezésemben arra tudok gondolni, hogy a provokatív posztordra adott bzt választ próbálja kikezdeni egy elég gyenge kiragadott megállapítással!

A kutya se használ FreeBSD-t? Ezért ott nem tartják fontosnak a bizronsági hibákat?

Make it as simple as possible, but not simpler. - A. Einstein

Az lenne a kontextus, hogy a FreeBSD felhasználása nem létezik a Linux felhasználása mellett. Akkor se, ha ki tudtál izzadni nagy nehezen 3 cégnevet. 

Egyébként a "Netflix FreeBSD-t használ" legenda kibontva kb. így néz ki: a Netflix Linux szervereket használ, kivéve az Open Connect-nek nevezett CDN-jén, ami valóban FreeBSD. 

Tehát a Netflix FreeBSD-t használ, egy FreeBSD-s körökben rendkívül népszerű állítás, csak kibontva nem annyira igaz. FreeBSD-t is használ. 

trey @ gépház

Az hogy a "kutya sem használja" és a "nem létezik" még mindig erős túlzás. Akkor is ha a Linux felhasználása mellet elenyésző is.

Annyira nem kellett izzadnom rajta: https://freebsdfoundation.org/freebsd/ És van ott még több is!

Nyilván büszkén használják a Netflix nevet, mert reklám szempontból nagyon jól néz ki!

De felesleges pörögni ezeken. Te bzt-t akartad triggerelni, a másik meg valamivel ellentmondani a válaszára.

Make it as simple as possible, but not simpler. - A. Einstein

Kauzalitás vs korreláció. Az hogy hány darab CVE érkezik egy rendszerhez egyáltalán nem mutatja azt hogy mennyire biztonságos a kódja. Ha senki nem használja (lásd FreeBSD) olyan helyen ahol valóban számít akkor simán lehet hogy csak azért van ennyi CVE mert senki nem fog erre időt fecsérelni, ellentétben a Linuxszal amit több milliárd eszközön használnak.

Halló, arról hozz adatot, hogy a FreeBSD kódbázisát

  • hányszor vetették alá független auditnak
  • hány ember és szervezet túrja a kódját
  • a mögötte álló szervezet mennyit költ erre

A több, amit írtál csak süket duma. 

PS: FreeBSD állandó Netflixre hivatkozása meg rettentő unalmas már. 

trey @ gépház

Halló! Dehogy hozok!

De ti nyugodtan reszeljétek tovább a fingot. Az meg továbbra sem igaz, hogy a "kutya sem használja" ill. "nem létezik". Csak a 3 megnevezett "felhasználónál" is több millióra/száz millióra rúghat, és vannak ott mások is amiket én nem ismerek!

Bizonyára megvan az oka annak, hogy nem a Linux-ot választották!

Érdekes lenne összehasonlítani mondjuk a Linux és a FreeBSD kernel kódminőségét. Talán az közelebb vinne a megoldáshoz, mint azt számolni, hogy hányan használják.

Nekem erre nincsenek meg az eszközeim és az ismereteim. Arra tudok hgyatkozni amit láttam/olvastam valaha.

A másik részről, józan paraszti ésszel, laikusként én arra következtetnék, hogy a FreeBSD kódminősége jobb. Kevesebb fejlesztő önti bele a "szemetet", mint pl. a Linux esetében. És láttuk, hogy tulajdonképpen már-már kontrollálatlanul.

Make it as simple as possible, but not simpler. - A. Einstein

Bizonyára megvan az oka annak, hogy nem a Linux-ot választották!

Persze, network stack előnyei, majd az "enterprise knowledge gravitation". Minél többet költesz valamire és minél több tapasztalat alakul ki valamivel annál több energia arról elváltani.  Emellett könnyebben lehet befolyást szerezni a fejlesztésre. 
De egyben biztos lehetsz. Nem a kódminőség volt az ok. Még ha létezne ilyen előny akkor sem. 
 

megnevezett "felhasználónál" is több millióra/száz millióra rúghat

Picit elgaloppoztál. Akkor mostmár végfelhasználókat kezdünk számolni? 

Senkinek semmi baja a FreeBSD-vel, csak épp szignifikánsan kisebb a jelentősége. Ezen az sem fog változtatni, ha lemérjük grammra, hogy sokkal jobb a kódminősége. Ez van.

Nem mondtam, hogy a kódminőség az ok.

Nem galoppoztam sehová. Pontatlan volt a megfogalmazás. A felhasználok alatt nem a végfelhasználókat értettem, hanem a cégeket akik a FreeBSD-t használják a termékeikben, szolgáltatásaikhoz.

Make it as simple as possible, but not simpler. - A. Einstein

Csak ami hirtelen eszembe jutott, mint független kódauditorok és projektek! Javaslom az elsőt alaposan szemügyre venni! ^ 

"In 2006, the Coverity Scan service was initiated with the U.S. Department of Homeland Security as the largest public-private sector research project in the world, focused on open source software quality and security. Black Duck now manages the project, providing its development testing technology as a free service to the open source community to help them build quality and security into their software development process. Register your open source project for the Coverity Scan service, and follow us on Twitter to get the latest updates."

Project NameLinux
Lines of code analyzed23,694,413
On Coverity Scan sinceFeb 24, 2006
Last build analyzed22 days ago

Ez a gagyi: 

Mondjuk tőled azt is el tudom fogadni, hogy kurva sok vs. kutya se.

Attól, aki 25 éve ír napi szinten erről a témáról? Bölcs dolog, br0, hogy elfogadod! Keress a HUP archívumban. Számtalan referenciát találsz még! 

trey @ gépház

Látod? Konrét számokat kértél, de linux esetén sincsenek ilyen számok. Linket lehet dobálni róluk. Tehát ez a kurva sok kijelentésre elég.

Ez annyiban sunyi, hogy te konkrét számokra kérdeztél rá, ami egy csapda. Bármilyen linket és bármennyit hozott volna bárki, fekve röhögős smileyt kapott volna. Mond hogy nem így lenne.

Fekve röhögni akartál, mert semmit nem fogadtál volna el komoly igazolásnak a kérdéseidre. Mikor meg visszakérdezek dobáltok linkeket, meg mekkora láma vagyok. Legyen.

ROTFL, milyen konkrét számok nincsenek, te BSD-huszár? 

Az első oldal eleve konkrét számokról szól:

https://scan.coverity.com/projects/linux

Vedd már a fáradságot, nyisd meg! Konkrétan ott tartunk, hogy 6-8 (konkrét számok) kaptál, míg te egyet nem tudsz kiizzadni. 

trey @ gépház

A kérdéseid nem nagyon érdekelnek, hiszen semmi más céljuk nincs, mint az értelmetlen kötekedés. Akinek 1 darab agysejtje van, az nem áll bele abba a témába, hogy a FreeBSD (nem létező) kódauditot egy lapon említi a Linuxéval.

Azt azért még jegyezd fel, hogy sem bsd-ről, sem linux-ról nem mondtam idáig semmit.

Ebben egészen biztos voltam, hiszen ha a témáról beszélnél és nem rólam, már rég vesztettél volna. Ahogy így is, btw. 

trey @ gépház

kérdéseid nem nagyon érdekelnek, hiszen semmi más céljuk nincs, mint az értelmetlen kötekedés

Megérkeztünk. A "kérdéseim" szóról-szóra a te kérdéseid :)

a FreeBSD (nem létező) kódauditot

Fentebb egy fuzzerrel erősködtél több kommentben is. Biztos vagyok benne, hogy ilyenek futnak FreeBSD-re is, mert van NetBSD-re, de még Haiku-ra is...

Szerk.: nem fuzzer, statikus elemző...

A kedvenced: https://scan.coverity.com/projects/freebsd

Fun: https://scan.coverity.com/projects/haiku-32bit

Kemény linket hoztál az évtizedes témában való cikkírás retweetekból szerzett tapasztalataidnak hála. Legalább beismerted, hogy a kérdéseidnek

semmi más céljuk nincs, mint az értelmetlen kötekedés

Boldog Karácsonyt és kellemes ünnepeket kívánok!

Ebben van valami, de ez egyben tekinthető előnynek is. Ritkább rendszer, nem csesztetik, nincs teleaggatva az épp aktuális divathülyeségekkel, Wayland (tudom, elérhető, de nem tolják rá mindenkire agresszíven), Rust, systemd, stb.. Kinek mire van szüksége.

“Linux isn't an OS, it's a troubleshooting sim game.” (a YouTube commenter)

Ne csináljuk már úgy, mintha egész idáig nem pont Greg állította volna ez a hülyeséget a Rust-ról!

vs.

The majority of bugs ...
not that rust can catch all of these by far
these types of bugs just can't happen (or happen much much less)
Rust isn't a "silver bullet" that will solve all of our problems, but it sure will help in a huge number of places

és ezt se felejtsük el:

As someone who has seen almost EVERY kernel bugfix and security issue
for the past 15+ years (well hopefully all of them end up in the stable
trees, we do miss some at times when maintainers/developers forget to
mark them as bugfixes), and who sees EVERY kernel CVE issued, I think I
can speak on this topic.

frissíts kernelre.

Átolvashatnád legalább egyszer, mielőtt kiteszed az AI slop-ot.

Nem, én csak a képeket jöttem megnézni. :)

A kódsorok aránya ( C ~ 98%, Rust < 0,5%) szépen korrelál a CVE hibák arányával.

Ez olyan, mintha magyaráznád a bizonyítványt && nem hinnél egy prominens kernelfejlesztőnek, aki azt mondja, hogy "és ha szélesebb körben lesz jelen a Linux kernel kódbázisában, akkor a kernelben előforduló sebezhetőségek jelentős részét eleve el lehet kerülni".

trey @ gépház

Legyen minden úgy, ahogy régen vót!

Várható volt. Kicsit meglep, hogy ilyen hamar jött az első.
Szerintem Linus is somolyog.

Két dolog nem tetszik (azon kívül, amit a hupos blogomban a bejelentés kapcsán leírtam):

(1) Magán a patch-en sehol nincs feltüntetve a CVE azonosítója. Ez a Linuxnál bevett szokás ugyan, de attól még nem hasznos szokás.

(2) A bejelentésből:

the offending issue just causes a crash, not the ability to take advantage of the memory corruption

Ilyet egy prominens kerneles inkább ne írjon le szerintem, ha nincs formális bizonyítása rá. Gyakran az szokott történni, hogy kiművelt és motivált fejlesztők a tű fokán idővel átvezetnek egy teherautót. Tehát helyesen azt kellett volna írni:

*the offending issue just causes a crash, not yet the ability to take advantage of the memory corruption

"Ugyanakkor most kiadták az első Rustos kernel-CVE-t is, ami csak összeomlást okoz, nem pedig memória-korrupcióból kiinduló, kihasználható sérülékenységet, ami egészében véve sokkal jobb dolog."

Erről a mondatról valahogy Douglas Adams jutott az eszembe..

Azt össze tudná nekem valaki foglalni, hogy így a Rust miatt mennyivel nehezebb portolni a Linux kernelt a különböző platformokra?

Jelenleg nem követem: ami jelenleg Rush van a Linux kernelben azok új funkciók vagy meglévő funkciók Rush nyelven újraírva?

OFF

Már egy jó ideje nem volt kernel fagyásom, viszont pont a minap előjött egy. Egy olyan NVMe SSD-t dugtam be USB-NVMe átalakítón keresztül, amelyiken volt LVM. Aztán mielőtt kivettem, kézzel megpróbáltam leállítani a VG-okat, de valamit nyilván elrontottam. A következő USB eszköz bedugásakor úgy meghalt a kernel, hogy csak a CapsLock villogott. Lusta voltam reprodukálni, de saccra reprodukálható lenne.

A képen látható elmosott betűk a színhasználattal együtt olyan hatást keltenek, mintha egy fényképezőgéppel készült képernyőfotót mosott volna el valaki, hogy ne legyen pixeles.

:)