Linux 2.6 Kernel Capability LSM Module Local Privilege Elevation

Címkék

A nemrég kiadott 2.6.10-es Linux kernelben súlyos hibát találtak a biztonsági szakemberek. A hibát az a Xfocus.org-os (Venustech) flashsky jelentette, aki az új Windows exploitokat szállította a minap. Egyre jobban nyomulnak a kínaiak, heh?

Egy kis demo:Futtassuk a vim-et normál felhasználóként. mondjuk azt, hogy:

``:r /etc/shadow"

Eredmény: Permission denied.

Töltsük be a capability-t root-ként egy másik konzolon:

``modprobe capability''

Majd nézzük újra a vim-et: ``:r /etc/shadow''

Az eredmény: olvashatjuk, szerkeszthetjük, írhatjuk normál user-ként a /etc/shadow-ot, ami nem egészséges.

A hiba teljes leírása itt.



Természetesen a hiba ``csak'' a capability-t használókat érinti.

Hozzászólások

a hiba leírás alapján minden 2.6-os kernel érint a dolog, vagy rosszul látok így hajnalt tájt kvzás közben?

"Vulnerable: Linux kernel 2.6.* Linux kernel 2.5.72-lsm1

Unvulnerable: Linux kernel 2.4"

nem gyenge...

mondjuk a problemat nem flashsky talalta, csak o publikalta.

tudom, hogy lustasag nem utananezni, de ha nem nagy nyug, akkor irja meg valaki, hogy mit is csinal a "capability"... ki/kik hasznaljak azt?

frank

Az LKML-en a 2.6.10-re confirmaltak, hogy biztos mukodik. A tobbi egyelore nem bizonyitott. Ertsd igy.

Feladó: Lee Revell

Címzett: linux-kernel

Tárgy: local root exploit confirmed in 2.6.10: Linux 2.6 Kernel Capability LSM Module Local Privilege Elevation

> a hiba leírás alapján minden 2.6-os kernel érint a dolog, vagy rosszul
> látok így hajnalt tájt kvzás közben?
>
> "Vulnerable: Linux kernel 2.6.* Linux kernel 2.5.72-lsm1

Mindenesetre kipróbáltam, capabilities modul betöltve, :r /etc/shadow
E484: Can't open file /etc/shadow

Ubuntu, 2.6.8.1-4-k7

--
--- Friczy ---
'Death is not a bug, it's a feature'

> Természetesen a hiba ``csak'' a capability-t használókat érinti.

Sőt, azoknak is csak részhalmazát, akik adott módon használják a capabilityt. Az UHU dev ágas kernele is hibás, de a boot korai szakaszában betöltjük a capability modult, jóval azelőtt hogy bármi user processz elindulhatna, így a hiba nem kihasználható.

> Ha jól értem, akkor a hiba akkor jelentkezik, ha már belépett az user,
> amikor a modult berántod.
>
> Így sem megy?

Ere itt esély se nagyon van, mert a modul bootkor betöltődik. De
kipróbáltam: kitakarítottam a modult (meg a commoncap modult is), és
ismét végigjátszottam, már bejelentkezett userrel. Úgy sem jelentkezett
a hiba.

--
--- Friczy ---
'Death is not a bug, it's a feature'

Még tovább pontosítva: a _processznek_, amely majdan megpróbálja megnyitni a fájlt, már futnia kell a modul betöltésekor a hiba kihasználásához (ezért van vim és interaktív fájlmegnyitás a példában sima "vim /etc/shadow" vagy "cat /etc/shadow" helyett).

> Még tovább pontosítva: a _processznek_, amely majdan megpróbálja megnyitni
> a fájlt, már futnia kell a modul betöltésekor a hiba kihasználásához (ezért
> van vim és interaktív fájlmegnyitás a példában sima "vim /etc/shadow" vagy
> "cat /etc/shadow" helyett).

Emiatt kipróbáltam azt is, hogy vim betölt, modul unload/load, :r
/etc/shadow, és ugyanúgy nem sikerült a nyitás.

--
--- Friczy ---
'Death is not a bug, it's a feature'

Egy kérdés: Miben nyújt ez a capability többet? Miben jobb, mint a GRSecurity, PaX? Ad e valami plusszot azokon felül, amiket már eddig is nagyon jól lehetetett a Kernelhez adni?

Ez a capability stuff az, ami eddig (LSM merge elott) a kernelben volt. Ez kezeli azt, amihez libcap2 az userspace lib (CAP_* dolgok).

Szoval capability nelkul ezek nem hasznalhatoak, ergo az ezt kihasznalo programok enelkul nem is mennek (ilyen pl a vsftpd). A magam reszerol en az ilyeneket kernelben tarolom, beforgatva, nem modulkent, mert ugyis szukseg lesz ra =)

Szumma szummarum: POSIX capabilityket ad, azzal kompatibilis, elobb volt mint grsec vagy a tobbi. Amely programok POSIX capabilityket hasznalnak, azoknak ez kell.