Esteganografia

Esteganografia – Esconder zip numa imagem

Hoje, é dia de falar esteganografia. Para quem não sabe a esteganografia é uma técnica para esconder conteúdo dentro de outro conteúdo.

Antigamente, a técnica era utilizada em quadros, cartas, etc. Textos eram escondidos em imagens para que o conteúdo original não pudesse ser identificado por ninguém.

Esteganografia (do grego “escrita escondida”) é o estudo e uso das técnicas para ocultar a existência de uma mensagem dentro de outra, uma forma de segurança por obscurantismo. Esteganografia é o ramo particular da criptologia que consiste em fazer com que uma forma escrita seja camuflada em outra a fim de mascarar o seu verdadeiro sentido. É importante frisar a diferença entre criptografia e esteganografia. Enquanto a primeira oculta o significado da mensagem, a segunda oculta a existência da mensagem.

Para testarmos a técnica vamos utilizar uma imagem qualquer. Neste exemplo, vou utilizar uma imagem do Mickey Mouse, com o nome: “mickeymouse.jpg”, que podem ver a seguir:

Mickey Mouse
Mickey Mouse

 

Esta é uma imagem normal, sem qualquer conteúdo escondido. Agora, para escondermos um ficheiro zip dentro da imagem, vamos fazer o seguinte:

1 – Criar um ficheiro .txt e escrever qualquer coisa nele. No meu caso, crio um ficheiro com o nome hidden.txt e dentro coloco: “https://danieljesus.pt/2019/03/24/esteganografia-esconder-zip-numa-imagem/”. Agora, tenho 2 ficheiros na pasta: “mickeymouse.jpg” e “hidden.txt”:

P340 - 1
P340 – 1

 

2 – Pela linha de comandos, vamos comprimir o ficheiro “hidden.txt” e vamos chamar-lhe “steganographyp340.zip”:

  1. $ zip steganographyp340.zip hidden.txt
$ zip steganographyp340.zip hidden.txt
P340 - 2
P340 – 2

 

3 – Agora, que temos o nosso hidden.txt “zippado”, com o nome “steganographyp340.zip”, pegamos na imagem “mickeymouse.jpg” e fazemos um merge dos ficheiros e chamamos-lhe “stegano_out.png”. Vamos então, pela linha de comandos, executar:

  1. $ cat ./mickeymouse.jpg ./steganographyp340.zip > stegano_out.png
$ cat ./mickeymouse.jpg ./steganographyp340.zip > stegano_out.png
P340 - 3
P340 – 3

 

Neste momento, temos o nosso ficheiro escondido na imagem stegano_out.png, que como podem ver no print anterior, o PC detecta como imagem normal…

Agora, para conseguirem ver o conteúdo escondido da imagem, basta fazer o processo inverso, ou seja, tão simples como descomprimir a imagem.

  1. $ unzip ./stegano_out.png
$ unzip ./stegano_out.png

O resultado será algo assim:

P340 - 4
P340 – 4

 

Claro que, se o sítio para onde vão fazer o upload recriar a imagem no upload, o ficheiro zip perde-se no processo, no entanto, vários lugares não fazem o processo de recriação da imagem, mantendo assim o hidden.zip dentro do mesmo.

Stegano Out
Stegano Out

 

Para testarem o processo, basta guardar a imagem acima e fazer o “unzip”.



Full Stack Developer | Security Researcher

Deixe um comentário

pt_PTPT
en_USEN pt_PTPT