Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2022-44666 — Escrita técnica e prova de conceito para CVE-2022-44666, uma vulnerabilidade de escape do atributo href do controle syslink do Windows Contacts que permite execução remota de código por meio de arquivos VCF/.contact manipulados e do manipulador de protocolo LDAP. | Kitploit
Ferramentas/GitHubGitHub/j00sean/cve-2022-44666
Ferramentas de PhishingAnálise de VulnerabilidadesExploraçãoEngenharia SocialDesenvolvimento de Payloads
GitHubj00sean/cve-2022-44666

CVE-2022-44666

Escrita técnica e prova de conceito para CVE-2022-44666, uma vulnerabilidade de escape do atributo href do controle syslink do Windows Contacts que permite execução remota de código por meio de arquivos VCF/.contact manipulados e do manipulador de protocolo LDAP.

Ver Repositório
1552414há 3 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Microsoft Windows Contacts (VCF/Contact/LDAP) syslink control href attribute escape vulnerability (CVE-2022-44666) (0day).

Esta é a história sobre outro 0day esquecido, divulgado integralmente há mais de 4 anos por [John Page (aka hyp3rlinx)][R.1]. Para entender o relatório, você precisa considerar que eu sou estúpido :-) E minha estupidez me leva a percorrer caminhos mais longos para resolver problemas simples, mas também me leva a descobrir outras maneiras de explorar alguns bugs. Por que digo isso? Porque não consegui entender rapidamente que a maneira de criar um arquivo .contact é simplesmente navegar até a pasta Contatos para criar o contato; em vez disso, usei essa informação para primeiro criar um arquivo VCF e então, erroneamente, pensei que se tratava de algum tipo de variante. Isso também aconteceu porque meu cérebro não consegue entender que alguns 0days são esquecidos por tanto tempo ¯\(ツ)/¯ Feito isso, e após as respostas "wontfix" do [MSRC][R.2] e do [ZDI][R.3], investigações adicionais foram feitas para aumentar a gravidade, chegando finalmente aos arquivos .contact e ao manipulador de protocolo de URL "ldap" do Windows.

Details

  • Fornecedor: Microsoft.
  • Aplicativo: Microsoft Windows Contacts.
  • Versão: 10.0.19044.1826.
  • Sistemas testados: Windows 10 e Windows 11.
  • Versões dos sistemas testados: Microsoft Windows [Version 10.0.19044.1826] e Microsoft Windows [Version 10.0.22000.795]

Introdução

Enquanto eu lia o código do exploit para [esta vulnerabilidade][R.4], que na verdade foi divulgada como 0day e é possível encontrar [o relatório da ZDI][R.5].

Atualização 2022/07/21: Após relatar este caso à Microsoft, o pessoal do MSRC corretamente me apontou que o Windows Contacts não é o programa padrão para abrir arquivos VCF.

alt text

Pesquisas adicionais ainda demonstram que o programa padrão para arquivos VCF no Win7 ESU e no WinServer2019 é o Windows Contacts (wab.exe); caso contrário, o MS People (PeopleApp.exe) é usado. Aqui está uma tabela completa desse teste:

  • Windows 7: o programa padrão para arquivos VCF é o Windows Contacts (wab.exe).
  • Windows Server 2019: o programa padrão para arquivos VCF é o Windows Contacts (wab.exe).
  • Windows 10: o programa padrão para arquivos VCF é o MS People (PeopleApp.exe).
  • Windows 10 + MS Office: o programa padrão para arquivos VCF é o MS Outlook (outlook.exe).
  • Windows 11: o programa padrão para arquivos VCF é o MS People (PeopleApp.exe).

De qualquer forma, eles ainda argumentam que há uma certa engenharia social envolvida, como abrir um arquivo VCF malicioso e clicar em alguns links para explorar o bug, portanto isso não atende ao critério de bugs do MSRC para uma atualização de segurança.

alt text

Atualização 2022/07/25: Bem, após pesquisas adicionais, é o mesmo bug. Finalmente consegui encontrar uma prova de conceito para .contact. Na verdade, é possível analisar corretamente um arquivo .contact usando entidades HTML. Observe que isso resolve o problema anterior (Atualização 2022/07/21) e esse formato de arquivo (.contact) é aberto pelo Windows Contacts, programa padrão para essa extensão de arquivo, mesmo quando o MS Office está instalado no sistema. Basta uma primeira associação de arquivo se ainda não tiver sido feita, mas o único programa instalado por padrão para fazer isso é o Windows Contacts.

Atualização 2022/07/25: Essa pesquisa adicional me fez chegar a um ponto que eu estava tentando alcançar há algum tempo: usar algum manipulador de protocolo de URL para abrir automaticamente dados de contato criados para explorar o bug. Finalmente consegui fazê-lo funcionar graças ao esquema de URI ldap, que está associado por padrão ao aplicativo Windows Contacts. Assim, basta configurar um servidor LDAP malicioso e servir os dados do payload nos atributos mail, url ou wwwhomepage; o impacto da exploração aumenta, pois agora não é necessário clicar duas vezes em um arquivo VCF/Contact malicioso; podemos entregá-lo usando protocolos de URL.

Atualização 2023/02/08: Como um gesto de boa vontade do MSRC, [John Page (aka hyp3rlinx)][R.1] foi incluído na página de agradecimentos pela descoberta da [CVE-2022-44666][R.10].

alt text

Descrição

O relatório é basicamente o mesmo que nos links acima, no entanto, melhorei um pouco a engenharia social envolvida. Na verdade, a primeira coisa que fiz foi melhorar a forma como os links são vistos; como se fosse uma vulnerabilidade XSS, mas na verdade é uma injeção de HTML, então é possível fechar o primeiro elemento âncora e inserir um novo. Em seguida, quis remover a visibilidade desses elementos HTML, então definir um "innerHTML" o mais longo possível seria suficiente para ocultá-los (porque há limites de caracteres).

Este é o payload final utilizado:```html URL;WORK:">CLICKMEEEEE...

Para observar o que acontece, execute o procmon e configure um alvo falso do atributo href assim:```html
URL;WORK:"></a><a href="https://github.com/j00sean/cve-2022-44666/blob/main/foo.exe">CLICKMEEEEE...</a>

Ao clicar no link, uma saída como esta é observada no procmon:

alt text

Baixar ferramenta