Cmd Hijack – Path transversal

Me deparei hoje com uma técnica muito interessante a qual li do pesquisador JULIAN HOROSZKIEWICZ, na qual ele descobriu um path transversal no Windows, o que na pratica permite incrementar diversos ataques e dificultar a vida do blue team.

Na prática é possível por exemplo executar um comando de ping para um IP qualquer e em seguida declarar um path chamando outro executável, dll ou qualquer outro arquivo do mesmo path, com a calculadora do Windows por exemplo. O problema que isso do ponto de vista da defesa, para quem usa sysmon por exemplo, irá ver um log de ping e um outro de chamada a calculadora.

A coisa fica mais interessante quando o pesquisador Oddvar Moe pegou a ideia do Julian e conseguiu fazer o path transversal só que usando o comando “conhost”. O processo conhost.exe corrige (Console Window Host) um problema fundamental na maneira como as versões anteriores do Windows tratam as janelas do console, fazendo com que fique operacional a função Drag & Drop com o cmd.

O problema é que quando combinado a técnica do Julian com o conhost é executado um comando que fica sem PID.

Se quiserem testar o path transversal, executem o seguinte comando no CMD de vocês:

cmd.exe /c "ping 127.0.0.1/../../../../../../../windows/system32/calc.exe"

Vejam o resultado:

Se quiserem testar usando o conhost, executem:

conhost calc.exe/../../windows/notepad.exe

Aqui na minha máquina só com o comando do Julian não obtive sucesso, mas usando com conhost, dica do Oddvar, tive êxito.

Com essa vulnerabilidade, é possível começar a imaginar diversos cenários, como bypass de parâmetros:

cmd.exe /c “mmmmmmmmmm /../../../../../../../../../../windows/explorer.exe” /root,C:\test

Imagem

E se a gente fingisse um gpupdate mas executasse um powershell:

cmd.exe /c “gpupdate /force/../../../../../../../../../../Wndows\System32\WindowsPowerShell\v1.0\powershell.exe” COMANDO POWERSHELL

É uma técnica com bastante potencial para outros ataques como bypass de antivírus por exemplo. Acredito que em breve veremos formas mais avançadas de se utilizar dessa técnica.

Dica: Quebrando senha usando recurso colaborativo

Deseja quebrar alguns hashes, mas não tem uma super máquina? Aqui está uma dica interessante: você pode usar o Colaboratory do Google para criar duas placas gráficas robustas para fazer o que é necessário. É grátis e funciona muito bem! Por padrão a máquina vem com:

  • Hashcat
  • John
  • Hydra
  • SSH (with ngrok)

Segue link direto do projeto: Clique Aqui

Para aprender a usar o Google Colab, segue um tutorial: LINK

Dica do Cas van Cooten, consultor sênior de segurança na Holanda