Vigil@nce : Noyau Linux, déni de service via KVM et BIOS 80
mai 2009 par Vigil@nce
Un attaquant dans un environnement KVM peut écrire sur le port
0x80 du BIOS afin de stopper le système.
Gravité : 1/4
Conséquences : déni de service de la machine
Provenance : shell utilisateur
Moyen d’attaque : aucun démonstrateur, aucune attaque
Compétence de l’attaquant : expert (4/4)
Confiance : confirmé par l’éditeur (5/5)
Diffusion de la configuration vulnérable : moyenne (2/3)
Date création : 19/05/2009
PRODUITS CONCERNÉS
– Linux noyau
DESCRIPTION DE LA VULNÉRABILITÉ
Le BIOS est accessible via des ports d’entrée/sortie :
– 0x20, 21, A0, A1 : PIC (Programmable Interrupt Controller) pour
paramétrer les IRQ
– 0x60, 64 : données et contrôle du clavier
– 0x80 : dernier code POST (Power-On Self Test), qui indique le
code d’erreur de la dernière étape :
+ 0x28 : testing memory
+ 0x95 : keyboard self test
+ etc.
+ 0x00 : ready to boot
- etc.
Le port 0x80 est normalement uniquement utilisé en lecture.
Cependant, certains ordinateurs sont bogués, et se stoppent s’ils
reçoivent une écriture sur le port 0x80.
Le noyau Linux standard n’autorise pas un utilisateur à écrire sur
le port 0x80. Cependant, le KVM (Kernel Virtual Machine)
l’autorise.
Un attaquant situé dans un KVM invité peut ainsi stopper le
système hôte.
CARACTÉRISTIQUES
Références : BID-35000, VIGILANCE-VUL-8721
http://vigilance.fr/vulnerabilite/Noyau-Linux-deni-de-service-via-KVM-et-BIOS-80-8721