Outlook CVE-2026-124194: falha explorada vaza hash NTLM
Falha do Outlook já explorada vaza o hash NTLMv2 ao abrir um arquivo de mensagem. Veja as builds que corrigem, um script de inventário e o que travar na rede.
A Microsoft corrigiu em 10/11/2026 uma falha do Outlook que já estava sendo explorada: a CVE-2026-124194. Um arquivo de mensagem preparado pelo atacante faz o Outlook se conectar a um endereço de rede controlado por ele, sem mostrar o aviso de conteúdo externo, e nesse caminho entrega o hash NTLMv2 de quem abriu o arquivo. Com esse hash, o atacante pode se autenticar como a vítima em outros serviços da rede. A classificação oficial é "Moderada", com CVSS 6.5, mas é a única falha do pacote de novembro marcada como explorada, e a agência americana CISA já a colocou no catálogo de falhas exploradas com prazo de correção até 24/11.
O que resolve é a atualização do Office (Microsoft 365 Apps, Office LTSC 2021 e Office LTSC 2024). Abaixo estão as builds que corrigem a falha, um script que confere a CVE nas fontes oficiais e compara o inventário de máquinas com essas builds, e as medidas de rede que reduzem o estrago do vazamento de hash NTLM enquanto a atualização não chega a todo mundo. O script foi rodado no nosso ambiente, e a saída real aparece logo abaixo.

