Hardware Upgrade Forum

Hardware Upgrade Forum (https://www.hwupgrade.it/forum/index.php)
-   Linux news (https://www.hwupgrade.it/forum/forumdisplay.php?f=99)
-   -   [CRITICO] Scoperta vulnerabilità locale in Linux 2.6 (https://www.hwupgrade.it/forum/showthread.php?t=1675778)


homer87 11-02-2008 10:17

[CRITICO] Scoperta vulnerabilità locale in Linux 2.6
 
Scusate, il tag ma come news non è da prendere sottogamba.

Nei kernel distribuiti da Debian ed Ubuntu è stata individuata e confermata una vulnerabilità che garantisce ad un utente locale la possibilità di diventare root, eseguendo semplicemente questo exploit; la falla di sicurezza è stata individuata nell’errato comportamento della system call vmsplice() e, sebbene al momento il bug sia stato confermato solo in Debian ed Ubuntu, è probabile che esso sia presente nella gran parte delle distribuzioni.
Sul bug tracker di Debian è già disponibile un workaround che rende inutilizzabile l’exploit.

workaround:
http://www.ping.uio.no/~mortehu/disa...-exploitable.c

fonte: ossblog.it

Io ho Sid, e l'exploit era possibile eseguirlo.
Ho applicato il workaround ed è tornato tutto normale.

arara 11-02-2008 11:00

Per adesso si sa che funziona su Debian e Ubuntu, non è detto che anche tutte le altre siano vulnerabili.

Su Debian l'ho provato e funziona:
$ ./a.out
———————————–
Linux vmsplice Local Root Exploit
By qaaz
———————————–
[+] mmap: 0×0 .. 0×1000
[+] page: 0×0
[+] page: 0×20
[+] mmap: 0×4000 .. 0×5000
[+] page: 0×4000
[+] page: 0×4020
[+] mmap: 0×1000 .. 0×2000
[+] page: 0×1000
[+] mmap: 0xb7e38000 .. 0xb7e6a000
[+] root
#

Su Fedora8 invece no:
$ ./a.out
———————————–
Linux vmsplice Local Root Exploit
By qaaz
———————————–
[+] mmap: 0×0 .. 0×1000
[+] page: 0×0
[+] page: 0×20
[+] mmap: 0×4000 .. 0×5000
[+] page: 0×4000
[+] page: 0×4020
[+] mmap: 0×1000 .. 0×2000
[+] page: 0×1000
[+] mmap: 0xb7fa5000 .. 0xb7fd7000
[-] wtf
$

eclissi83 11-02-2008 11:44

la soluzione e' ricompilare:
http://kernel.org/pub/linux/kernel/v...geLog-2.6.24.2

il codice postato prima pare (non sono un coder, di c capisco poco) che corrompa le pagine di memoria...

ah, ovviamente sto bug ha gia' fatto bei danni :P

ciao

Gica78R 11-02-2008 15:25

Quote:

Originariamente inviato da arara
Su Fedora8 invece no:


Disabilitando SELinux, anche Fedora è vulnerabile:

Codice:

[gianluca@dyane6 ~]$ uname -r
2.6.23.14-115.fc8
[gianluca@dyane6 ~]$ ./bug-linux
-----------------------------------
 Linux vmsplice Local Root Exploit
 By qaaz
-----------------------------------
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7fae000 .. 0xb7fe0000
[+] root
[root@dyane6 ~]#

:(

eclissi83 11-02-2008 16:41

Quote:

Originariamente inviato da Gica78R (Messaggio 21031422)
Disabilitando SELinux, anche Fedora è vulnerabile:

beh era comprensibile dai... :D

Gica78R 11-02-2008 16:48

Ho appena aggiornato Debian Etch, che ora non è più vulnerabile :)
Più veloci della luce :cool:

homer87 12-02-2008 09:26

Nemmeno sid:

-----------------------------------
Linux vmsplice Local Root Exploit
By qaaz
-----------------------------------
[+] mmap: 0x100000000000 .. 0x100000001000
[+] page: 0x100000000000
[+] page: 0x100000000038
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4038
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0x2b0fcf23a000 .. 0x2b0fcf26c000
Killed

manowar84 12-02-2008 12:25

2.6.23.1 su arch:

Quote:

[paolo@Arch-Linux Downloads]$ ./disable-vmsplice-if-exploitable.c
bash: ./disable-vmsplice-if-exploitable.c: Permission denied
[paolo@Arch-Linux Downloads]$
non sono vulnerabile quindi?

arara 12-02-2008 12:30

Quote:

Originariamente inviato da manowar84 (Messaggio 21045306)
2.6.23.1 su arch:

non sono vulnerabile quindi?

eh no... magari...
Devi fare cosi: apri questa pagina http://www.milw0rm.com/exploits/5092 e salva il contenuto nel file exploit.c, poi esegui da utente normale:
gcc exploit.c -o exploit && ./exploit

se sei vulnerabile ti ritrovi un una shell di root!:eek:

manowar84 12-02-2008 12:37

arg ieri ho aggiornato a .24 quindi non sono vulnerabile, lo volevo provare doh!

[paolo@Arch-Linux ~]$ gcc exploit.c -o exploit && ./exploit
exploit.c:289:28: warning: no newline at end of file
-----------------------------------
Linux vmsplice Local Root Exploit
By qaaz
-----------------------------------
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7e24000 .. 0xb7e56000
[-] vmsplice: Bad address
[paolo@Arch-Linux ~]$


vabbè cmq ottimo, lo provo al laboratorio all'università che c'è la sarge :D

edit: no asp, io ho 24.1 quindi dovrei essere vulnerabile! e allora arch powaaa!

arara 12-02-2008 12:43

Quote:

Originariamente inviato da manowar84 (Messaggio 21045490)
vabbè cmq ottimo, lo provo al laboratorio all'università che c'è la sarge :D

va che ti sgamano subito :D

Quote:

Originariamente inviato da manowar84 (Messaggio 21045490)
edit: no asp, io ho 24.1 quindi dovrei essere vulnerabile! e allora arch powaaa!

http://www.securityfocus.com/bid/27704/info

Anche il 2.6.24.1 non è vulnerabile, sara per quello:

Not Vulnerable: Linux kernel 2.6.24.1

manowar84 12-02-2008 12:44

Quote:

Originariamente inviato da arara (Messaggio 21045616)
va che ti sgamano subito :D


http://www.securityfocus.com/bid/27704/info

Anche il 2.6.24.1 non è vulnerabile, sara per quello:

Not Vulnerable: Linux kernel 2.6.24.1

aho ma mi smonti sempre ahuahuahuahu!!! :asd:

ok grazie per la info :D

red.hell 12-02-2008 13:01

Codice:

rosso@localhost ~ $ gcc exploit.c -o exploit && ./exploit
exploit.c:289:28: warning: no newline at end of file
-----------------------------------
 Linux vmsplice Local Root Exploit
 By qaaz
-----------------------------------
[-] !@#$
rosso@localhost ~ $ uname -a
Linux localhost 2.6.22-sabayon #2 SMP Sun Oct 7 14:20:14 UTC 2007 i686 Unknown CPU Typ AuthenticAMD GNU/Linux
rosso@localhost ~ $

pare che sulla Sabayon 3.4f il problema non ci sia, anche se non capisco perchè si pianta subito...

arara 12-02-2008 14:21

Quote:

Originariamente inviato da red.hell (Messaggio 21045962)
Codice:

rosso@localhost ~ $ gcc exploit.c -o exploit && ./exploit
exploit.c:289:28: warning: no newline at end of file
-----------------------------------
 Linux vmsplice Local Root Exploit
 By qaaz
-----------------------------------
[-] !@#$
rosso@localhost ~ $ uname -a
Linux localhost 2.6.22-sabayon #2 SMP Sun Oct 7 14:20:14 UTC 2007 i686 Unknown CPU Typ AuthenticAMD GNU/Linux
rosso@localhost ~ $

pare che sulla Sabayon 3.4f il problema non ci sia, anche se non capisco perchè si pianta subito...

E qua che si ferma, quasi all'inizio:

if (!uid || !gid)
die("!@#$", 0);

Se uno dei due tra uid o gid è 0, cioe root, allora esce.
E strano perche vedo che l'hai eseguito con un utente normale, prova a guardare col comando id su che gruppi sei inserito.

red.hell 12-02-2008 16:22

Quote:

Originariamente inviato da arara (Messaggio 21047771)
E qua che si ferma, quasi all'inizio:

if (!uid || !gid)
die("!@#$", 0);

Se uno dei due tra uid o gid è 0, cioe root, allora esce.
E strano perche vedo che l'hai eseguito con un utente normale, prova a guardare col comando id su che gruppi sei inserito.

Codice:

rosso@localhost ~ $ id
uid=1000(rosso) gid=0(root) gruppi=0(root),6(disk),10(wheel),11(floppy),14(uucp),18(audio),19(cdrom),20(dialout),27(video),35(games),80(cdrw),85(usb),100(users),250(portage),409(clamav),410(messagebus),411(haldaemon),441(scanner),442(plugdev),443(qemu),1008(kvm),1009(vboxusers)
rosso@localhost ~ $

sono in root... e si che nell'installare saba mi ero messo tra gli utenti standard e i comandi che vanno dati da root (ifconfig, modprobe solo per citarne un paio) non li eseguo (command not found)

EDIT: questo invece con fedora 8 64bit sul portatile SElinux disattivato (in quanto non ho ben capito a cosa serva... :stordita:)
Codice:

bash-3.2$ gcc exploit.c -o exploit && ./exploit
exploit.c:290:28: warning: no newline at end of file
-----------------------------------
 Linux vmsplice Local Root Exploit
 By qaaz
-----------------------------------
[+] mmap: 0x100000000000 .. 0x100000001000
[+] page: 0x100000000000
[+] page: 0x100000000038
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4038
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0x2aaaaaad9000 .. 0x2aaaaab0b000
[+] root
bash-3.2# uname -a
Linux portatilerosso 2.6.23.14-115.fc8 #1 SMP Mon Jan 21 14:22:56 EST 2008 x86_64 x86_64 x86_64 GNU/Linux
bash-3.2#


eclissi83 12-02-2008 17:04

Quote:

Originariamente inviato da red.hell (Messaggio 21050343)
EDIT: questo invece con fedora 8 64bit sul portatile SElinux disattivato (in quanto non ho ben capito a cosa serva... :stordita:)

credo che tu ora in parte l'abbia capito... :D

arara 12-02-2008 17:07

Quote:

Originariamente inviato da red.hell
sono in root... e si che nell'installare saba mi ero messo tra gli utenti standard e i comandi che vanno dati da root (ifconfig, modprobe solo per citarne un paio) non li eseguo (command not found)

E molto strano che ti abbia messo da solo in quel gruppo. Per provare l'exploit dovresti metterti un gid diverso, users dovrebbe andare bene, e forse è anche meglio.

anche per fedora comunque è uscito il nuovo kernel patchato.

gepeppe 12-02-2008 17:19

a me da questo output:

Codice:

-----------------------------------
 Linux vmsplice Local Root Exploit
 By qaaz
-----------------------------------
[+] mmap: 0x0 .. 0x1000
[+] page: 0x0
[+] page: 0x20
[+] mmap: 0x4000 .. 0x5000
[+] page: 0x4000
[+] page: 0x4020
[+] mmap: 0x1000 .. 0x2000
[+] page: 0x1000
[+] mmap: 0xb7dc6000 .. 0xb7df8000
[-] vmsplice: Bad address

cavolo conosco il C, ma di questo codice ci ho capito ben poco!! :muro:

darkbasic 12-02-2008 17:39

Ci credo, praticamente sono assembly e system call :D
Lungi dall'averci capito qualcosa è :p

R4iDei 12-02-2008 18:08

A me fa in seg fault O_o


Tutti gli orari sono GMT +1. Ora sono le: 05:10.

Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Hardware Upgrade S.r.l.