Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
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.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-52886 — # Notepad++ CVE-2026-52886 — travessia de caminho starts_with() em backupFilePath do session.xml (GHSA-rqfm-pw34-r7j6) | Kitploit
Ferramentas/GitHubGitHub/v3s9er/cve-2026-52886
Análise de VulnerabilidadesExploraçãoExfiltração de Dados
GitHubv3s9er/cve-2026-52886

CVE-2026-52886

# Notepad++ CVE-2026-52886 — travessia de caminho starts_with() em backupFilePath do session.xml (GHSA-rqfm-pw34-r7j6)

Ver Repositório
4há 26 diasAinda 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

Path Traversal: Bypass da Verificação de Prefixo starts_with()

Notepad++ — Leitura Arbitrária de Arquivos via Traversal de backupFilePath em session.xml

Aviso

  • GHSA: GHSA-rqfm-pw34-r7j6
  • CVE: CVE-2026-52886
  • Gravidade: Moderada
  • Afetado: < v8.9.6.4
  • Corrigido: v8.9.7
  • Commit da Correção: 7e66f36
  • Arquivo Afetado: PowerEditor/src/Notepad_plus.cpp (restauração de sessão — validação de backupFilePath)
  • Plataforma: Windows 11 Pro x64
  • Privilégio Necessário: Usuário padrão (acesso de escrita a session.xml)
  • Pesquisador: v3s9er (RAGE)
  • Divulgado: 2026-06-05
  • Resumo

    O Notepad++ valida o atributo backupFilePath durante a restauração de sessão usando uma comparação de prefixo de string bruta via std::wstring::starts_with(), sem normalizar o caminho primeiro. Um caminho forjado que começa com o prefixo legítimo do diretório de backup, mas contém sequências de traversal ..\, passa na verificação, porém resolve para um local arbitrário quando o SO abre o arquivo — carregando o conteúdo de qualquer arquivo legível em uma aba do editor.

    Visão Técnica

    Ao iniciar com o modo snapshot (backup) habilitado, o Notepad++ restaura a sessão anterior a partir de session.xml. Espera-se que o backupFilePath de cada entrada esteja dentro do diretório de backup do aplicativo. A verificação de integridade apenas confere se o caminho armazenado começa com a string esperada do diretório de backup. Como a comparação ocorre na string bruta, não normalizada, um atacante adiciona o prefixo legítimo no início e então sai do diretório com sequências ..\.

    Causa Raiz

    A verificação testa um prefixo textual; o uso abre o caminho resolvido pelo SO. Os dois divergem quando ..\ está presente.

    OperaçãoOrigemComportamento
    VERIFICAÇÃOString bruta backupFilePathstarts_with(backupDir) — passa quando há correspondência de prefixo
    USOCaminho resolvido pelo SOSequências ..\ colapsam para um local arbitrário

    Cenário de Ataque

    Pré-condição: Acesso de escrita a session.xml, modo snapshot/backup habilitado.

    Passos:

    1. Sobrescreva session.xml, injetando um backupFilePath forjado: <backupDir>\..\..\..\..\Users\victim\.ssh\id_rsa
    2. O prefixo <backupDir>\ satisfaz starts_with(), então a validação passa.
    3. Inicie o Notepad++ (a restauração de sessão é acionada).
    4. O SO colapsa as sequências ..\; o arquivo alvo é aberto.
    5. O conteúdo do arquivo arbitrário é carregado em uma aba do editor.

    Resultado: Exfiltração somente leitura — o conteúdo do arquivo alvo fica visível no editor, incluindo arquivos sensíveis como chaves SSH, arquivos de configuração de ambiente e armazenamentos de credenciais.

    Impacto

    • Tipo: Leitura Arbitrária de Arquivos (Path Traversal)
    • Administrador Necessário: Não
    • Prompt UAC: Não
    • Exposição: Chaves privadas SSH, arquivos .env / de configuração, armazenamentos de credenciais — qualquer arquivo legível pelo usuário
    • CWE: CWE-22 (Limitação Incorreta de um Nome de Caminho a um Diretório Restrito)

    Prova de Conceito

    Requisitos:

    • Notepad++ v8.9.6.2 portátil x64 com configuração de backup/snapshot
    • Acesso de escrita a session.xml
    • Um payload backupFilePath: prefixo do diretório de backup + sequências de traversal ..\ + caminho do arquivo alvo

    Injetar o caminho forjado e iniciar o aplicativo carrega o arquivo alvo em uma aba do editor.

    Análise do Patch

    A correção (commit 7e66f36) realiza a normalização adequada do caminho antes da validação, de modo que as sequências ..\ são colapsadas antes da comparação de prefixo — o caminho verificado e o caminho usado agora estão de acordo.

    Referências

    • GHSA-rqfm-pw34-r7j6
    • CVE-2026-52886
    • Commit 7e66f36
    • Lançamento do Notepad++ v8.9.7
    Baixar ferramenta