O que a Microsoft confirmou sobre a falha
O registro no guia de atualizações do MSRC descreve o problema como uma interface que não avisa o usuário de uma ação insegura (CWE-356). As perguntas e respostas da própria página dizem o seguinte:
- Como o ataque acontece: um atacante sem autenticação envia um arquivo de mensagem especialmente montado e convence a pessoa a abri-lo numa versão afetada do Outlook. Ao abrir, o Outlook se conecta a um local de rede do atacante sem exibir o aviso habitual de conteúdo externo.
- O que vaza: o hash NTLMv2 do usuário, que pode ser usado para se autenticar como ele.
- Painel de visualização: não é vetor. É preciso abrir o arquivo.
- Situação: "Exploited: Yes", sem divulgação pública anterior. Créditos para Benoît Sevens e para um pesquisador identificado como "nono".
O vetor CVSS publicado é AV:N/AC:L/PR:N/UI:R/C:H/I:N/A:N: ataque pela rede, baixa complexidade, sem login, com interação do usuário e perda alta de confidencialidade. O número 6.5 parece pequeno porque a falha, sozinha, não executa código. O risco está no que vem depois: um hash NTLMv2 pode ser quebrado offline quando a senha é fraca, ou repassado em tempo real para outro serviço que ainda aceita NTLM (o chamado relay). A análise da Zero Day Initiative sobre o Patch Tuesday resume do mesmo jeito: o rótulo é "spoofing", mas o impacto é maior do que o nome sugere.
A CISA incluiu a CVE no catálogo KEV em 10/11/2026, com prazo de 24/11/2026 para os órgãos federais americanos. Esse prazo não obriga empresas brasileiras, mas é um bom termômetro: falha que entra no KEV é falha que alguém já está usando.
Quais versões corrigem
O MSRC lista seis produtos afetados (as edições de 32 e 64 bits de cada um). As builds corrigidas saíram na página de atualizações de segurança do Microsoft 365 Apps com data de 10/11/2026:
- Current Channel: versão 2610, build 20527.20196.
- Monthly Enterprise Channel: 2610 (20527.20194), 2609 (20430.20264) e 2608 (20326.20320).
- Semi-Annual Enterprise Channel: 2610 (20527.20192), 2609 (20430.20262) e 2608 (20326.20318).
- Office 2024 e Office 2021 de varejo: 2610, build 20527.20196.
- Office LTSC 2024 (licença por volume): 2408, build 17932.21140.
- Office LTSC 2021 (licença por volume): 2108, build 14334.21048.
Na prática, o número que aparece em Arquivo > Conta > Sobre o Outlook tem o formato 16.0.BUILD.REVISÃO. Uma máquina com 16.0.20527.20134 está na versão 2610, mas numa revisão anterior à correção. Uma máquina com uma build principal que não aparece na lista (por exemplo, uma versão de um ano atrás que parou de atualizar) não tem correção nenhuma até subir de versão.
Conferindo a CVE e o inventário com um script
Em vez de abrir cada computador, dá para juntar as versões num CSV e comparar de uma vez. O script abaixo, em Python 3 sem bibliotecas externas, faz três coisas: lê o feed JSON do KEV da CISA, consulta a API pública do guia de atualizações do MSRC e compara cada build do inventário com a menor revisão corrigida daquela versão.
#!/usr/bin/env python3
import csv, json, sys, urllib.request
CVE = "CVE-2026-124194"
KEV = "https://www.cisa.gov/sites/default/files/feeds/known_exploited_vulnerabilities.json"
MSRC = ("https://api.msrc.microsoft.com/sug/v2.0/en-US/affectedProduct"
f"?$filter=cveNumber%20eq%20%27{CVE}%27")
# build principal -> menor revisão corrigida em 10/11/2026
CORRIGIDA = {
20527: 20192, # 2610 (Current 20196, MEC 20194, SAEC 20192)
20430: 20262, # 2609 (MEC 20264, SAEC 20262)
20326: 20318, # 2608 (MEC 20320, SAEC 20318)
17932: 21140, # Office LTSC 2024
14334: 21048, # Office LTSC 2021
}
def baixar(url):
req = urllib.request.Request(url, headers={"Accept": "application/json",
"User-Agent": "checa-outlook/1.0"})
with urllib.request.urlopen(req, timeout=30) as r:
return json.load(r)
kev = next(v for v in baixar(KEV)["vulnerabilities"] if v["cveID"] == CVE)
print(f"KEV : {CVE} incluída em {kev['dateAdded']}, prazo {kev['dueDate']}")
prod = baixar(MSRC)["value"]
print(f"MSRC: {prod[0]['severity']}, CVSS {prod[0]['baseScore']}, "
f"{len(prod)} produtos afetados")
def situacao(versao):
p = [int(x) for x in versao.split(".")] # 16.0.BUILD.REVISAO
build, rev = p[2], p[3]
if build not in CORRIGIDA:
return "ATUALIZAR (versão sem build corrigida em 10/11)"
return "ok" if rev >= CORRIGIDA[build] else f"ATUALIZAR (mínimo {build}.{CORRIGIDA[build]})"
print()
with open(sys.argv[1], newline="") as f:
for linha in csv.DictReader(f):
print(f"{linha['maquina']:<16} {linha['versao']:<18} {situacao(linha['versao'])}")
Rodamos com um inventário de teste de seis máquinas (nomes e versões inventados para o exemplo). A saída real foi esta:
$ python3 checa_outlook.py inventario.csv KEV : CVE-2026-124194 incluída em 2026-11-10, prazo 2026-11-24 MSRC: Moderate, CVSS 6.5, 6 produtos afetados financeiro-01 16.0.20527.20196 ok financeiro-02 16.0.20527.20134 ATUALIZAR (mínimo 20527.20192) recepcao 16.0.20430.20262 ok diretoria-nb 16.0.17932.21016 ATUALIZAR (mínimo 17932.21140) estoque-ltsc 16.0.14334.21048 ok sala-reuniao 16.0.19725.20170 ATUALIZAR (versão sem build corrigida em 10/11)
Dois cuidados com o resultado. O script usa a menor revisão corrigida de cada versão, que é a do Semi-Annual Enterprise Channel; se a máquina da recepção estiver no Monthly Enterprise Channel, o mínimo dela é 20430.20264 e ela ainda precisaria atualizar. E a linha da sala de reunião é o caso mais comum em escritório pequeno: um Office que deixou de atualizar há meses e não tem correção na versão em que parou.
Para montar o CSV no Windows, a versão instalada do Microsoft 365 Apps (Clique para Executar) fica no Registro. Este comando de PowerShell lê o valor; ele não foi executado no nosso ambiente, que é Linux, então confira numa máquina antes de distribuir:
Get-ItemPropertyValue -Path 'HKLM:\SOFTWARE\Microsoft\Office\ClickToRun\Configuration' -Name VersionToReport
Quem gerencia as máquinas pelo Intune, pelo Configuration Manager ou pelo centro de administração do Microsoft 365 já tem esse número no relatório de inventário, e o script serve só para a comparação.
Como atualizar
Numa máquina só, o caminho é o mesmo de qualquer atualização do Office: abrir o Outlook ou o Word, ir em Arquivo > Conta > Opções de Atualização > Atualizar Agora, como descreve a ajuda oficial do Office. O detalhe que costuma ficar para trás é fechar e reabrir os aplicativos: a atualização baixa em segundo plano, mas só se aplica quando o Outlook reinicia, e há gente que deixa o Outlook aberto por semanas.
Em empresa, vale conferir se a política de atualização não está travada numa versão antiga. É o caso típico da linha "sala-reuniao" acima: alguém fixou a versão para resolver um problema de suplemento e esqueceu de soltar. Se as atualizações vêm de um compartilhamento interno, confirme que o pacote de novembro já foi baixado para lá.
Reduzindo o estrago de um hash NTLM vazado
A atualização fecha esta falha. As medidas abaixo diminuem o valor de um hash vazado por esta ou pela próxima falha parecida, e valem a pena por si só:
- Bloquear a porta TCP 445 de saída para a internet no firewall da empresa. A documentação da Microsoft sobre tráfego SMB seguro recomenda isso e observa que é improvável precisar de SMB de saída para a internet, salvo serviços como Arquivos do Azure. O aviso da CVE fala só em "local de rede controlado pelo atacante", sem detalhar o protocolo, então trate o bloqueio como redução de superfície, não como substituto da atualização.
- Colocar contas administrativas no grupo Usuários Protegidos. Segundo a documentação do grupo, contas desse grupo não conseguem se autenticar por NTLM no domínio. Teste antes com uma conta só: serviços antigos que dependem de NTLM vão parar para ela.
- Auditar e depois restringir o NTLM de saída com a política "Segurança de rede: restringir NTLM: tráfego NTLM de saída para servidores remotos". Comece no modo de auditoria, leia os eventos por algumas semanas e só então passe a negar, com exceções para os servidores que ainda precisam.
- Senhas longas. Um hash NTLMv2 capturado é quebrado offline na velocidade da placa de vídeo do atacante. Frase de senha longa transforma horas em anos.
Nenhum desses passos substitui orientar as pessoas a não abrir arquivos de mensagem recebidos de fora. A falha exige que alguém abra o arquivo, e o golpe costuma vir num e-mail que parece legítimo. Autenticar o seu próprio domínio ajuda a separar o e-mail verdadeiro da imitação; o guia sobre DMARC no Outlook mostra como configurar.
O resto do pacote de novembro que merece atenção
A CVE-2026-124194 é a única marcada como explorada, mas não é a mais grave do mês. Quem mantém Exchange Server local deve olhar a CVE-2026-116928, no Windows Search: segundo o MSRC, um e-mail com anexo preparado basta para executar código quando o Exchange indexa o anexo, sem que o destinatário abra nada. O CVSS é 9.8 e a Microsoft avalia a exploração como "menos provável", mas uma falha sem clique num servidor de e-mail exposto não deve esperar o próximo ciclo.
Para planejar a janela de atualização dos servidores, a mesma lógica do nosso guia sobre a correção de segurança do Node.js se aplica: inventário primeiro, depois o ensaio numa máquina, depois o resto. E se alguém sugerir desligar a proteção do Windows para a atualização "passar", o texto sobre Defender desligado explica por que não.
Resumo
- CVE-2026-124194: abrir um arquivo de mensagem preparado faz o Outlook vazar o hash NTLMv2 do usuário. Explorada antes da correção, no KEV da CISA desde 10/11/2026.
- Afeta Microsoft 365 Apps, Office LTSC 2021 e Office LTSC 2024. O painel de visualização não é vetor.
- Builds corrigidas: 20527.20196 no Current Channel, 17932.21140 no LTSC 2024 e 14334.21048 no LTSC 2021 (lista completa acima).
- Compare o inventário com as builds, reinicie o Outlook depois de atualizar e procure máquinas presas em versões antigas.
- Bloqueie a porta 445 de saída, proteja as contas administrativas e restrinja o NTLM aos poucos.
Equipe DevBras