Originalmente publicado em 16 de novembro de 2016 por Daniel Moreno

Este artigo é sobre a ferramenta pyJoiner, desenvolvida para auxiliar os estudos de pentest.

O que é o pyJoiner?

O pyJoiner é um script em python que simula um Exe Joiner, na realidade ele se assemelha mais a um arquivo auto-extrator SFX do que um Exe Joiner, mas na realização de um pentest, o importante é o resultado final e não se um script pertence a categoria ‘A’ ou ‘B’.

O pyJoiner foi desenvolvido para demonstrar que com poucas linhas pode ser criado um simulador de Exe Joiner.

O que é um Exe Joiner?

O Exe Joiner é um software que permite criar um arquivo com a união de outros dois, desta forma, podemos juntar uma foto a um documento de texto, e até mesmo dois arquivos executáveis, sendo que o arquivo criado executará os dois programas.

Qual a utilidade de um Exe Joiner para o pentest?

O Exe Joiner permite a criação de Cavalos de Tróia, ou seja, um arquivo malicioso (backdoor, rootkit, meterpreter gerado pelo Metasploit) é unido com um arquivo legítimo, como por exemplo, um jogo.

O usuário ao executar o suposto jogo, também executa o arquivo malicioso, permitindo o acesso ao sistema do usuário.

Como utilizar o pyJoiner?

O pyJoiner pode ser utilizado, de acordo com as orientações abaixo:

1 – O pyJoiner somente irá funcionar em ambiente Windows.

2 – Inicialmente deverá ser realizada a instalação padrão do python 3.4.4 no sistema (obtido em https://www.python.org/downloads/release/python-344/).

3 – Realize a instalação do pyInstaller via linha de comando (Figura 1).

figura-1

4 – Obtenha o pyJoiner.zip em XXXXXXXXXXX. Na pasta pyJoiner.zip, estarão os seguintes arquivos: mushroom.icoicon.ico e pyJoiner.py. (Figura 2).

figura-2

4 – Inicie o pyJoiner no IDLE do python, clicando com o botão direito sobre o arquivo pyJoiner.py > Edit with IDLE (Figura 3).

figura-3

5 – Execute o pyJoiner selecionando as opções Run > Run Module (Figura 4).

figura-4
figura-5

6 – A interface gráfica do pyJoiner será iniciada. Clique no botão File1 e File2 para selecionar, respectivamente o primeiro e o segundo arquivos que serão unidos. Qualquer arquivo poderá ser selecionado.

A figura 5 mostra o arquivo malicioso.exe (arquivo malicioso) e o arquivo jogo.exe (arquivo legítimo).

7 – Clique no botão Join (Figura 5) para unir os arquivos. Será gerado o arquivo py_file.pyw (contendo o código fonte usado para unir os arquivos) e a pasta output (Figura 6).

figura-6

8 – Dentro da pasta output será criado o arquivo py_file.exe (Figura 7).

figura-7

9 – Ao executar o arquivo py_file.exe será executado, simultaneamente, os arquivos selecionados na Figura 4 (malicioso.exe e jogo.exe). Esse arquivo deverá ser enviado ao usuário. Não é necessário que o usuário tenha python instalado.

10 – O arquivo final (py_file.exe) não foi detectado como malicioso por 35 antivírus, incluindo o Kaspersky, Avast, AVG, etc (Figura 8). O teste foi realizado no dia 23/05/2016. Portanto, caso o leitor venha utilizar o pyJoiner em uma data posterior a essa, talvez o arquivo final seja detectado como viral.

figura-8

Dica: O pyJoiner extrai os arquivos no diretório %TEMP% (execute o comando cd %TEMP% no cmd.exe do Windows para descobrir a localização dos arquivos temporários do seu sistema). Caso se deseje testar o pyJoiner em seu próprio sistema, remova os arquivos output_file1.exe e output_file2.exe do diretório %TEMP%.

Visits: 155