Dica da semana: Convertendo um Shell Script em binário.

Na dica da semana de hoje, aprenderemos como converter um shell script em binário, uma prática muito utilizada quando queremos esconder o código fonte de um determinado shell script.

Monday, 29 de June de 2015

Vamos Iniciar:

Para que criptografar um script, devemos ter alguns pacotes de compilação instalados na máquina, como make, gcc, gcc-c++ e etc. O pacote abaixo, contém todos os pacotes necessário para a compilação, instale o pacote build-essential seguindo os seguinte comando:

# apt-get install build-essential

Agora, realize o download do pacote shc, responsável por converter um shell script em binário:

# wget http://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.9.tgz

Descompate e compile o pacote shc:

# tar -xf shc-3.8.9.tgz

# cd shc-3.8.9

# make

Depois que a compilação for finalizada, o script pede para você executar o comando make test, onde o êxito desse comando não impacta no resultado final.

Crie um shell script para realizarmos os testes:

# vim script.sh

#!/bin/bash

echo “Convertendo um shell Script em Binario”

Agora basta conveter o shell script de teste da seguinte maneira:

# shc -r -v -f script.sh

Após a conversão, será gerado dois arquivos:

script.sh → Script original.

script.sh.x → É o script criptografado e compilado para o formato binário.

script.sh.x.c → É o código na linguagem C do script compilado.

Agora basta executar o script em binário:

# ./script.sh.x

Para adicionar o binário no sistema e executa-lo apenas pelo nome, com usuário com privilégios (root), envie para o diretório /sbin ou /bin:

# cp script.sh.x /sbin/script

Execute:

# script

 

Compartilhe esta página