Como encriptar um Shell Script com SHC
Neste texto, vou ensinar a baixar, instalar e usar SHC, um programa que encripta o código do seus shell scritps.
Antes de mais nada, eu gostaria de dizer que encriptar seus códigos não é uma prática recomendável. O ideal é documentar todo o script, de forma que qualquer pessoa o possa entender facilmente. Códigos fonte devem ser o mais acessíveis possível – já a informação com a qual eles lidam, é que deve ser restringida.
Se você precisa usar informações, usualmente confidenciais, como senhas, de forma automática, então deve procurar outra solução.
Hmmmm… você ainda está aqui?
Tenha em mente, contudo, que um script codificado através do SHC pode não ser legível para usuários comuns (creio que este seja o seu objetivo) — Contudo, uma pessoa que tenha conhecimento do seu funcionamento pode extrair o código criado pelo software.
Em tempo, SHC quer dizer SHell script Compiler.
Antes de mais nada, eu gostaria de dizer que encriptar seus códigos não é uma prática recomendável. O ideal é documentar todo o script, de forma que qualquer pessoa o possa entender facilmente. Códigos fonte devem ser o mais acessíveis possível – já a informação com a qual eles lidam, é que deve ser restringida.
Se você precisa usar informações, usualmente confidenciais, como senhas, de forma automática, então deve procurar outra solução.
Hmmmm… você ainda está aqui?
Tenha em mente, contudo, que um script codificado através do SHC pode não ser legível para usuários comuns (creio que este seja o seu objetivo) — Contudo, uma pessoa que tenha conhecimento do seu funcionamento pode extrair o código criado pelo software.
Em tempo, SHC quer dizer SHell script Compiler.
Download e instalação
O software de que vamos tratar aqui, foi desenvolvido por Francisco Javier R. Garcia e você vai encontrar sua versão mais atualizada aqui.
Vamos começar com o download do código fonte do programa:
Vamos começar com o download do código fonte do programa:
Uma vez baixado, desempacote e instale:
Verifique se tudo correu bem:
Crie um shell script de exemplo
Para testar, você pode usar seu próprio shell script ou pegar este aqui:
rode o script:
Encriptando o seu shell script com shc
Use o comando, a seguir, para fazer o trabalho:
isto deverá gerar os seguintes arquivos:
Dos quais:
alea.sh
é o seu script originalalea.sh.x
é o seu script em formato binário e encriptadoalea.sh.x.c
é o código fonte do script original em linguagem C
Após transformar o código do seu script, originalmente escrito em Bash para um script em C, o shc o compila, gerando o executável
Veja como testar:
alea.sh.x
.Veja como testar:
Execute o seu script encriptado
Determine uma data de expiração pro seu script
Com o uso do shc, é possível evitar que o seu script seja executado após uma certa data. Se for feita a tentativa de executar um script que já tenha expirado, uma mensagem de erro será exibida na tela.
Crie um novo script, usando a opção “
Crie um novo script, usando a opção “
shc -e
“, que permite a entrada de uma data de expiração (que deve ser fornecida no formato dd/mm/yyyy
:
Veja o que acontece quando alguém tenta executar um script vencido:
Você pode criar a sua própria mensagem de expiração, para o caso de redistribuir o seu script para pessoas que não falem inglês, por exemplo. Use a opção
-m
para isto.