
Canivete suíço para criptografia de payloads, ofuscação e conversão para arrays de bytes – tudo em um único comando (14 formatos de saída suportados)! ☢️
Canivete Suíço para criptografia de payloads, ofuscação e conversão em arrays de bytes – tudo em um único comando!
Ele suporta 3 algoritmos de criptografia, 4 algoritmos de codificação / ofuscação e 14 formatos de saída.

Baixe o binário compilado ou compile o código-fonte Go.
Exemplo:
# Convert .bin file into C bytes array with XOR encryption and IPv4Fuscation
./ByteCaster -i shellcode.bin -f c -x xor -k 'Test123' -e ipv4
# Convert .bin file into base64 string with XOR encryption
./ByteCaster -i shellcode.bin -x xor -k 'Test123' -e base64

NOTA: A sequência de operações é sempre a mesma:
- Criptografia
- Codificação
- Formatação da saída
-i / --input <path> [obrigatório]
Arquivo de entrada binário.
-f / --format <value> [opcional, padrão: raw]
Formato de saída dos dados processados. Isso gera os dados finais como um array de bytes na linguagem de programação selecionada. A saída é sempre enviada para o STDOUT.
Para evitar a aplicação de qualquer formatação na saída, use o valor raw (padrão).
Valores disponíveis: raw, hex, c, go, powershell, php, js, rust, csharp, nim, zig, ruby, python, java
-x / --enc-alg <value> + -k / --enc-key <string> [opcional]
Criptografia dos dados. Ambos os parâmetros, o algoritmo de criptografia e a string da chave, devem ser fornecidos.
Valores disponíveis: xor, aes256, rc4
Todos os algoritmos de criptografia suportados são descritos em detalhes abaixo.
-e / --encoding <value> [opcional]
Codificação dos dados. Frequentemente usada como ofuscação para confundir a análise ou alterar o nível de entropia dos dados.
Valores disponíveis: base32, base64, ipv4, mac
Todos os algoritmos de codificação suportados são descritos em detalhes abaixo.
xor [0% overhead]Criptografia XOR simples típica (a^b). Cada byte recebe um XOR com o byte da chave.
aes256 [28 bytes de overhead]AES-256-GCM com a chave de 32 bytes derivada da função hash SHA-256.
Formato do texto cifrado: nonce || ciphertext. O nonce é armazenado nos primeiros 12 bytes, seguido pelos dados criptografados e pelo tag de autenticação (o tag é anexado automaticamente pelo GCM dentro do texto cifrado).
Implementação Go padrão de criptografia AES:crypto/aes
Implementação Go padrão de derivação de chave SHA-256: crypto/sha256
rc4 [0% overhead]Implementação Go padrão de criptografia RC4: crypto/rc4
base32 [60–65% de overhead]Implementação Go padrão de codificação Base32: encoding/base32
base64 [33%-37% de overhead]Implementação Go padrão de codificação Base64: encoding/base64
ipv4 [100%-300% de overhead]Esta é conhecida como a técnica IPv4Fuscation. Cada byte de saída é convertido em um octeto do endereço IPv4 como um número decimal.
Exemplo de dados:
{ 0xe9, 0x36, 0x17, 0xbb, 0xbd, 0x7f, 0x22, 0x10 }
A saída (array de bytes) fica exatamente assim na memória:
233.54.23.187\0189.127.34.16\0 ...
NOTA:
- Cada endereço IP termina com um byte nulo!
- Se o número de bytes não for divisível por 4, os bytes ausentes adicionados ao último endereço IP são 255.
mac [200% de overhead]Esta é conhecida como a técnica MACFuscation. Cada byte de saída é convertido em um octeto do endereço MAC como um número hexadecimal (minúsculas).
Exemplo de dados:
{ 0xe9, 0x36, 0x17, 0xbb, 0xbd, 0x7f, 0x22, 0x10, 0x84, 0xA7, 0x6f, 0xcc }
A saída (array de bytes) fica exatamente assim na memória:
e9:36:17:bb:bd:7f\022:10:84:a7:6f:cc\0
NOTA:
- Cada endereço MAC termina com um byte nulo!
- Os números hexadecimais são em minúsculas.
- Se o número de bytes não for divisível por 6, os bytes ausentes adicionados ao último endereço MAC são 255 (
ff).