libvirt libxl/libxl_driver.c libxlDomainGetNumaParameters Invalid Free escalationi di privilegi

CVSS Punteggio meta temporaneoPrezzo attuale dell'exploit (≈)Punteggio di interesse CTI
8.9$0-$5k0.00

Riassuntoinformazioni

In libvirt è stata rilevato un punto critico di livello critico. Si considera coinvolta una funzione sconosciuta all'interno della libreria libxl/libxl_driver.c. Attraverso l'influenza di un input sconosciuto per mezzo di una vulerabilità di classe escalationi di privilegi. Questa vulnerabilità viene indicata come CVE-2013-6457. Inoltre, è presente un exploit disponibile. Si suggerisce di installare una patch per risolvere questa problematica.

Dettagliinformazioni

In libvirt (Virtualization Software) è stato trovato un punto critico di livello critico. É interessato la funzione libxlDomainGetNumaParameters nella libreria libxl/libxl_driver.c. Per causa della manipolazione di un input sconosciuto se causa una vulnerabilità di classe escalationi di privilegi. Gli effetti sono noti per riservatezza, integrità e disponibilità.

La vulnerabilità è stata pubblicata in data 20/12/2013 da Dario Faggioli con identificazione avoid crashing if calling `virsh numatune' on inactive domain con un posting (Mailing List) (confermato). L'advisory è scaricabile da redhat.com. Questa vulnerabilità è identificata come CVE-2013-6457. È difficilmente utillizzabile. L'attacco si effettua con la rete. Per l'uso basta una semplice autentificazione. I dettagli tecnici e un pubblico metodo di utilizzo sono conosciuti. La ragione di questa vulnerabilità è questa parte di codice:

# ./daemon/libvirtd -v
 *** Error in `/home/xen/libvirt.git/daemon/.libs/lt-libvirtd': munmap_chunk(): invalid pointer: 0x00007fdd42592666 ***
 ======= Backtrace: =========
 /lib64/libc.so.6(+0x7bbe7)[0x7fdd3f767be7]
 /lib64/libxenlight.so.4.3(libxl_bitmap_dispose+0xd)[0x7fdd2c88c045]
 /home/xen/libvirt.git/daemon/.libs/../../src/.libs/libvirt_driver_libxl.so(+0x12d26)[0x7fdd2caccd26]
 /home/xen/libvirt.git/src/.libs/libvirt.so.0(virDomainGetNumaParameters+0x15c)[0x7fdd4247898c]
 /home/xen/libvirt.git/daemon/.libs/lt-libvirtd(+0x1d9a2)[0x7fdd42ecc9a2]
 /home/xen/libvirt.git/src/.libs/libvirt.so.0(virNetServerProgramDispatch+0x3da)[0x7fdd424e9eaa]
 /home/xen/libvirt.git/src/.libs/libvirt.so.0(+0x1a6f38)[0x7fdd424e3f38]
 /home/xen/libvirt.git/src/.libs/libvirt.so.0(+0xa81e5)[0x7fdd423e51e5]
 /home/xen/libvirt.git/src/.libs/libvirt.so.0(+0xa783e)[0x7fdd423e483e]
 /lib64/libpthread.so.0(+0x7c53)[0x7fdd3febbc53]
 /lib64/libc.so.6(clone+0x6d)[0x7fdd3f7e1dbd]

È stato dichiarato come prova di concetto. È disponibile un plugin per lo scanner Nessus, numero ID 75266 (openSUSE Security Update : libvirt (openSUSE-SU-2014:0268-1)), che può aiutare a determinare l'esistenza della criticità nel sistema analizzato.

Applicando a patch è possibile eliminare il problema. Il bugfix è scaricabile da libvirt.org. Una possibile soluzione è stata pubblicata immediatamente dopo la pubblicazione della vulnerabilità. La vulnerabilità sarà affrontata con le seguenti righe di codice:

diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c
index 29aa6c7..d91744f 100644
--- a/src/libxl/libxl_driver.c
+++ b/src/libxl/libxl_driver.c
@@ -3958,6 +3958,8 @@ libxlDomainGetNumaParameters(virDomainPtr dom,
* the filtering on behalf of older clients that can't parse it. */
  flags &= ~VIR_TYPED_PARAM_STRING_OKAY;
 
+ libxl_bitmap_init(&nodemap);
+
  if (!(vm = libxlDomObjFromDomain(dom)))
     goto cleanup;
 
@@ -3972,8 +3974,6 @@ libxlDomainGetNumaParameters(virDomainPtr dom,
 
  priv = vm->privateData;
 
- libxl_bitmap_init(&nodemap);
-
  if ((*nparams) == 0) {
     *nparams = LIBXL_NUMA_NPARAM;
     ret = 0;

La vulnerabilità è documentata anche nel database X-Force (90446), Tenable (75266), SecurityFocus (BID 64963†), OSVDB (102254†) e Secunia (SA56308†). Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Prodottoinformazioni

Genere

Nome

Licenza

CPE 2.3informazioni

CPE 2.2informazioni

CVSSv4informazioni

VulDB Vettore: 🔍
VulDB Affidabilità: 🔍

CVSSv3informazioni

VulDB Punteggio meta-base: 9.9
VulDB Punteggio meta temporaneo: 8.9

VulDB Punteggio di base: 9.9
VulDB Punteggio temporaneo: 8.9
VulDB Vettore: 🔍
VulDB Affidabilità: 🔍

CVSSv2informazioni

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VettoreComplessitàAutenticazioneRiservatezzaIntegritàDisponibilità
SbloccareSbloccareSbloccareSbloccareSbloccareSbloccare
SbloccareSbloccareSbloccareSbloccareSbloccareSbloccare
SbloccareSbloccareSbloccareSbloccareSbloccareSbloccare

VulDB Punteggio di base: 🔍
VulDB Punteggio temporaneo: 🔍
VulDB Affidabilità: 🔍

NVD Punteggio di base: 🔍

Sfruttamentoinformazioni

Nome: Invalid Free
Classe: Escalationi di privilegi / Invalid Free
CWE: CWE-264
CAPEC: 🔍
ATT&CK: 🔍

Fisico: No
Locale: No
Remoto: Si

Disponibilità: 🔍
Accesso: Pubblico
Stato: Prova di concetto

EPSS Score: 🔍
EPSS Percentile: 🔍

Previsione dei prezzi: 🔍
Preventivo attuale: 🔍

0-DaySbloccareSbloccareSbloccareSbloccare
OggiSbloccareSbloccareSbloccareSbloccare

Nessus ID: 75266
Nessus Nome: openSUSE Security Update : libvirt (openSUSE-SU-2014:0268-1)
Nessus File: 🔍
Nessus Rischio: 🔍
Nessus Famiglia: 🔍
Nessus Port: 🔍

OpenVAS ID: 841696
OpenVAS Nome: Ubuntu Update for libvirt USN-2093-1
OpenVAS File: 🔍
OpenVAS Famiglia: 🔍

Qualys ID: 🔍
Qualys Nome: 🔍

Intelligence sulle minacceinformazioni

Interesse: 🔍
Attori attivi: 🔍
Gruppi APT attivi: 🔍

Contromisureinformazioni

Raccomandazione: Patch
Stato: 🔍

Tempo di reazione: 🔍
Tempo 0 giorni: 🔍
Tempo di esposizione: 🔍

Patch: libvirt.org

Sequenza temporaleinformazioni

04/11/2013 🔍
20/12/2013 +46 giorni 🔍
20/12/2013 +0 giorni 🔍
20/12/2013 +0 giorni 🔍
20/12/2013 +0 giorni 🔍
15/01/2014 +26 giorni 🔍
21/01/2014 +6 giorni 🔍
24/01/2014 +3 giorni 🔍
30/01/2014 +6 giorni 🔍
13/06/2014 +134 giorni 🔍
08/06/2021 +2552 giorni 🔍

Fontiinformazioni

Avis: avoid crashing if calling `virsh numatune' on inactive domain
Ricercatore: Dario Faggioli
Stato: Confermato
Conferma: 🔍

CVE: CVE-2013-6457 (🔍)
GCVE (CVE): GCVE-0-2013-6457
GCVE (VulDB): GCVE-100-12003

OVAL: 🔍

X-Force: 90446
SecurityFocus: 64963 - libvirt 'libxlDomainGetNumaParameters()' Function Local Denial of Service Vulnerability
Secunia: 56308 - libvirt "libxlDomainGetNumaParameters()" Invalid Free Vulnerability, Less Critical
OSVDB: 102254
Vulnerability Center: 43106 - Libvirt before 1.2.1 Remote DoS or Code Execution Vulnerability by Calling \x27Virsh Numatune\x27 on Inactive Domain, Medium

scip Labs: https://www.scip.ch/en/?labs.20161013
Vedi anche: 🔍

Voceinformazioni

Data di creazione: 21/01/2014 09:39
Aggiornato: 08/06/2021 13:57
Cambiamenti: 21/01/2014 09:39 (79), 21/08/2017 08:50 (11), 08/06/2021 13:57 (3)
Completa: 🔍
Cache ID: 216::103

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Discussione

Ancora nessun commento. Lingue: it + ro + en.

Effettua il login per commentare.

Interested in the pricing of exploits?

See the underground prices here!