CVE-2014-0196: Linux kernel <= v3.15-rc4: raw mode PTY local echo race condition

 ( trey | 2014. május 13., kedd - 8:35 )

$ gcc cve-2014-0196-md.c -lutil -lpthread
$ ./a.out
[+] Resolving symbols
[+] Resolved commit_creds: 0xffffffff81056694
[+] Resolved prepare_kernel_cred: 0xffffffff810568a7
[+] Doing once-off allocations
[+] Attempting to overflow into a tty_struct...............
[+] Got it :)
# id
uid=0(root) gid=0(root) groups=0(root)

PoC a CVE-2014-0196-hoz itt.

Úgy tűnik, hogy a Ksplice május 7-én letöltötte a megfelelő patchet és menet közben javította a kernelt a támogatott rendszereken:

2014-05-07 16:05:21,586 DEBUG    Downloading [3c3as1pu] CVE-2014-0196: Pseudo TTY device write 
buffer handling race.
2014-05-07 16:05:23,100 DEBUG    Unpacking [3c3as1pu] CVE-2014-0196: Pseudo TTY device write buffer 
handling race.
2014-05-07 16:07:25,896 DEBUG    Already downloaded [3c3as1pu] CVE-2014-0196: Pseudo TTY device write buffer
handling race., skipping
2014-05-07 16:07:27,952 INFO     Install [3c3as1pu] CVE-2014-0196: Pseudo TTY device write buffer
handling race.
2014-05-07 16:07:28,466 INFO     Installing [3c3as1pu] CVE-2014-0196: Pseudo TTY device write buffer
handling race.
2014-05-07 16:07:28,466 DEBUG    dbus: Working on update: INSTALL 2 3 3c3as1pu CVE-2014-0196: Pseudo TTY
device write buffer handling race.
2014-05-07 16:07:28,763 DEBUG    Install [3c3as1pu] CVE-2014-0196: Pseudo TTY device write buffer 
handling race.

Ksplice a CVE-2014-0196 ellen

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

a forráskódban azt írja, hogy "For kernels >= v3.14-rc1"

Jó, tehát akkor jól értem, hogy csak a 3.14-rc1 és 3.15-rc4 közötti kernelek érintettek?

Nem: The vulnerability should be exploitable all the way from v2.6.31-rc3

A fenti exploit nekem nem működik egyik tesztelt gépen sem. (3.4.x, 3.12.x)

Hogyaszondja:

 * Caveat: The vulnerability should be exploitable all the way from
 * v2.6.31-rc3, however relevant changes to the TTY subsystem were made in
 * commit acc0f67f307f52f7aec1cffdc40a786c15dd21d9 ("tty: Halve flip buffer
 * GFP_ATOMIC memory consumption") that make exploitation simpler, which this
 * exploit relies on.

de azt nem irja hogy ez a commit mikori... ezt mondjuk nem lenne rossz tudni.

Grsecurityvel patchelt kernelek (3.2.x) eseten: no crash, no root access.

Trey, azt aruld mar el, hogy ez milyen disztribucion, milyen kernellel futott le neked. Koszi.

debian linuxon etchen es wheezy-n is fut.

Kernel verziok?

32 v 64bit? mennyi ido alatt akasztotta ki?

Sehol sem volt olyan állítás, hogy nekem lefutott. Az exploit-ból idéztem. Én nem próbáltam ki.

--
trey @ gépház

Ja, jo. Azert a copy&paste-elt command+output kommentek nelkul kicsit megteveszto volt. ;)

Ha belenéztél volna a linkekbe, mindjárt egyértelmű lett volna.

--
trey @ gépház

Beleneztem. De kell ezt folytatni? :)

Minek kellett elkezdeni? :)

Gentoon sem fut.

--
http://pyftpadmin.earthquake.hu

Ott nem egyertelmu a kernelverzio. Egyertelmusited?
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.

Szerintem nem fér hozzá a kernel szimbólumokhoz, azért esik hasra:
[+] Resolving symbols
[+] Resolved commit_creds: (nil)
[+] Resolved prepare_kernel_cred: (nil)

grep commit_creds /proc/kallsyms
00000000 t __commit_creds
00000000 T commit_creds

grep prepare_kernel_cred /proc/kallsyms
00000000 T prepare_kernel_cred

hardened-sources-3.11.7-r1

Nekem hozzafer...
Btw, az ilyenek miert nem keresgelnek System.map -et? Sok rendszeren ott figyel a /boot alatt...
--
Ki oda vagyik, hol szall a galamb, elszalasztja a kincset itt alant.

Szerintem a 'hardened' a kulcsszó, ami miatt nem fér hozzá nálam... :)

Ha valakinek nem fordul le, gondolom az ra tud keresni binarisra a googlen :)

ArchLinux 3.14.3-en total lefagy.

Slackware current 3.14.3, a gép szintén megfagyott.

--
A főnököm mindig megtartja amit ígér, ha pénzt ígér azt is!

Már javítva, frissíts!

Régen nem arról volt szó, hogy a Linux kernel számozása a Pi-hez fog konvergálni? Akkor mi ez a 3.15? ;)

Soha senki nem mondott ilyet. Ellenkezőjét igen.

Te a TeX-re gondolsz, a jelenlegi verzioja: v3.14159265

http://en.wikipedia.org/wiki/TeX