Linux kernel (>= 2.6.13 && < 2.6.17.4) local root exploit

Címkék

Érdemes kernelt cserélni vagy fokozottabban felügyelni gépüket azoknak, akik eddig még nem frissítettek a 2.6.17.4 kernelre, vagy akiknek a disztribútoruk nem szállított olyan kernelt, amely már immunis a BID 18874 / CVE-2006-2451 hibajegyekben leírt sebezhetőséggel szemben.

A milw0rm-on jelent meg a fenti hibára egy local root exploit:

Igaz, nekem egy 2.6.17-rc5-öt futtató gépen nem működött (vagy rosszul csináltam valamit :-), de nem árt az óvatosság:

trey@foo:/tmp$ ./a.out
Linux Kernel 2.6.x PRCTL Core Dump Handling - Local r00t
By: dreyer & RoMaNSoFt
[ 10.Jul.2006 ]

[*] Creating Cron entry
[*] Sleeping for aprox. one minute (** please wait **)
[*] Running shell (remember to remove /tmp/sh when finished) ...
sh: /tmp/sh: No such file or directory
trey@foo:/tmp$

Hozzászólások

nalam is ugyenez

Linux blackhole 2.6.17-fw2crnl #1 PREEMPT Tue Jul 11 23:08:16 CEST 2006 i686 pentium4 i386 GNU/Linux

elysium:~/src$ uname -a
Linux elysium 2.6.16.20 #2 Thu Jun 22 23:09:23 CEST 2006 i686 GNU/Linux
elysium:~/src$ ./a.out
Linux Kernel 2.6.x PRCTL Core Dump Handling - Local r00t
By: dreyer & RoMaNSoFt
[ 10.Jul.2006 ]

[*] Creating Cron entry
[*] Sleeping for aprox. one minute (** please wait **)
[*] Running shell (remember to remove /tmp/sh when finished) ...
\h:\w$ ls -l /tmp/sh
-rwsr-xr-x 1 root root 85372 2006-07-12 14:44 /tmp/sh
\h:\w$ touch /asdf
\h:\w$ ls -l /asdf
-rw-r----- 1 root szeder 0 2006-07-12 14:44 /asdf
\h:\w$ id
uid=1000(szeder) gid=1000(szeder) euid=0(root) groups=24(cdrom),29(audio),44(video),1000(szeder),1005(cdrecorder)

Ugyanez.
Linux bokonon 2.6.15-suspend2-r4 #26 PREEMPT Sun May 14 16:47:25 CEST 2006 i686 Intel(R) Pentium(R) M processor 1.86GHz GNU/Linux
__________________________________________
Wenn ist das Nunstück git und Slotermeyer?
Ja! ... Beiherhund das Oder die Flipperwaldt gersput.

webadmin@osiris:/var/www$ ./a.out
Linux Kernel 2.6.x PRCTL Core Dump Handling - Local r00t
By: dreyer & RoMaNSoFt
[ 10.Jul.2006 ]

[*] Creating Cron entry
[*] Sleeping for aprox. one minute (** please wait **)
[*] Running shell (remember to remove /tmp/sh when finished) ...
sh-2.05b# whoami
root
sh-2.05b#

kernel: 2.6.14.6-grsec

2.6.16 debian sidbol sebezheto
Vanilla 2.6.14.6 is.

ebben a formaban nem biztos, hogy mukodik, de kis javitas utan igen,
2.6.14.6-grsec-en biztosan

elvileg letrehoz egy core file-t /etc/cron.d ala, amiben cron altal
ertelmezett cron bejegyzes van, ami root-kent fut le.

a cron bejegyzes nem biztos, hogy tudja masolni /bin/sh-t
a /tmp-be (pl mert symlink), vagy pl suid-os bash eldobja root-ot,
vagy /tmp noexec-re van mountolva, ezek okozhatnak a nem mukodest.

expolitra workaround, ha az exploitot futtato user nem tud chdir-elni
a /etc/cron.d-be, akkor nem tudja letrehozni core-t

thanx for akos

Ubuntu Dapper Drake:
(linux-image-2.6.15-25-686)

Linux csabkapc 2.6.15-25-686 #1 SMP PREEMPT Wed Jun 14 11:34:19 UTC 2006 i686 GNU/Linux

$ ./a.out
Linux Kernel 2.6.x PRCTL Core Dump Handling - Local r00t
By: dreyer & RoMaNSoFt
[ 10.Jul.2006 ]

[*] Creating Cron entry
[*] Sleeping for aprox. one minute (** please wait **)
[*] Running shell (remember to remove /tmp/sh when finished) ...
sh-3.1#
uid=1000(csabka) gid=1000(csabka) euid=0(root)

ZenWalk 2.6.16.6 nem mukodik.

--
A nyúl egy igazi jellem. Ott ül a fűben, de akkor sem szívja!

Az első nem ment, de ez már igen :) :

[Duri@localhost sajatprogik]$ ./a.out

prctl() suidsafe exploit

(C) Julien TINNES

[+] Installed signal handler
[+] We are suidsafe dumpable!
[+] Malicious string forged
[+] Segfaulting child
[+] Waiting for exploit to succeed (~36 seconds)
[+] getting root shell
sh-3.1# whoami
root
sh-3.1# uname -a
Linux localhost.localdomain 2.6.15-1.2054_FC5 #1 Tue Mar 14 15:48:33 EST 2006 i686 i686 i386 GNU/Linux
sh-3.1#

linux 2.4.29, 2.6.4, 2.6.7, NetBSD 3.0 immunis.
(És nem csak azért, mert a /tmp noexec-kel lett mountolva, illetőleg mert a / full readonly, illetőleg mert a linuxos esetekben a /etc-n rekurzive még az immutable flag is fenn van :)...)

érzésem szerint ez csak azokat a 2.6-os kerneleket érinti amelyekbe bele van forgatva a Core Dump (a kexec - hibajavitó subrutinja), ha ez nincs a kernelbe forgatva akkor szerintem nem lehet semmi baj.
__________________________________________________________________

Intel(R) Pentium(R) 4HT

Eredmény ugyanaz (nulla), mint a hírben, 2.6.16-gentoo-r7 kernellel.

Esélytelen. Egyrészt ugyanaz, mint a $subj, másrészt meg arra is igaz, hogy amíg a rendszerem annyira letolt gatyával áll, hogy ezt megehetné, addig telepítő-cd-n kívül mást nem is lát...
És mivel amúgy nem szeretem a digókat (bár a macskákat sem :)...), nem igazán vagyok letörve a kudarcukon, no pláne, hogy a nyamvadt szótáras ssh próbálkozásaik miatt már az x. ip-tartományukat hajtom el a véreres /dev/null-ba. Nyamvadt levéltetű egy banda, én meg maradok szpemtelen :)...

Nalam mukodott az elso ketto :( (Harmadikat nem probaltam.)
Aztan lecsereltem a kernelt es megint mukodott...Aszittem, szivinfarktust kapok...De rajottem, hogy bent felejtettem a /tmp-ben a cuccot :) Letoroltem es vegr enm mukodott...
Huh, nem volt jo erzes latni, hogy egy egyszeru programocskatol root leszek...