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
DoubleStar — Uma recriação personalizada/melhorada da cadeia de exploração da APT Darkhotel "Double Star", com foco no Windows 8.1 e misturada com algumas das minhas próprias técnicas. | Kitploit
Ferramentas/GitHubGitHub/forrest-orr/doublestar
Escalada de PrivilégiosExploraçãoShellcodeExploração de Aplicações WebRed TeamingDesenvolvimento de PayloadsExploração de Binários
GitHubforrest-orr/doublestar

DoubleStar

Uma recriação personalizada/melhorada da cadeia de exploração da APT Darkhotel "Double Star", com foco no Windows 8.1 e misturada com algumas das minhas próprias técnicas.

Ver Repositório
14727há 4 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
Site

________ . . _________ __ _____ \ ____ __ _ | | | ____ / // | _____ _______ | | \ / _ \ | | | __ \ | | / __ \ _ \ \ \ \ _ __
| ` ( <_> )| | /| _\ | |
\ / / \ | | / __ _| | / /____ / _/ |/ | /|/ ___ > /___ / || (____ /|| / / / / /

Windows 8.1 IE/Firefox RCE -> Sandbox Escape -> Cadeia de Exploits para EoP de SYSTEM

root@kitploit:~
                        ______________
                        | Remote PAC | 
                        |____________|  
                               ^
                               | HTTPS

_______________ RPC/ALPC _______________ RPC/ALPC _______________ | firefox.exe | ----------> | svchost.exe | -----------> | spoolsv.exe | || || <----------- || | RPC/Pipe | _______________ | | malware.exe | <---| Execute impersonating NT AUTHORY\SYSTEM ||

~

Uso

Para executar esta cadeia de exploits, baixe a estrutura completa de release/pasta para uma máquina Windows 8.1 x64 sem patches e carregue um destes dois arquivos .html enquanto estiver conectado à internet:

  • CVE-2019-17026\Forrest_Orr_CVE-2019-17026_64-bit.html - via Firefox v65-69 64 bits.
  • CVE-2020-0674\Forrest_Orr_CVE-2020-0674_64-bit.html - via Internet Explorer 11 64 bits (Modo de Proteção Reforçada habilitado).

O RCE inicial pode ser executado por meio do IE ou do FF e resultará na execução de um processo cmd.exe na sua sessão de usuário com privilégios de NT AUTHORY\SYSTEM.

Os exploits individuais foram testados com sucesso no seguinte contexto:

  • CVE-2020-0674 - IE8 64 bits e WPAD no Windows 7 x64, IE11 64 bits e WPAD no Windows 8.1 x64.
  • CVE-2019-17026 - Firefox 65-69 (64 bits) no Windows 7, 8.1 e 10 x64.

Observe que, embora os exploits individuais em si possam funcionar em várias versões do Windows, a cadeia completa só funcionará no Windows 8.1.

~

Visão Geral

Embora esta cadeia de exploits faça uso de dois exploits 0day (agora corrigidos), ela também contém uma técnica de escape de sandbox e EoP que, em 5/4/2021, ainda não foram corrigidas e permanecem viáveis para integração em futuras cadeias de ataque atualmente.

O grupo APT Darkhotel (acreditado como originário da Coreia do Sul) lançou uma campanha contra executivos de negócios chineses e japoneses e funcionários do governo por meio de uma combinação de spear phishing e invasão de redes de hotéis de luxo no início de 2020. Os exploits que eles usaram (CVE-2020-0674 e CVE-2019-17026, juntos apelidados de "Double Star") eram pequenas variações 0day de exploits antigos/existentes de 2019: especificamente, bugs de UAF no mecanismo JavaScript legado (jscript.dll) e bugs de aliasing no mecanismo IonMonkey do Firefox.

O que tornou o uso desses 0day interessante foi além da capacidade deles de alcançar RCE por meio dos navegadores Internet Explorer e Firefox: o CVE-2020-0674 em particular (um UAF no mecanismo legado jscript.dll) é explorável em qualquer processo no qual código JS legado possa ser executado via jscript.dll. No final de 2017, o Google Project Zero publicou uma postagem de blog intitulada "aPAColypse now: Explorando o Windows 10 em uma Rede Local com WPAD/PAC e JScript" [1].

Esta pesquisa trouxe à tona um vetor de ataque muito interessante que (na época) afetava todas as versões do Windows a partir do 7: o serviço WPAD (ou "WinHTTP Web Proxy Auto-Discovery Service") contém uma funcionalidade antiga para atualizar configurações de proxy por meio de um arquivo "PAC". Qualquer usuário que possa se comunicar com o serviço WPAD (executando dentro de um processo svchost.exe como LOCAL SERVICE) via RPC pode coagí-lo a baixar um arquivo PAC de uma URL remota contendo código JS responsável por definir a configuração de proxy correta para uma URL fornecida pelo usuário. Notavelmente, o mecanismo legado jscript.dll é usado para analisar esses arquivos PAC. Isso abriu um vetor de ataque no qual qualquer processo (independentemente de privilégios limitados de usuário ou até mesmo sandboxing) poderia se conectar ao serviço WPAD local via ALPC e coagí-lo a baixar de uma URL remota um arquivo PAC malicioso contendo um exploit de jscript.dll. Isso resultaria em execução de código no contexto de LOCAL SERVICE.

A Darkhotel pegou esse conceito e o usou como seu escape de sandbox após obter RCE via Firefox ou Internet Explorer. O próximo passo em sua cadeia de ataques não é claro: parece que eles de alguma forma elevaram seus privilégios de LOCAL SERVICE para SYSTEM e prosseguiram com a execução de seu malware nesse contexto. Em toda a análise da cadeia de ataques Darkhotel Double Star, não consegui encontrar uma explicação detalhada de como eles fizeram isso; no entanto, é seguro presumir que a técnica deles não precisava ter sido um exploit 0day. Processos iniciados pela conta LOCAL SERVICE recebem o privilégio SeImpersonate por padrão e, portanto, podem elevar seu contexto de segurança caso consigam coagir uma conexão privilegiada a si mesmos via named pipes ou ALPC.

É provável que o grupo APT Darkhotel tenha usado o Rotten Potato para seu EoP a partir de LOCAL SERVICE, pois esta era a técnica mais simples e comum em uso generalizado há vários anos (além de ter sido a técnica usada na pesquisa "aPAColypse now" do Google Project Zero). No entanto, optei por uma técnica mais robusta/moderna: impersonação de named pipe de uma conexão RPC coagida do Print Spooler [2]. Essa técnica combinou uma interface RPC antiga, popular entre Red Teamers para a coleta de TGT em ambientes com delegação irrestrita habilitada (também conhecida como "Printer Bug"), com um ataque estilo impersonation/Rotten Potato adaptado para elevação de privilégio local.

Além disso, em vez de mirar o Windows 7, decidi focar no Windows 8.1 devido ao desafio apresentado por suas mitigações de segurança aprimoradas, como LFH não determinístico, ASLR de alta entropia e Control Flow Guard (CFG).

~

CVE-2020-0674

Arquivo PAC malicioso contendo o exploit de UAF do CVE-2020-0674 - baixado para o serviço WPAD svchost.exe (LOCAL SERVICE) por meio de gatilho RPC. Contém o shellcode do estágio três (Spool Potato EoP). Este exploit também pode servir a um propósito duplo como vetor de ataque inicial de RCE por meio do IE11 64 bits.

_______________ RPC _______________ CVE-2020-0674 ________________ | firefox.exe | -----> | svchost.exe | ---------------> | Spool Potato | || || | shellcode | |______________| ~

CVE-2019-17026

RCE por confusão de tipos JIT/IonMonkey do Firefox 64 bits. Representa o vetor de ataque inicial quando um usuário visita uma página da web infectada com uma versão vulnerável do Firefox. Este componente contém um shellcode de estágio um (egg hunter) e de estágio dois (escape de sandbox de WPAD), sendo este último eficaz apenas no Windows 8.1 devido a detalhes de interface RPC IDL codificados para WPAD.

_______________ JIT spray ______________ DEP bypass _______________________ | firefox.exe | -----------> | Egg hunter | ------------> | WPAD sandbox escape | |___________| | shellcode | | shellcode (heap) | |________| |___________________|

~

Payloads

Esta cadeia de exploits possui três payloads de shellcode, encontrados neste repositório em Payloads\Compiled\JS em sua forma de shellcode codificado em JavaScript:

  • Estágio um: shellcode egg hunter (ASM).
  • Estágio dois: shellcode de escape de sandbox de WPAD (DLL em C, sRDI para shellcode).
  • Estágio três: shellcode de elevação de privilégio Spool Potato (DLL em C, sRDI para shellcode).

Quando o IE é usado como vetor de ataque inicial de RCE, apenas os shellcodes dos estágios dois e três são necessários. Quando o FF é usado como vetor de ataque inicial de RCE, todos os três são usados.

Também incluí vários shellcodes adicionais para fins de teste (um shellcode MessageBoxA e WinExec). Observe que, ao usá-los, no caso do Firefox CVE-2019-17026, o shellcode deve ser representado como um Uint8Array prefixado pelo seguinte egg QWORD: 0x8877665544332211. No caso do CVE-2020-0674, o shellcode deve ser representado como um array DWORD.

Observe também que, ao usar um payload WinExec ou MessageBoxA em conjunto com o Firefox CVE-2019-17026, você deve primeiro ajustar o nível de conteúdo do sandbox no "about:config" para 2.

~

Créditos

maxpl0it - por escrever a análise inicial e o PoC para o CVE-2019-17026 com foco no sistema operacional Linux, e por escrever a análise inicial e o PoC para o CVE-2020-0674 com foco em IE8/11 no Windows 7 x64.

0vercl0k - por documentar os detalhes internos do IonMonkey em relação a aliasing e ao GVN.

HackSys Team - por dicas sobre o serviço WPAD e depuração de JS de baixo nível.

itm4n - pela pesquisa original sobre a combinação do bug de impressora RPC com impersonação de named pipe.

~

Links

[1] https://googleprojectzero.blogspot.com/2017/12/apacolypse-now-exploiting-windows-10-in_18.html [2] https://itm4n.github.io/printspoofer-abusing-impersonate-privileges/

Baixar ferramenta