libvirt libxl/libxl_driver.c libxlDomainGetNumaParameters Invalid Free Elevação de Privilégios

CVSS Meta Pontuação TemporáriaPreço atual do exploit (≈)Nota de Interesse CTI
8.9$0-$5k0.00

Sumárioinformação

Detectou-se uma vulnerabilidade classificada como crítico em libvirt. O elemento afetado é a função libxlDomainGetNumaParameters na biblioteca libxl/libxl_driver.c. A manipulação com uma entrada desconhecida leva a Elevação de Privilégios. Esta vulnerabilidade é identificada como CVE-2013-6457. Além disso, um exploit está disponível. Recomenda-se instalar um patch para corrigir esta vulnerabilidade.

Detalhesinformação

Detectou-se uma vulnerabilidade classificada como crítico em libvirt. O elemento afetado é a função libxlDomainGetNumaParameters na biblioteca libxl/libxl_driver.c. A manipulação com uma entrada desconhecida leva a Elevação de Privilégios. Usar a CWE para declarar o problema leva à CWE-264. A fraqueza foi publicada 20/12/2013 por Dario Faggioli como avoid crashing if calling `virsh numatune' on inactive domain como Posting (Mailing List). O comunicado foi disponibilizado para download em redhat.com.

Esta vulnerabilidade é identificada como CVE-2013-6457. A atribuição do identificador CVE aconteceu em 04/11/2013. Há detalhes técnicos disponíveis. Esta vulnerabilidade apresenta popularidade inferior à média. Além disso, um exploit está disponível. O exploit foi exposto ao público e pode ser aproveitado. No momento, o preço atual de um exploit pode estar em torno de USD $0-$5k atualmente. O projeto MITRE ATT&CK declara a técnica de ataque como T1068. O seguinte código é a razão para esta vulnerabilidade:

# ./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]
O boletim informa:
libxl: avoid crashing if calling `virsh numatune' on inactive domain by, in libxlDomainGetNumaParameters(), calling libxl_bitmap_init() as soon as possible, which avoids getting to 'cleanup:', where libxl_bitmap_dispose() happens, without having initialized the nodemap, and hence crashing after some invalid free()-s:

É declarado como prova de conceito. Como 0-day, o valor estimado no submundo era aproximadamente $0-$5k. O scanner de vulnerabilidades Nessus fornece um plugin com o ID 75266. Pertence à família SuSE Local Security Checks. Está utilizando a porta 0. O scanner de vulnerabilidade comercial Qualys é capaz de testar este problema com plugin 195783 (Ubuntu Security Notification for Libvirt Vulnerabilities (USN-2093-1)).

O patch pode ser baixado em libvirt.org. Recomenda-se instalar um patch para corrigir esta vulnerabilidade. Esta vulnerabilidade será resolvida com o seguinte código:

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;
Outros bancos de dados de vulnerabilidades também documentam esta vulnerabilidade: SecurityFocus (BID 64963), X-Force (90446), Secunia (SA56308), Vulnerability Center (SBV-43106) e Tenable (75266).

Produtoinformação

Tipo

Nome

Licença

CPE 2.3informação

CPE 2.2informação

CVSSv4informação

VulDB Vetor: 🔍
VulDB Fiabilidade: 🔍

CVSSv3informação

VulDB Meta Pontuação Base: 9.9
VulDB Meta Pontuação Temporária: 8.9

VulDB Pontuação Base: 9.9
VulDB Pontuação Temporária: 8.9
VulDB Vetor: 🔍
VulDB Fiabilidade: 🔍

CVSSv2informação

AVACAuCIA
💳💳💳💳💳💳
💳💳💳💳💳💳
💳💳💳💳💳💳
VectorComplexidadeAutenticaçãoConfidencialidadeIntegridadeDisponibilidade
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear
DesbloquearDesbloquearDesbloquearDesbloquearDesbloquearDesbloquear

VulDB Pontuação Base: 🔍
VulDB Pontuação Temporária: 🔍
VulDB Fiabilidade: 🔍

NVD Pontuação Base: 🔍

Exploraçãoinformação

Nome: Invalid Free
Classe: Elevação de Privilégios / Invalid Free
CWE: CWE-264
CAPEC: 🔍
ATT&CK: 🔍

Físico: Não
Local: Não
Remoto: Sim

Disponibilidade: 🔍
Acesso: Público
Estado: Prova de conceito

EPSS Score: 🔍
EPSS Percentile: 🔍

Tendência de preços: 🔍
Estimativa de preço atual: 🔍

0-DayDesbloquearDesbloquearDesbloquearDesbloquear
HojeDesbloquearDesbloquearDesbloquearDesbloquear

Nessus ID: 75266
Nessus Nome: openSUSE Security Update : libvirt (openSUSE-SU-2014:0268-1)
Nessus Ficheiro: 🔍
Nessus Risco: 🔍
Nessus Família: 🔍
Nessus Port: 🔍

OpenVAS ID: 841696
OpenVAS Nome: Ubuntu Update for libvirt USN-2093-1
OpenVAS Ficheiro: 🔍
OpenVAS Família: 🔍

Qualys ID: 🔍
Qualys Nome: 🔍

Inteligência de ameaçasinformação

Interesse: 🔍
Atores ativos: 🔍
Grupos APT ativos: 🔍

Contramedidasinformação

Recomendação: Patch
Estado: 🔍

Tempo de resposta: 🔍
Tempo 0-dia: 🔍
Tempo de exposição: 🔍

Patch: libvirt.org

Linha do tempoinformação

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

Fontesinformação

Aconselhamento: avoid crashing if calling `virsh numatune' on inactive domain
Pessoa: Dario Faggioli
Estado: Confirmado
Confirmação: 🔍

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
Veja também: 🔍

Entradainformação

Criado: 21/01/2014 09h39
Atualizado: 08/06/2021 13h57
Ajustamentos: 21/01/2014 09h39 (79), 21/08/2017 08h50 (11), 08/06/2021 13h57 (3)
Completo: 🔍
Cache ID: 216::103

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

Discussão

Ainda sem comentários. Idiomas: pt + es + en.

Por favor, inicie sessão para comentar.

Want to stay up to date on a daily basis?

Enable the mail alert feature now!