Aprenda a converter um shell script em binário em passos simples

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.

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

 

CURSOSCONSULTORIACONTATO

Anterior Aprenda a usar o Netcat para auditoria de segurança em Linux
Próxima Certificação em TI: seu trampolim para o mercado de trabalho

About author

Você pode gostar também

Infraestrutura TI

Testando e validando suas Roles do Ansible com o Molecule

Hoje, no blog da 4Linux, vamos falar sobre como podemos testar as nossas Roles antes de serem aplicadas no ambiente de produção. O Molecule é um projeto que permite que

DevOps

Kubernetes – Configurando um Cluster Multi-Master

Neste post vamos configurar um cluster Kuberentes Multi-Master apenas com a sua máquina. Mas antes de falarmos sobre um cluster em Kubernetes trabalhando em modo Multi-Master… Uma palavra sobre containers…

Infraestrutura TI

Como utilizar o Celery para paralelização de atividades em Python

O Celery é uma fila de tarefas assíncrona de trabalho, implementada em python, com base na passagem de mensagens distribuídas. Está focado na operação em tempo real, mas também oferece