Toda foto, todo PDF e todo documento Word que você já salvou carrega um segundo arquivo dentro de si. Números de série de câmera, coordenadas de GPS com precisão de poucos metros, o nome de usuário de quem clicou em salvar, a versão exata do software que gerou o arquivo. Aprender a usar o ExifTool é aprender a ler essa camada oculta, e bastam uns quatro comandos para você tirar proveito real dele.
O ExifTool é a ferramenta que investigadores, analistas forenses e jogadores de CTF acionam primeiro quando um arquivo cai na frente deles, e é item obrigatório em qualquer trabalho sério de teste de invasão. Este guia cobre a leitura de metadados, a caça às tags que importam, a extração em lote em um diretório inteiro e a parte que a maioria dos artigos pula: remover metadados corretamente antes de publicar qualquer coisa. O capítulo de EXIF e metadados do nosso curso de esteganografia percorre as mesmas tags com arquivos que você pode desmontar na prática.
Resumo: o ExifTool é um leitor e editor de metadados gratuito em linha de comando, escrito por Phil Harvey, atualmente na versão 13.59. Instale no Kali com sudo apt install libimage-exiftool-perl e rode exiftool arquivo.jpg para exibir tudo. Use -G -s para uma saída agrupada e legível, -r -csv para diretórios inteiros e -all= para apagar metadados. A escrita cria um backup _original a menos que você passe -overwrite_original, e PDFs pedem um passo extra: as edições do ExifTool em PDF continuam reversíveis até você regravar o arquivo com o qpdf.
O Que É o ExifTool?
O ExifTool é um aplicativo de linha de comando e uma biblioteca Perl, livres e gratuitos, para ler, escrever e editar metadados em praticamente qualquer tipo de arquivo. Foi escrito e continua sendo mantido por Phil Harvey, e a versão 13.59 saiu em 27 de maio de 2026. Ele lê EXIF, GPS, IPTC, XMP, JFIF, GeoTIFF, ICC Profile, Photoshop IRB, FlashPix, ID3 e mais, além dos blocos proprietários que Apple, Canon, DJI, GoPro, Nikon, Sony e outras duas dezenas de fabricantes enterram nos próprios arquivos.
É essa última parte que o separa de qualquer visualizador de EXIF online. Esses serviços interpretam as tags padrão e param ali. O ExifTool sabe que um drone DJI grava altitude de voo e ângulo do gimbal em um bloco privado, e que um iPhone guarda um identificador de sequência que liga fotos tiradas com segundos de diferença.
O nome não faz justiça à ferramenta. EXIF é apenas um padrão de metadados entre vários, e a maior parte do que o ExifTool encontra em um PDF ou um DOCX não é EXIF nenhum. Trate-o como um leitor universal de metadados que por acaso leva o nome da sua primeira função.
Minha opinião sincera: não perca tempo com as interfaces gráficas. Elas expõem uma fração dos recursos, e a linha de comando exige no máximo quatro opções para tudo o que vem a seguir.
Como Instalar o ExifTool no Kali, macOS e Windows
No Kali, no Parrot e em qualquer sistema derivado do Debian, o pacote leva o nome da biblioteca Perl e não do binário, o que confunde muita gente:
sudo apt update && sudo apt install libimage-exiftool-perl
O Kali distribui atualmente a 13.55, próxima o bastante da versão upstream para tudo o que você vai fazer. O binário instalado é o exiftool, não libimage-exiftool-perl, então se apt search exiftool devolver um nome de pacote que parece errado, é o esperado.
No macOS, o Homebrew resolve em uma linha (a fórmula estava na 13.55 quando este texto foi escrito), e existe um instalador .pkg oficial no site do projeto, se você preferir:
brew install exiftool
Quem usa Windows baixa um executável autônomo em exiftool.org que não exige instalação de Perl. Baixe o zip de 64 bits, extraia e renomeie exiftool(-k).exe para exiftool.exe para que rode a partir do terminal em vez de pausar esperando uma tecla. Mantenha a pasta exiftool_files ao lado do executável quando movê-lo para o PATH, porque o exe não roda sem ela. Os dois passos estão nas instruções de instalação, e quase todo mundo esquece um deles.
Confirme a instalação e veja o que você realmente tem:
exiftool -ver
Como Usar o ExifTool: Os Comandos Que Vale a Pena Memorizar
Todo comando do ExifTool segue um único padrão: exiftool [opções] [-TAG ...] ARQUIVO_ou_DIRETÓRIO. As opções mudam a apresentação, -TAG escolhe o que ler e -TAG=valor grava. Só com o nome do arquivo, ele despeja todas as tags que consegue encontrar, formatadas para leitura humana:
exiftool foto.jpg
Em uma foto de smartphone atual isso dá 150 linhas ou mais, ou seja, ilegível. Três opções resolvem. -G prefixa cada tag com o grupo dela, -s passa para nomes curtos de tag que você pode copiar direto para outro comando, e -a mostra tags duplicadas em vez de escondê-las:
exiftool -G -s -a foto.jpg
A saída fica assim (resumida), com o grupo entre colchetes:
[File] FileType : JPEG
[EXIF] Make : Apple
[EXIF] Model : iPhone 14 Pro
[EXIF] DateTimeOriginal : 2026:03:14 09:22:41
[EXIF] GPSLatitudeRef : North
[EXIF] GPSLatitude : 38 deg 43' 15.62"
[EXIF] GPSLongitudeRef : West
[EXIF] GPSLongitude : 9 deg 8' 22.10"
[Composite] GPSPosition : 38 deg 43' 15.62" N, 9 deg 8' 22.10" W
Repare que as tags de GPS ficam no grupo EXIF e que GPSPosition é uma tag Composite: o ExifTool a calcula a partir das coordenadas brutas e das referências N/S e E/W. Use -G1 em vez de -G se quiser rótulos mais finos, como [GPS] e [IFD0].
Para extrair uma tag em vez de todas, nomeie-a com um hífen na frente. Nomes de tag não diferenciam maiúsculas de minúsculas, o que poupa muita tentativa e erro:
exiftool -GPSPosition -Model -DateTimeOriginal foto.jpg
Outras duas opções merecem lugar. -u extrai tags desconhecidas, isto é, campos cuja estrutura o ExifTool reconhece, mas para os quais não tem nome, e -ee extrai metadados de dados embutidos, como a trilha de GPS com marcação de tempo dentro de um vídeo de drone ou de câmera veicular. São elas que revelam aquilo que alguém presumiu que ninguém iria procurar:
exiftool -a -u -g1 suspeito.jpg
exiftool -ee3 -p '$gpslatitude, $gpslongitude, $gpstimestamp' voo.mp4
Na prática, o primeiro é o comando que eu rodo em qualquer arquivo que pareça interessante. O agrupamento -g1 junta as tags relacionadas, então uma anomalia em um bloco privado de fabricante salta aos olhos em vez de passar batida em um muro alfabético. O segundo imprime uma linha por ponto de GPS, o que transforma um vídeo em um registro de trajeto. Quando você quer mesmo tudo, a documentação do ExifTool sugere acrescentar -ee3 -api RequestAll=3, porque a leitura padrão pula algumas fontes lentas ou embutidas.
GPS, Números de Série e o Que os Metadados Entregam
Vazamentos de metadados não são teóricos, e o caso clássico vale conhecer porque se desenrolou em minutos, não em meses. Em dezembro de 2012, a Vice publicou uma foto do fugitivo John McAfee tirada com um iPhone 4S. As coordenadas de GPS nos dados EXIF o colocavam à beira da piscina de um restaurante perto de Río Dulce, na Guatemala. McAfee primeiro alegou que ele mesmo tinha adulterado os dados EXIF e depois admitiu, no dia seguinte, que estava mesmo na Guatemala. Ninguém invadiu nada. Alguém baixou a imagem e leu as tags.
Estes são os campos que pesam em uma investigação:
- GPSLatitude, GPSLongitude, GPSPosition. Coordenadas compostas, muitas vezes precisas o suficiente para apontar um prédio.
-c "%+.6f"as converte em graus decimais com sinal (+38.721006, -9.139472) que você cola direto em um mapa. - SerialNumber e LensSerialNumber. Esses campos ligam fotos separadas a um mesmo corpo físico de câmera, e é assim que conjuntos de imagens anônimas acabam conectados entre si.
- DateTimeOriginal contra FileModifyDate. O primeiro é quando o obturador disparou, o segundo quando o arquivo foi gravado por último. Uma diferença entre eles costuma indicar só uma cópia ou edição. Um DateTimeOriginal posterior à data do arquivo merece um olhar mais atento: manipulação é uma explicação, relógio da câmera errado é outra.
- Author, Creator e Producer. Em PDFs e documentos do Office, esses campos costumam guardar um nome de usuário interno que segue o formato de contas da empresa, o que alimenta direto um palpite de e-mail.
- Software. O aplicativo exato e a versão que gravou o arquivo. Em um documento de uma organização alvo, é uma olhada gratuita no parque de software dela.
Documentos são o alvo subestimado aqui. Um PDF exportado de uma estação de trabalho registra com frequência o caminho local completo de onde foi salvo, o que entrega um nome de usuário, uma estrutura de diretórios e às vezes o nome de um compartilhamento de rede em uma única linha. Encontrar esses documentos é uma habilidade à parte (um Google dork como site:alvo.example filetype:pdf é o ponto de partida usual), e nossa seleção de ferramentas OSINT gratuitas encaixa essa etapa na sequência de reconhecimento mais ampla.
exiftool -Author -Creator -Producer -Company -Title relatorio.pdf
Um alerta sobre precisão de GPS: as coordenadas são gravadas pelo aparelho, não verificadas por ele. Um celular com sinal fraco em ambiente fechado pode errar por cem metros ou gravar coordenadas de um local anterior. Trate metadado de GPS como uma pista forte, nunca como prova isolada.
Extração em Lote em um Diretório
Um arquivo é só o aquecimento. O valor real aparece quando você aponta o ExifTool para uma pasta com algumas centenas de imagens baixadas de um site alvo e faz uma pergunta ao conjunto todo.
Percorra os subdiretórios com -r e exporte em CSV para ordenar e filtrar em uma planilha:
exiftool -r -csv -c "%+.6f" -GPSPosition -Model -DateTimeOriginal -Author ./downloads > metadata.csv
O -c "%+.6f" faz diferença aqui: sem ele, as coordenadas chegam à planilha como texto em graus, minutos e segundos que nenhuma ferramenta de mapa importa direito.
O atalho -common pega um conjunto padrão razoável de tags quando você ainda não sabe o que procura:
exiftool -common -csv ./downloads > visao-geral.csv
A saída em JSON funciona do mesmo jeito e é mais fácil de mandar para um script:
exiftool -r -json ./downloads > metadata.json
A opção que transforma esse despejo em investigação de verdade é -if, que filtra arquivos por condição antes de processá-los. Mostre só as imagens que carregam dados de GPS:
exiftool -r -if '$GPSLatitude' -GPSPosition -FileName ./downloads
Na prática, em algumas centenas de imagens de imprensa do site de uma empresa, esse comando costuma devolver só um punhado de arquivos, e são esses que valem análise. Todo o resto passou por um CMS que apagou as tags no upload. No sentido inverso, filtrar por modelo de câmera ou por intervalo de datas reduz um conjunto grande às fotos tiradas em um único aparelho ou durante uma única semana.
Restrinja o processamento por tipo de arquivo com -ext quando a pasta tiver formatos misturados:
exiftool -r -ext jpg -ext png -GPSPosition ./downloads
Como Remover Metadados com o ExifTool (Sem Se Enganar)
A metade defensiva desta ferramenta importa tanto quanto a outra, e é aqui que estão as arestas afiadas. Remover todos os metadados de uma imagem leva uma opção só:
exiftool -all= foto.jpg
Leia com atenção. A sintaxe é uma atribuição de tag sem nada do lado direito, então -all= significa "defina todas as tags como vazias". Esqueça o sinal de igual e você pediu para ler todas as tags em vez de apagá-las, o que falha em silêncio em vez de dar erro.
Quatro detalhes decidem se a operação funcionou de fato:
- O ExifTool guarda o seu original. Por padrão ele renomeia o arquivo intocado para
foto.jpg_originale grava a versão limpa no lugar. Publique o errado dos dois e você distribuiu justamente o arquivo que queria higienizar. Adicione-overwrite_originalquando confiar no comando, ou limpe depois com-delete_original(que pede confirmação;-delete_original!não pede). - A data do arquivo também é uma tag. Adicionar
-Ppreserva a data de modificação do sistema de arquivos, o que você pode querer ou não. Sem isso, a escrita atualiza o horário. - Algumas coisas sobrevivem de propósito. Em um JPEG,
-all=mantém o segmento Adobe APP14, porque removê-lo pode mudar a renderização da imagem, mas apaga o perfil de cor ICC, então as cores podem mudar. O segmento Adobe não guarda dado pessoal nenhum, mas vai continuar aparecendo quando você reler o arquivo. - Verifique, não presuma. Rode
exiftool -G -ano resultado. Qualquer coisa além das linhas[ExifTool],[File]e[Composite]e de uma eventual entrada[APP14]merece uma segunda olhada.
PDF é a armadilha. O ExifTool edita PDFs com uma atualização incremental, então exiftool -all= relatorio.pdf esconde o Author e o Title antigos, mas os deixa dentro do arquivo, e o próprio ExifTool avisa que as tags apagadas podem ser recuperadas. Qualquer pessoa as traz de volta com exiftool -PDF-update:all= relatorio.pdf. Para apagá-las de verdade, regrave o arquivo em seguida com qpdf --linearize relatorio.pdf limpo.pdf, como recomenda a documentação de PDF do ExifTool, e confira o limpo.pdf de novo.
Remoção seletiva costuma ser a melhor escolha. Apagar todas as tags de uma foto profissional destrói as informações de copyright e de perfil de cor que o fotógrafo quer manter. Apague apenas os dados de localização:
exiftool -gps:all= foto.jpg
Ou apague tudo menos um grupo que você quer preservar, com a sintaxe de exclusão de hífen duplo. Manter o perfil ICC é a escolha mais comum, já que evita que as cores mudem:
exiftool -all= --icc_profile:all foto.jpg
Não existe opção de simulação (dry run). O mais próximo disso é o -o, que grava o resultado em outro local e deixa a origem intacta, para você inspecionar a saída antes de se comprometer. E se você já gravou no próprio arquivo sem -overwrite_original, o -restore_original devolve os backups:
exiftool -all= -o limpos/ foto.jpg
exiftool -restore_original foto.jpg
Para limpar uma árvore de diretórios inteira em uma passada, sem backups e preservando as datas:
exiftool -r -all= -overwrite_original -P ./para-publicar
Um aviso para levar a sério: rode esse comando em um diretório que você não pretendia mexer e não existe desfazer, porque -overwrite_original faz exatamente o que diz. Teste primeiro em uma cópia. Toda vez.
ExifTool em Forense de CTF
Em desafios de forense de CTF, o ExifTool é o segundo comando que você digita depois de file. Flags ficam guardadas em um campo Comment, em um UserComment, em uma tag Artist ou em uma propriedade XMP personalizada com frequência suficiente para que pular essa etapa custe uma hora.
O fluxo que resolve a maioria dos desafios com imagem é curto:
- Identifique o tipo real do arquivo.
file challenge.pngcompara os bytes mágicos com a extensão. Uma divergência já é um achado por si só. - Leia todas as tags, inclusive as estranhas.
exiftool -a -u -g1 challenge.pngtraz à superfície duplicatas e campos desconhecidos que oexiftoolsimples esconde. - Extraia qualquer conteúdo binário encontrado.
exiftool -b -ThumbnailImage challenge.jpg > thumb.jpgretira a miniatura embutida. Fotos editadas às vezes mantêm uma miniatura anterior à edição, o que é uma categoria de vazamento por si mesma. - Passe para a estrutura do arquivo. Se os metadados estiverem limpos,
binwalkestringsvêm em seguida, depois a análise de planos de bits.
O passo três merece mais atenção do que recebe. Uma miniatura JPEG é gerada uma vez e nem sempre regenerada após uma edição, então o pequeno preview pode mostrar aquilo que o recorte ou o desfoque da imagem completa deveria esconder. Isso já queimou pessoas reais, não só jogadores de CTF.
Quando os metadados voltam limpos, esse silêncio também é informação. Significa que a carga está em outro lugar do arquivo, e nosso guia de detecção em esteganografia retoma a trilha a partir dali.
Quando o ExifTool Foi a Vulnerabilidade
Interpretar arquivos não confiáveis é trabalho perigoso, e o ExifTool já pagou o preço. A CVE-2021-22204 era uma falha no tratamento do formato DjVu que permitia execução de código arbitrário quando a ferramenta interpretava uma imagem forjada. Afetava as versões 7.44 a 12.23, foi corrigida na 12.24, e o NIST atribuiu a ela nota 7,8 (alta). Ela consta do catálogo de vulnerabilidades exploradas conhecidas da CISA, o que significa que foi usada em ataques reais e não apenas demonstrada em laboratório.
Duas consequências práticas decorrem disso.
Mantenha sua instalação atualizada, especialmente se o ExifTool roda automaticamente em arquivos enviados por usuários. Muitas aplicações web o chamam no servidor para gerar miniaturas ou ler dimensões de imagem, e uma versão de cinco anos atrás dentro de uma imagem de contêiner é uma exposição real.
Analise arquivos genuinamente suspeitos em uma máquina virtual isolada e sem acesso à rede. Isso vale para qualquer interpretador, não só para este. O reflexo de rodar uma ferramenta sobre uma amostra no instante em que ela chega é justamente o reflexo que vale perder.
Considerações Legais e Éticas
Lembrete essencial: sempre obtenha autorização por escrito antes de testar qualquer sistema. Ler os metadados de um arquivo que você baixou é passivo, mas o que você faz com a localização de uma pessoa física não é uma questão técnica, e pode gerar responsabilidade criminal.
A análise de metadados ocupa uma posição jurídica mais suave do que a maioria das técnicas ofensivas, porque ler um arquivo que você já possui não toca o sistema de ninguém. O risco migra da lei de crimes informáticos para a legislação de privacidade e proteção de dados, e essa mudança pega muita gente de surpresa.
Onde Isso É Legítimo
- Arquivos dos seus próprios dispositivos e arquivos que um cliente forneceu como parte de um contrato assinado
- Documentos publicados no próprio site de um alvo, quando um escopo de OSINT os cobre por escrito
- Desafios de CTF e ambientes de treino feitos para isso
- Higienizar a sua própria produção antes de publicar, que é a aplicação mais útil aqui
O limite que importa: geolocalizar uma pessoa privada a partir de uma foto que ela publicou, e agir com base nessa localização, é perseguição, por mais pública que a foto fosse. Um trabalho de OSINT autorizado documenta seus alvos e seus limites antes do primeiro comando. Se o seu escopo não menciona, então não está no escopo.
Perguntas Frequentes
Para que serve o ExifTool?
Para ler, escrever e apagar metadados em arquivos de imagem, vídeo, áudio e documentos. Fotógrafos a usam para editar em lote tags de copyright e legenda, analistas forenses para estabelecer quando e onde um arquivo foi criado, investigadores de OSINT para extrair coordenadas de GPS e nomes de autor, e jogadores de CTF para achar flags escondidas em campos de tag.
Como instalar o ExifTool no Kali Linux?
Rode sudo apt update && sudo apt install libimage-exiftool-perl. O pacote leva o nome da biblioteca Perl, mas instala o comando exiftool. O Kali distribui atualmente a versão 13.55. Confirme a instalação com exiftool -ver.
Como remover todos os metadados com o ExifTool?
Rode exiftool -all= arquivo.jpg. O sinal de igual sem nada depois atribui valor vazio a cada tag. O ExifTool guarda o arquivo intocado como arquivo.jpg_original a menos que você adicione -overwrite_original. Em PDFs, complete com qpdf --linearize, porque as edições do ExifTool em PDF são reversíveis. Verifique o resultado lendo de novo o arquivo limpo.
O ExifTool é seguro?
É uma ferramenta livre bastante confiável, mas interpreta entrada não confiável, o que traz risco. A CVE-2021-22204 permitia execução de código por meio de um arquivo DjVu forjado nas versões 7.44 a 12.23 e aparece no catálogo de vulnerabilidades exploradas conhecidas da CISA. Mantenha atualizado e analise amostras suspeitas dentro de uma máquina virtual isolada.
Qual a diferença entre dados EXIF e metadados?
EXIF é um padrão de metadados entre vários, projetado para imagens de câmera, que cobre configurações de exposição, horários e GPS. Metadados é a categoria mais ampla e inclui IPTC, XMP, perfis ICC, tags de áudio ID3 e propriedades de documentos. O ExifTool lê todos eles, apesar do nome.
Publicar uma foto em rede social remove os metadados?
A maioria das grandes plataformas apaga o EXIF no upload, mas não confie nisso. O comportamento varia por plataforma, por método de envio e por tipo de arquivo, mensagens diretas e anexos frequentemente escapam desse processamento, e a própria plataforma pode guardar o original. Apague os metadados você mesmo antes de enviar, se isso importa.
O ExifTool tem opção de simulação (dry run)?
Não. O equivalente seguro é o -o, que grava a cópia editada em um novo arquivo ou diretório (exiftool -all= -o limpos/ foto.jpg) e deixa a origem intacta. Sem -overwrite_original, toda gravação no próprio arquivo também mantém um backup _original que o -restore_original consegue devolver.
Como copiar metadados de um arquivo para outro?
Use -TagsFromFile: exiftool -TagsFromFile origem.jpg -gps:all destino.jpg copia só as tags de GPS, e sem o -gps:all todas as tags graváveis são copiadas. É o jeito padrão de restaurar metadados que um editor ou conversor apagou.
Seus Próximos Passos
Saber como usar o ExifTool se resume a quatro comandos que você vai digitar por anos: exiftool -G -s -a arquivo para ler um arquivo isolado do jeito certo, exiftool -r -if '$GPSLatitude' -GPSPosition pasta para achar os arquivos interessantes em um conjunto grande, exiftool -b -ThumbnailImage arquivo > thumb.jpg para recuperar um preview embutido, e exiftool -all= -overwrite_original arquivo para limpar a sua própria produção (mais uma passada de qpdf nos PDFs). Todo o resto está na documentação oficial, densa mas completa.
Ler nomes de tag em um guia não é o mesmo que encontrar um que importa. Desmonte um arquivo real no lab Stego Hunt e depois construa o método de investigação em volta com o curso OSINT for Hackers. Os dois rodam no navegador, sem instalação local. Comece com o plano gratuito da HackerDNA, sem cartão de crédito.
Parte da série Teste de Invasão
Artigos relacionados: