OpenSSL 1.1.0 ssl_add_clienthello_tlsext Excesso de tampão

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

Sumárioinformação

Uma vulnerabilidade classificada como crítico foi encontrada em OpenSSL 1.1.0. Afetado é a função ssl_add_clienthello_tlsext. O tratamento leva a Excesso de tampão. É possível lançar o ataque remotamente. Além disso, existe um exploit disponível.

Detalhesinformação

Uma vulnerabilidade classificada como crítico foi encontrada em OpenSSL 1.1.0. Afetado é a função ssl_add_clienthello_tlsext. O tratamento leva a Excesso de tampão. Usar CWE para declarar o problema leva a CWE-122. O problema foi divulgado 13/10/2016 por Guido Vranken como Mailinglist Post (Full-Disclosure). O comunicado está disponível para download em seclists.org.

É possível lançar o ataque remotamente. Detalhes técnicos estão disponíveis. A popularidade desta vulnerabilidade está abaixo da média. Além disso, existe um exploit disponível. O exploit foi divulgado ao público e pode ser utilizado. Atualmente, o preço atual de um exploit pode ser aproximadamente USD $0-$5k no momento. O motivo desta vulnerabilidade é este trecho de código:

if ((long)(limit - ret - 7 - extlen - idlen) < 0)
    return NULL;
s2n(TLSEXT_TYPE_status_request, ret);
if (extlen + idlen > 0xFFF0)
    return NULL;
s2n(extlen + idlen + 5, ret);
*(ret++) = TLSEXT_STATUSTYPE_ocsp;
s2n(idlen, ret);
for (i = 0; i < sk_OCSP_RESPID_num(s->tlsext_ocsp_ids); i++) {
    / save position of id len /
    unsigned char *q = ret;
    id = sk_OCSP_RESPID_value(s->tlsext_ocsp_ids, i);
    / skip over id len /
    ret += 2;
    itmp = i2d_OCSP_RESPID(id, &ret);
    / write id len /
    s2n(itmp, q);
}
s2n(extlen, ret);
1283if (extlen > 0)
1284    i2d_X509_EXTENSIONS(s->tlsext_ocsp_exts, &ret);
O comunicado destaca:
(...) if an attacker can somehow influence the ALPN list of an OpenSSL-enabled application (perhaps through another vulnerability), the attacker can write arbitrary data past OpenSSL's heap buffer.

Está declarado como prova de conceito. O exploit está disponível para download em seclists.org. Como 0 dia, o preço estimado do subsolo foi de cerca de $25k-$100k. O código usado pelo exploit é:

openssl s_client -reconnect -status -alpn `python -c "import sys;
sys.stdout.write('x,'*4000+'x')"`
A recomendação aponta:
It doesn’t crash immediately after ‘ret’ crosses ‘limit’ because the buffer is over-allocated by the code in crypto/buffer/buffer.c (...) And just to be clear, you don’t need to modify the source code of the client in order to make this work. You only need to modify the server code (a separate build if you want) so it sends large tickets.

O aviso inclui o seguinte comentário:

Triggering this requires that the client sets a very large ALPN list (several thousand bytes). This would be very unusual in a real-world application. For this reason OpenSSL does not treat this as a security vulnerability and I am inclined to agree with this decision.

Produtoinformação

Tipo

Nome

Versão

Licença

Apoio

  • end of life (old version)

Site

CPE 2.3informação

CPE 2.2informação

CVSSv4informação

VulDB Vetor: 🔍
VulDB Fiabilidade: 🔍

CVSSv3informação

VulDB Meta Pontuação Base: 7.3
VulDB Meta Pontuação Temporária: 6.6

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

CVSSv2informação

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

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

Exploraçãoinformação

Classe: Excesso de tampão
CWE: CWE-122 / CWE-119
CAPEC: 🔍
ATT&CK: 🔍

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

Disponibilidade: 🔍
Acesso: Público
Estado: Prova de conceito
Autor: Guido Vranken
Descarregar: 🔍
Tendência de preços: 🔍
Estimativa de preço atual: 🔍

0-DayDesbloquearDesbloquearDesbloquearDesbloquear
HojeDesbloquearDesbloquearDesbloquearDesbloquear

Inteligência de ameaçasinformação

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

Contramedidasinformação

Recomendação: nenhuma medida conhecida
Estado: 🔍

Tempo 0-dia: 🔍
Tempo de atraso de exploração: 🔍

Linha do tempoinformação

13/10/2016 🔍
13/10/2016 +0 dias 🔍
20/10/2016 +7 dias 🔍
14/12/2016 +55 dias 🔍

Fontesinformação

Produto: openssl.org

Aconselhamento: seclists.org
Pessoa: Guido Vranken
Estado: Não definido

GCVE (VulDB): GCVE-100-93005
scip Labs: https://www.scip.ch/en/?labs.20161013

Entradainformação

Criado: 20/10/2016 13h16
Atualizado: 14/12/2016 15h54
Ajustamentos: 20/10/2016 13h16 (47), 14/12/2016 15h54 (2)
Completo: 🔍
Cache ID: 216::103

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Discussão

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

Por favor, inicie sessão para comentar.

Might our Artificial Intelligence support you?

Check our Alexa App!