O segredo sempre fez parte da história da humanidade. Eu escrevi artigo sobre a introdução histórica da criptografia e a necessidade de trocar informações secretas sempre existiu e existirá. E é claro que hoje temos a tecnologia de ponta a nosso favor.
Alias, recomendo que assistam o série O Arsenal dos Espiões Nessa série são usadas várias técnicas dos espiões.
Nesse artigo falo de esteganografia e eu quero demonstrar como usando a manipulação de bits, podemos fazer uso dos bits menos significativos de um arquivo e assim “preencher” o espaço com uma mensagem ou um arquivo.
Recomendo também a leitura do artigo https://danieldonda.com/criptografia-introducao/
Como nessa foto. Em uma palestra minha em 2019 na Microsoft sobre o tema LGPD onde eu fiz uma introdução sobre a metodologia de um ataque hacker a uma corporação. Uma simples foto, mas essa aparente e inofensiva foto possui um arquivo .ZIP embutido nela.
Foto Original
Foto Manipulada
O arquivo zip contido na foto da direita é o é o HashCalc da Slavasoft https://www.slavasoft.com/hashcalc/index.htm
Como ocultar arquivo em uma foto ?
Eu usei o https://github.com/ragibson/Steganography diretamente no Google Cloud Console
LSBSteg usa esteganografia de bit menos significativo para ocultar um arquivo nas informações de cor de uma imagem RGB (.bmp ou .png).
Para cada canal de cor (R, G, B) em cada pixel da imagem, o software sobrescreve os bits menos significativos do valor da cor com os dados de nosso arquivo. Para tornar a recuperação desses dados mais fácil, também oculta o tamanho do arquivo de entrada nos primeiros canais de cor da imagem.
git clone https://github.com/ragibson/Steganography
cd Steganography
python3 setup.py install
Argumentos da linha de comando:
-h, –hide Para ocultar dados em um arquivo de imagem
-r, –recover Para recuperar dados de um arquivo de imagem
-a, –analyze Imprime quantos dados podem ser ocultados em uma imagem [padrão: False]
-i, –input TEXT Caminho para uma imagem bitmap (.bmp ou .png)
-s, –secret TEXT Caminho para um arquivo a ser escondido na imagem
-o, –output TEXT Caminho para um arquivo de saída
-n, –lsb-count INTEIRO Quantos LSBs usar [padrão: 2]
-c, –compression INTEGER RANGE 1 (melhor velocidade) a 9 (menor tamanho de arquivo) [padrão: 1]
–help Mostra esta mensagem e sai.
wget https://danieldonda.com/wp-content/uploads/2021/06/EuNaMsft-1024x684.png
wget https://www.slavasoft.com/zip/hashcalc.zip
stegolsb steglsb -h -i EuNaMsft.png -s hashcalc.zip -o fotocomsegredo.png -n 2
Como recuperar o arquivo ?
stegolsb steglsb -r -i foto.png -o arquivosecreto.zip -n 2
Seja o primeiro a comentar