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
SkeletonKey — CVE-2026-6765, Apenas teste de handlers FormAutofill expostos no Firefox | Kitploit
Ferramentas/GitHubGitHub/defineid/skeletonkey
Análise de VulnerabilidadesExploraçãoExfiltração de DadosSegurança WebPrivacidadeAtaque Adversário
GitHubdefineid/skeletonkey

SkeletonKey

CVE-2026-6765, Apenas teste de handlers FormAutofill expostos no Firefox

Ver Repositório
22há 1 mêsAinda não revisado

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

CVE-2026-6765 · Manipuladores exclusivos de teste do FormAutofill acessíveis fora da automação

Repórter creditado pela Mozilla na MFSA 2026-30: Abdulaziz Alasaiqah. Este diretório contém um harness de reprodução real para a vulnerabilidade. Ele destina-se a ser executado contra uma build vulnerável do Firefox baixada localmente. Ele nunca toca em qualquer sistema ativo ou de terceiros.

Repositório PoC correspondente: https://github.com/defineid/SkeletonKey Writeup: writeup-ff-autofill.html neste portfólio.

Fatos verificados (registro público)

CampoValorFonte
CVECVE-2026-6765MITRE cvelistV5 (estado PUBLISHED, CNA Mozilla)
TítuloDivulgação de informações no componente Form AutofillNVD · MFSA 2026-30
SeveridadeModerada · CVSS 5.3 · AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:NNVD
CWE359 · Exposição de Informações PrivadasNVD
Corrigido emFirefox 150 · Firefox ESR 140.10 · Thunderbird 150 / 140.10MFSA 2026-30
Bugbugzilla.mozilla.org/show_bug.cgi?id=2022419 (restrito por segurança)Referência NVD
RepórterAbdulaziz AlasaiqahMFSA 2026-30

Mecanismo (verificável a partir do código-fonte)

O par de JSWindowActor do FormAutofill (FormAutofillChild no conteúdo e FormAutofillParent no processo pai) troca mensagens. No atual mozilla-central, FormAutofillParent.receiveMessage restringe qualquer coisa fora do conjunto permitido por trás da verificação de automação:

// toolkit/components/formautofill/FormAutofillParent.sys.mjs  (fixed tree)
if (!FORM_AUTOFILL_MESSAGES.has(name) && !Cu.isInAutomation) {
  return undefined;
}

O comentário na origem afirma que os handlers Save e Remove são invocados apenas por testes:

  • FormAutofill:SaveAddress
  • FormAutofill:SaveCreditCard
  • FormAutofill:RemoveAddresses
  • FormAutofill:RemoveCreditCards

Nas builds afetadas, esses handlers exclusivos de teste eram acessíveis sem a barreira Cu.isInAutomation, pelo que um contexto de conteúdo podia alcançar caminhos do FormAutofill que nunca deveriam estar expostos a conteúdo web. A Mozilla classificou a exposição resultante como divulgação de informação de dados de preenchimento automático armazenados.

Nota sobre o alcance: getActor reside em windowGlobalChild, uma propriedade exclusiva do chrome. Scripts de página comuns nunca a veem, pelo que o modelo de ameaça é um processo de conteúdo que um atacante já influencia (um comprometimento do renderer ou um caminho de código do lado do conteúdo) a emitir a mensagem do actor, e não uma página web comum. O harness tenta o caminho de conteúdo e relata honestamente se o pai respondeu ou se a barreira se manteve.

A primitiva exata de divulgação reside no bug 2022419, que tem acesso restrito por segurança. Este harness demonstra a acessibilidade de um handler exclusivo de teste que uma build corrigida bloqueia. Passe a chamada precisa que o seu próprio relatório usou com --message.

Modelo de ameaça

Um processo de conteúdo que um atacante já influencia (um comprometimento do renderer ou um caminho de código do lado do conteúdo) envia uma mensagem do actor FormAutofill que só deveria vir do harness de teste. Numa build vulnerável, o pai responde. Numa build corrigida, a barreira de automação descarta-a.

Pré-requisitos

  1. Uma build vulnerável. Qualquer Firefox anterior à 150 ou ESR anterior à 140.10. As capturas de ecrã do write up usam o Firefox 140.9.0esr. Descarregue a build correspondente à sua plataforma a partir do arquivo oficial da Mozilla em https://ftp.mozilla.org/pub/firefox/releases/140.9.0esr/.
  2. Python com o cliente Marionette:
    pip install marionette-driver
    
  3. Um perfil descartável preenchido com dados de preenchimento automático sintéticos. Nunca use dados pessoais ou de pagamento reais.

Criar um perfil sintético

Inicie a build vulnerável com um perfil novo e o Marionette habilitado:

/path/to/firefox --marionette --no-remote --profile ./poc-profile about:blank

Em seguida, em about:preferences#privacy, adicione um endereço salvo sintético e um cartão sintético, por exemplo, nome POC TESTER, número do cartão 4111 1111 1111 1111. Estes são apenas dados de teste.

Executar

python3 poc.py                 # default handler and 127.0.0.1:2828
python3 poc.py --help          # options
python3 poc.py --message FormAutofill:SaveAddress

Alternativa via browser-toolbox

getActor é exclusivo do chrome, portanto, a partir do sandbox de conteúdo, o harness simples reporta o actor como inalcançável (ver poc-run.png). Para acionar a mensagem a partir de um contexto que realmente detém o actor, em uma build vulnerável, habilite o Browser Toolbox (devtools.chrome.enabled e devtools.debugger.remote-enabled), abra-o com Ctrl+Alt+Shift+I e, a partir do console do processo de conteúdo, obtenha o actor de windowGlobalChild e chame sendQuery com o mesmo payload sintético. Isso espelha o modelo de ameaça de processo de conteúdo comprometido sem qualquer dado real.

Resultado esperado

  • Build vulnerável: o harness alcança o actor FormAutofill a partir do conteúdo e o handler exclusivo de teste é executado. O script imprime o estado do Form Autofill retornado ou mutado, mostrando a fronteira que não deveria ser transponível.
  • Build corrigida (150 ou ESR 140.10 e posteriores): a mesma chamada retorna undefined porque Cu.isInAutomation é falso. O script reporta que a barreira está sendo aplicada.

Status de verificação

Este harness foi elaborado a partir do registro público e do código-fonte atual do mozilla-central. Ele foi executado aqui contra a build local do Firefox 140.11.0esr, que já está corrigida para CVE-2026-6765. A execução capturada está em poc-run.png: a partir do contexto de conteúdo, o actor FormAutofill não é alcançável (windowGlobalChild.getActor não é exposto ao conteúdo), portanto a fronteira do processo pai se mantém. Esse é o resultado correto e honesto em uma build corrigida.

Para observar a fronteira sendo transposta, você precisa de uma build vulnerável (Firefox anterior à 150 ou ESR anterior à 140.10, por exemplo 140.9.0esr) mais um perfil descartável populado com dados sintéticos de autofill, e você aciona a mensagem do actor a partir de um contexto de processo de conteúdo conforme a alternativa via browser-toolbox acima. Ajuste --message para a primitiva exata do seu relatório original.

Escopo e ética

Isto tem como alvo uma build baixada localmente com dados sintéticos para um writeup do próprio CVE reportado e já corrigido pelo autor. Não ataca nenhum serviço ativo ou de terceiros.

Baixar ferramenta