Essa falha, que tem uma pontuação CVSS de 7,8, apresenta um risco significativo, permitindo que invasores obtenham privilégios de SISTEMA em sistemas afetados por meio de uma vulnerabilidade de uso após liberação no serviço de telefonia.
O Windows Telephony Service é um serviço baseado em RPC que, embora não seja executado por padrão, pode ser ativado invocando a API StartServiceW com privilégios de usuário padrão. A vulnerabilidade surge na maneira como esse serviço manipula objetos com o valor mágico “GOLD”, um identificador exclusivo usado na tabela de identificadores globais do serviço.
void __fastcall GetUIDllName(__int64 a1, int *a2, unsigned int a3, __int64 a4, _DWORD *a5)
{
[...]
if ( object )
{
*object = 0x474F4C44; // =====> [a]
v38 = *(_QWORD *)(contexthandle + 184);
*((_QWORD *)object + 10) = v38;
if ( v38 )
*(_QWORD *)(v38 + 72) = object;
*(_QWORD *)(contexthandle + 184) = object; // =======> [b]
a2[8] = object[22];
}
[...]
}
A interface do serviço consiste em três funções principais:
A vulnerabilidade está enraizada no método ClientRequest , onde uma variável global chamada “gaFuncs” roteia solicitações para funções de despacho específicas. Essas funções processam vários objetos, que são criados e inseridos na tabela de handles global pela função NewObject .
No entanto, ao manipular objetos com o valor mágico “GOLD”, ocorre um descuido crítico. O serviço de telefonia falha ao verificar se o objeto “GOLD” é de propriedade do identificador de contexto antes de liberá-lo. Essa falha pode ser explorada criando dois identificadores de contexto: um para manter o objeto “GOLD” e outro para invocar a função de despacho FreeDiagInstance , que libera o objeto “GOLD”. Como resultado, o identificador de contexto original retém um ponteiro pendente para o objeto liberado, levando a uma vulnerabilidade de uso após liberação quando o serviço tenta referenciá-lo posteriormente.
O exploit para essa vulnerabilidade foi desenvolvido por k0shl da Cyber Kunlun, que empregou uma nova técnica para contornar a mitigação do eXtended Flow Guard (XFG) no Windows 11 — um recurso de segurança projetado para evitar tais ataques. Após a análise detalhada de k0shl, outro pesquisador, Wa1nut4, publicou um código de exploit de prova de conceito (PoC) para CVE-2024-26230 no GitHub, tornando a falha amplamente acessível aos invasores.
O exploit funciona manipulando o buffer de entrada do cliente RPC, que pode ser totalmente controlado pelo invasor. Esse controle, em última análise, leva ao travamento do serviço de telefonia quando ele tenta referenciar uma função virtual por meio do ponteiro pendurado.
A exploração bem-sucedida dessa vulnerabilidade tem consequências severas, concedendo aos invasores controle total sobre o sistema comprometido. Com privilégios SYSTEM, atores maliciosos podem executar código arbitrário, instalar malware, exfiltrar dados sensíveis e estabelecer backdoors persistentes.
A Microsoft abordou essa vulnerabilidade em suas atualizações de segurança de abril de 2024. Os administradores de sistema e usuários são fortemente incentivados a aplicar essas atualizações imediatamente para proteger seus sistemas.
Falha permite que invasores manipulem o agente de um usuário por meio de um problema…
Um exploit de dia zero, dirigido aos firewalls FortiGate da Fortinet, foi descoberto à venda…
A família SHELBY mostra um exemplo preocupante de malware moderno com design modular, sofisticado e…
Hackers estão explorando o diretório mu-plugins do WordPress para injetar códigos maliciosos que não aparecem…
O Google implementou uma nova funcionalidade de "Detecção de Golpes" com inteligência artificial no aplicativo…
O grupo APT28, ligado à Rússia, está utilizando técnicas avançadas de ofuscação em seus ataques…