• Like
Esteganografia: a arte de ocultar arquivos dentro de arquivos - Vanderlei Pollon
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

Esteganografia: a arte de ocultar arquivos dentro de arquivos - Vanderlei Pollon

  • 2,727 views
Published

 

Published in Technology , Art & Photos
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
2,727
On SlideShare
0
From Embeds
0
Number of Embeds
0

Actions

Shares
Downloads
39
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. Esteganografia: a arte de ocultar arquivos dentro de arquivos Vanderlei Pollon Email: vanderlei@pollon.org Website: www.pollon.org 1º Seminário de Software Livre Tchelinux - Porto Alegre, 18 e 19 de novembro de 2006
  • 2. Principais tópicos desta apresentação  Conceito de esteganografia  Exemplos antigos do uso da esteganografia  Exemplos atuais de uso da esteganografia não digital  Possibilidades futuras para a esteganografia não digital  Esteganografia em meios digitais:  Arquivos texto (.txt)  Arquivos de imagem (jpeg, jpg, bmp, png, gif, ...)  Arquivos de audio (mp3, wav, wma, ...)  Arquivos de vídeo (mpeg, avi, ...)  Pacotes TCP/IP  Arquivos binários e bibliotecas *  Sistemas de arquivos *  Ferramentas para esteganografia  Softwares para detectar esteganografia  Conclusão ➔ *não abordado neste trabalho devido à falta de tempo Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 3. Conceito de esteganografia (#1/2) Esteganografia steganós + grafia camuflada + escrita  Criptologia:  é  o  campo  científico  que  engloba  a  criptografia  (escrita  codificada  ou  cifrada) e a criptoanálise (busca da solução de um texto codificado ou cifrado).  Criptografia:  oculta  o  significado  da  mensagem,  ou  seja,  a  mensagem  é  vista  mas  não é possível compreender o seu conteúdo.  Esteganografia:  oculta    (camufla)  a  mensagem  de  forma  que  sua  existência  passa  despercebida.  Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 4. Conceito de esteganografia Principais termos (#2/2) Mensagem a ser camuflada Portador com o resultado (carrier) Arquivo capa ou recepiente Agente (software) que embute a mensagem no recepiente. Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 5. Exemplos antigos de uso da esteganografia  No século V a.c. o caso do escravo com a cabeça raspada.  Na china antiga escrevia-se as mensagens sobre seda fina, fazia-se uma bolinha, envolvia-se a bolinha com cera e o mensageiro engolia a bolinha.  Na Grécia antiga fazia-se minúsculos furos em certas letras de um texto para marcar o texto secreto.  No século XVI, Giovanni Porta descobriu uma maneira de escrever uma mensagem em um ovo cozido.  No século XVIII os ingleses utilizaram a técnica de marcar letras (com furinhos) em um jornal para evitar o pagamento das taxas de cartas.  Durante a Primeira Guerra Mundial os alemães também utilizaram a técnica de marcar certas letras com um furinho.  Durante a Segunda Guerra Mundial os alemães marcavam as letras com “tinta invisível”.  Durante a Segunda Guerra mensagens eram transmitidas em micropontos. Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 6. Exemplos atuais de uso da esteganografia não digital  Segurança monetária: para garantir a autenticidade das cédulas.  Grandes fabricantes de impressoras: para garantir o não repúdio da impressão.  Páginas html: a mensagem secreta é incluída apenas no código fonte.  Páginas html: a mensagem secreta é escrita na mesma cor do fundo. Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 7. Possibilidades futuras para a esteganografia não digital  Códigos de barras “invisíveis”.  “Assinatura” em moléculas* (visíveis apenas ao microscópio eletrônico). Todo material genético Pode ser criado um código é formado por cadeias de que associa uma letra do quatro nucleotídeos: alfabeto a cada sequência A=Adenina de três nucleotídeos: C=Citosina ACG=A G=Guanina ACT=B T=Timina CGT=C * Estudo desenvolvido por três cientistas e publicado na revista Nature em 1999. Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 8. Esteganografia em meios digitais – arquivos texto  Técnicas mais utilizadas: ➔ codificação por deslocamento de linhas verticalmente * ➔ codificação por deslocamento de palavras em textos justificados * ➔ adicionar pontuações e preposições * ➔ codificação por deslocamento de caracter de fim de linha (Codificação Característica) ➔ esteganografia online ➔ sugestão: “invente” a sua Grelha Cardano ➔ * técnica não abordada neste trabalho devido à falta de tempo Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 9. Esteganografia em meios digitais – arquivos texto Codificação por deslocamento de caracter de fim de linha (#1/2)  A técnica consiste em utilizar o espaço que sobra nas linhas do texto que não são totalmente utilizadas.  Linhas em branco também podem ser utilizadas.  A mensagem é codificada utilizando-se os caracteres “espaço” e “tab”.  Um “tab” indica o início do texto secreto.  Os bits são gravados de três em três e os conjuntos de três bits são separados por um tab (podem ser utilizados zeros para completar o último trio).  São utilizados de 0 a 7 espaços para definir o estado (on/off) dos três bits. Zero espaços = 000 Um espaço = 001 Dois espaços = 010 Tres espaços =011 Quatro espaços =100 Cinco espaços=101 Seis espaços =110 Sete espaços = 111 Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 10. Esteganografia em meios digitais – arquivos texto Codificação por deslocamento de caracter de fim de linha (#2/2)  Exemplo: Como ficaria a inserção dos caracteres abc em um texto? Tabela ASCII Caracter Decimal Hexadecimal Binário Comentário HT 09 09 0000 1001 Tabulação Horizontal Espaço 32 20 0010 0000 Espaço em branco LF 10 0A 0000 1010 Próxima linha (no linux) a 97 61 0110 0001 Letra a b 98 62 0110 0010 Letra b c 99 63 0110 0011 Letra c TBBBTTBBTBBBBBBTBTBTBBBBTBBB  T=tab B=espaço Zero espaços = 000 Um espaço = 001 Dois espaços = 010 Tres espaços =011 Quatro espaços =100 Cinco espaços=101 Seis espaços =110 Sete espaços = 111 Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 11. Esteganografia em meios digitais – arquivos texto Esteganografia online  O Spammimic  Disponível na web em https://www.spammimic.com/  Oculta uma pequena mensagem criptografada em um texto (em inglês) que parece ser um spam.  O texto é copiado e enviado ao destinatário.  O destinatário copia o texto para https://www.spammimic.com/ e solicita a decodificação para obter a mensagem secreta. Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 12. Esteganografia em meios digitais – arquivos texto Sugestão: “invente” a sua grelha de Cardano A   M A E D O I N D I O M A Cardano utilizava um sistema de grelha N D O U A S por volta do ano 1300 O P A F R I A A idéia é utilizar um arquivo de texto razoavelmente grande como portador e fazer um programa que será utilizado como grelha. Obs.: transmissor e receptor devem compartilhar o algoritmo da grelha. Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 13. Esteganografia em meios digitais – arquivos de imagem Técnicas mais utilizadas:  ➔ inserção no(s) bit(s) menos significativo(s) (LSB) ➔ máscara e filtragem (mascaramento e filtragem) * ➔ algoritmo e transformações * ➔ espalhamento espectral (spread spectrum) * ➔ * técnica não abordada neste trabalho devido à falta de tempo Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 14. Esteganografia em meios digitais – arquivos de imagem Inserção no bit menos significativo (LSB) (#1/4)  Pixel (Picture Element) – é a menor unidade de uma imagem digital a qual é possível atribuir-se uma cor.  Quanto mais pixels, maior a resolução que a imagem terá.  Cada pixel é formado por um conjunto de três elementos: verde, vermelho e azul (red-green-blue) – RGB.  Um pixel pode ser representado por uma quantidade variável de bits, chamada “profundidade”: 2,4,8,16,24,32,64,...  Profundidade 24 = true color = 24 bits para cada pixel = 3 bytes para cada pixel.  [ R ] [ G ] [ B ] = PIXEL  [ 0 – 255 ] [ 0 – 255 ] [ 0 – 255 ] = PIXEL  Se a intensidade de cada elemento variar entre 0 e 255 podemos ter 256*256*256=16.777.216 possibilidades de cores para cada pixel.  Exemplos: (red=250, green=165, blue=0) -> laranja  (255,255,0) -> amarelo; (255,255,255)-> branco; (0,0,0)-> preto Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 15. Esteganografia em meios digitais – arquivos de imagem Inserção no bit menos significativo (LSB) (#2/4)  O que é uma imagem digital? Imagem de 14 x 11 = 154 pixels ● Uma imagem é composta por vários pixels organizados em linhas e colunas.  Exemplo: uma imagem 800x600 = 800 colunas x 600 linhas = 800x600 pixels = 480.000 pixels.  Para uma profundidade de 24 bits esta imagem ocuparia um espaço de, pelo menos, 1.440.000 bytes (480.000x3).  No início de um arquivo de imagem há uma string com caracteres de controle (número de pixels do arquivo, profundidade,...). Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 16. Esteganografia em meios digitais – arquivos de imagem Inserção no bit menos significativo (LSB) (#3/4)  Uma pequena alteração nos últimos bits de cada byte que definem a cor dos pixels, implica em alterar um pouco o valor em decimal dos componentes RGB e "engana" o olho humano. 11110010,10011001,11111110 (242,153,254) (241,152,255) 11110001,10011000,11111111 Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 17. Esteganografia em meios digitais – arquivos de imagem Inserção no bit menos significativo (LSB) (#4/4)  Se utilizarmos apenas o último bit de cada byte de uma imagem de 24 bits com resolução 1024x768, teremos aproximadamente 294.912 bytes disponívies para esteganografia (1024 x 768 pixels = 786.432 pixels e 786.432 x 3 = 2.359.296 bits; logo 294.912 bytes).  Exemplo: utilizando o último bit de cada byte para camuflar a letra “a” (01100001 em ASCII) 01100111 Bytes 01100110 3 bytes = 1 pixel 10101001 originais 10101001 11001000 11001001 10100111 10100110 3 bytes = 1 pixel 10101001 10101000 01001011 01001010 01100110 Bytes 01100110 3 bytes = 1 pixel 11101001 alterados 11101001 11101001 11101001 Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 18. Esteganografia em meios digitais – arquivos de audio Técnicas mais utilizadas:  ➔ codificação/inserção do/no bit menos significativo – LSB coding * ➔ codificação de paridade – Parity coding * ➔ codificação de fase – Phase coding * ➔ espalhamento espectral - Spread spectrum * ➔ ocultação de dados no eco do audio – Echo hiding * ● Fonte:www.snotmonkey.com/work/school/405/methods.html ➔ * técnica não abordada neste trabalho devido à falta de tempo Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 19. Esteganografia em meios digitais – arquivos de vídeo Técnica mais utilizada:  ➔ espalhamento espectral - Spread spectrum * ➔ * técnica não abordada neste trabalho devido à falta de tempo Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 20. Esteganografia em meios digitais – pacotes TCP/IP Técnicas mais utilizadas:  ➔ aproveitamento dos campos não utilizados do header do pacote * ➔ alteração do número seqüencial do pacote (ISN) ➔ * técnica não abordada neste trabalho devido à falta de tempo Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 21. Esteganografia em meios digitais – pacotes TCP/IP Alteração do número seqüencial do pacote (ISN) (#1/3)  Os dados são embutidos em campos não utilizados ou opcionais do header do segmento TCP. Formato do Segmento TCP Porta de origem Porta de destino Número sequencial (ISN) Número de reconhecimento desloc reservado Tamanho da janela Checksum do seg TCP Ponteiro de dados URG Opções e preenchimento Dados – Geralmente entre 456 Bytes e 536 Bytes Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 22. Esteganografia em meios digitais – pacotes TCP/IP Alteração do número seqüencial do pacote (ISN) (#2/3)  Exemplo: como enviar, da máquina A para a máquina B, a mensagem “abc”?  Basta que transmissor e receptor definam o código e o protocolo de transmissão que será utilizado.  CÓDIGO - pode ser convencionado, por exemplo, que utilizarão o valor decimal correspondente aos caracteres da tabela ASCII Então, em decimal, devem ser transmitidos os Tabela ASCII números 97, 98 e 99 Caracter Decimal Hexadecimal Binário Comentário HT 09 09 0000 1001 Tabulação Horizontal Espaço 32 20 0010 0000 Espaço em branco LF 10 0A 0000 1010 Próxima linha (no linux) a 97 61 0110 0001 Letra a b 98 62 0110 0010 Letra b c 99 63 0110 0011 Letra c Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 23. Esteganografia em meios digitais – pacotes TCP/IP Alteração do número seqüencial do pacote (ISN) (#3/3) PROTOCOLO   o receptor disponibiliza uma porta e aguarda conexões.  são válidos apenas os pacotes SYN (de início de conexão).  o transmissor altera o ISN do pacote TCP segundo a fórmula ISN=(DEC*69241) -> 69241 é um número pré-acertado.  o transmissor envia o pacote TCP com o ISN alterado de acordo com o caracter a ser transmitido, solictando uma conexão na porta pré- acertada.  o receptor captura o pacote e obtém o caracter secreto através da fórmula DEC=(ISN/69241).  o transmissor finaliza a conexão e inicia outra com o ISN alterado. DEC ISN SYN + ISN alterado 97 6716377 98 99 6785618 6854859 A ACK RST B Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 24. Ferramentas para esteganografia em meios digitais ➔ Nome Licença Sist.Oper tipo de esteganografia URL ➔ Snow GPL L W Deslocamento de caracter de fim de linha http://www.darkside.com.au/snow/ ➔ Spammimic freeware L W Esteganografia de texto online http://www.spammimic.com ➔ JPHide freeware L W Esteganografia em imagnes - LSB http://linux01.gwdg.de/~alatham/stego.html ➔ Outguess BSD L Estego em imagens - variação do LSB http://outguess.org ➔ MP3stego ??? W Esteganografia em arquivos MP3 http://www.petitcolas.net/fabien/steganography/mp3stego/index.html ➔ MSU Stego freeware W Esteganografia em arquivos de vídeo hhttp://compression.ru/video/stego_video/index_en.html ➔ Steghide GPL L Esteganografia em imagens e audio http://steghide.sourceforge.net Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 25. Ferramentas para detectar esteganografia Nome ➔ Licença Sist.Oper esteganografia que detecta URL hexdump ➔ GPL L caracteres de fim de linha (txt) Encontrado em qualquer distribuição GNU/Linux Stegdetect ➔ BSD L W esteganografia em imagens http://www.outguess.org ➔ Stego Suite $2.000,00 W esteganografia em imagens e audio http://www.wetstonetech.com Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 26. Conclusão Se você está querendo esconder alguma coisa lembre-se que:   a utilização de texto criptografado aumenta as chances de que a mensagem não seja decodificada por terceiros;  mensagens secretas pequenas (menor que 5% do tamanho do arquivo portador) não são detectadas pelas ferramentas mais comuns (Stegdetect);  criar seu próprio método pode dificultar a detecção. Se você quer evitar que alguém esconda alguma coisa lembre-se que:   se é impossível descobrir a mensagem camuflada, sempre é possível inutilizá-la. Esteganografia: a arte de ocultar arquivos dentro de arquivos
  • 27. Perguntas? Esta apresentação estará disponível em www.pollon.org. Esta apresentação baseou-se, principalmente, no material encontrado em www.data-hiding.com. Obrigado !!! Esteganografia: a arte de ocultar arquivos dentro de arquivos