Earl Chew egy versenyhelyzetből adódó NULL pointer dereferencia sebezhetőséget fedezett fel a Linux kernel csővezeték-megvalósításában. A probléma akkor jelentkezik, mikor két folyamat egyszerre próbál elengedni és megnyitni egy pipe-ot: ugyan a kölcsönös hozzáférést mutex zárja ki, az elengedésnek sikerülhet mellbedobással kinulláznia a védett struktúra egyik pointerét, így a megnyitás ezen a NULL-ra mapelt pointeren kezd el dolgozni.
A hiba helyi root jogosultság szerzésére használható fel, PoC exploit megjelenése várható még ma. A nagyobb disztribútorok közül a Red Hat javítást adott ki, a Debian a mmap_min_address változó értékének 0-ról történő megemelését javasolja, míg az Ubuntuban ez már alapértelmezetten így van.
A problémát a 2.6.32 RC6-ban javították, az érintett verziókat a vonatkozó BID-ben találjátok meg felsorolva (jó közelítéssel az összes 2.6.*). Részletesebb leírás olvasható xorl-nél, valamint egy hibát triggerelő példakód is megtekinthető az eredeti jelentésben.
dnet 2009.11.04. 15:56:36
65536
pedig még bubuntura sem telik :/
buherator · http://buhera.blog.hu 2009.11.04. 16:00:21
eax_ 2009.11.04. 16:01:29
buherator · http://buhera.blog.hu 2009.11.04. 16:05:59
eax_ 2009.11.04. 16:34:19
dnet 2009.11.04. 22:18:45
synapse · http://www.synsecblog.com 2009.11.05. 14:06:25
$ dmesg | tail -n 1
[ 198.566300] hellohellohellohellohellohello
Itt a diff ha valakit erdekel:
pastebin.com/m237b46f7
Igen, tudom, primitiv megoldas de csak ennyire volt idom. PoC-nak megfelelt.
synapse