Mais jogos no WuGames.ioPatrocinadoDescubra jogos de navegador grátis — jogue na hora, sem download nem cadastro.Jogar

Detector de Tipo de Arquivo

Detecte tipo de arquivo analisando magic bytes. Encontre tipo MIME real e extensão de arquivo. Verifique autenticidade de arquivo. Detector de tipo de arquivo gratuito.

Upload
Arraste e solte um arquivo aqui
ou clique para navegar
Escolha um arquivo para detectar seu tipo

Sobre o Detector de Tipo de Arquivo

Esta ferramenta detecta o tipo de arquivo real analisando magic bytes (assinaturas de arquivo) em vez de confiar em extensões de arquivo. Carregue qualquer arquivo para descobrir seu verdadeiro tipo MIME e extensão recomendada. Útil para verificar autenticidade de arquivo, detectar arquivos renomeados ou identificar arquivos desconhecidos. Todo o processamento acontece no seu navegador para privacidade completa.

Como funciona um detector de tipo de arquivo sem a extensão?

Detectores reais de tipo de arquivo leem os primeiros bytes do arquivo — chamados número mágico ou assinatura de arquivo — em vez de confiar na extensão. A maioria dos formatos binários começa com um padrão de bytes único: PNG começa com 89 50 4E 47 0D 0A 1A 0A, JPEG com FF D8 FF, PDF com 25 50 44 46 (que é ASCII para %PDF) e ZIP com 50 4B 03 04 (PK mais bytes de versão). O detector compara esses bytes com um banco de assinaturas conhecidas e retorna a melhor correspondência. Essa abordagem é muito mais confiável que a detecção baseada em extensão porque usuários podem renomear arquivo.exe para arquivo.txt, mas não conseguem facilmente alterar os bytes mágicos embutidos sem corromper o arquivo. A técnica está documentada em padrões como RFC 2046 (MIME) e fundamenta ferramentas como o comando file(1) do Unix.

Por que meu arquivo tem a extensão errada mas ainda abre corretamente?

Aplicativos modernos frequentemente ignoram a extensão e inspecionam o conteúdo real. Quando você dá duplo clique em um arquivo, o sistema operacional usa a extensão como primeiro palpite para escolher um aplicativo, mas o próprio aplicativo lê os bytes mágicos para decidir como analisar o conteúdo. Então um JPEG renomeado para foto.png ainda abrirá em qualquer visualizador de imagens porque o visualizador detecta o cabeçalho JPEG FF D8 FF e troca seu analisador. A extensão importa principalmente para a camada de associação de arquivos do SO e para usuários navegando em pastas. Por isso também um anexo .pdf malicioso pode ser na verdade um .exe — o SO pode iniciar um leitor de PDF esperando conteúdo PDF válido, mas se o Windows estiver configurado para ocultar extensões e o arquivo for fatura.pdf.exe, pode executar como código.

O que são tipos MIME e como se relacionam com tipos de arquivo?

Tipos MIME (Multipurpose Internet Mail Extensions, definidos em RFC 2045–2049 e registrados via RFC 6838) são strings padronizadas como image/png, application/pdf ou text/html que descrevem o formato de um arquivo para uso em cabeçalhos HTTP, anexos de e-mail e APIs web. Cada tipo MIME tem uma categoria de nível superior (text, image, audio, video, application, multipart, message, model, font) e um subtipo. Detectores de tipo de arquivo geralmente retornam tanto o nome do formato legível quanto o tipo MIME para que o resultado possa ser usado diretamente no código: definir um cabeçalho Content-Type em uma resposta web, escolher um ícone de arquivo ou rotear o arquivo para o processador correto. A IANA mantém o registro oficial dos tipos MIME — mais de 2000 estão registrados.

Quando devo detectar o tipo de arquivo em vez de confiar na extensão?

Sempre detecte por conteúdo ao lidar com uploads de usuários, processar anexos de e-mail, escanear malware ou construir qualquer sistema onde segurança importe. Extensões são metadados controlados pelo usuário e podem estar erradas por acidente (Windows oculta extensões por padrão, então usuários renomeiam descuidadamente) ou por intenção maliciosa (atacantes disfarçam executáveis como imagens ou documentos). Detecte por extensão apenas para dicas de UI de baixo risco — escolher um ícone em um navegador de arquivos, ordenar uma pasta ou adivinhar um aplicativo inicial. Aplicações web que recebem upload de conteúdo de usuário devem rejeitar arquivos cujo MIME detectado não corresponda à extensão declarada, ou armazenar o tipo detectado e servir arquivos com os cabeçalhos Content-Type e Content-Disposition corretos.

Detector de Tipo de Arquivo — Detecte tipo de arquivo analisando magic bytes. Encontre tipo MIME real e extensão de arquivo. Verifique autenticidade d
Detector de Tipo de Arquivo

Quais tipos de arquivo são mais difíceis de detectar com confiabilidade?

Formatos de texto simples têm as assinaturas mais fracas porque consistem principalmente de caracteres ASCII sem cabeçalho fixo. Distinguir entre CSV, TSV, JSON, YAML, XML, Markdown e código-fonte muitas vezes requer análise estatística ou detecção de esquema — verificando delimitadores comuns, chaves balanceadas ou as regras de indentação do YAML. Arquivos UTF-8 podem começar com uma Byte Order Mark (EF BB BF), mas é opcional. Formatos de contêiner como ZIP, OOXML (.docx, .xlsx), JAR e EPUB compartilham a mesma assinatura PK porque OOXML e similares são tecnicamente arquivos ZIP com layout interno específico. Detectores devem ler o diretório central do ZIP para encontrar arquivos como [Content_Types].xml ou META-INF/MANIFEST.MF para refinar a classificação. Arquivos criptografados, por design, parecem ruído aleatório.

Um arquivo pode ter múltiplos tipos válidos ou ser híbrido?

Sim — arquivos polyglot são deliberadamente criados para serem válidos em dois ou mais formatos simultaneamente. Um exemplo clássico é GIFAR (GIF+JAR), um arquivo que carrega como imagem em um navegador, mas executa como arquivo Java em uma JVM, usado em ataques web iniciais. Polyglots PDF/JPEG e PDF/ZIP também existem porque PDF tolera dados finais enquanto ZIP varre de trás para frente do final do arquivo. Estes não são bugs em nenhum formato isolado, mas exploits de tolerâncias de parser sobrepostas. Além dos polyglots, formatos de contêiner como Matroska (MKV) e ISO BMFF (MP4) podem conter muitos codecs, então o tipo de arquivo apenas reduz o invólucro — os fluxos reais de áudio e vídeo requerem inspeção mais profunda.

Quão preciso é o MIME sniffing em navegadores, e qual é o risco de segurança?

Navegadores historicamente realizaram MIME sniffing agressivo — sobrepondo o cabeçalho Content-Type do servidor inspecionando as primeiras centenas de bytes da resposta. Isso era útil quando servidores configuravam cabeçalhos incorretamente, mas se tornou um desastre de segurança: um arquivo HTML servido com image/png ainda podia ser interpretado como HTML e executar scripts, permitindo ataques de injeção de conteúdo. A correção é o cabeçalho de resposta X-Content-Type-Options: nosniff (definido no padrão WHATWG fetch), que força os navegadores a honrar o Content-Type declarado. Navegadores modernos também restringem o sniffing em muitos contextos. Detectores de tipo de arquivo do lado do servidor complementam isso garantindo que o conteúdo enviado realmente corresponda ao seu tipo declarado antes do armazenamento.

Qual é a diferença entre formato de arquivo, contêiner e codec?

Um formato de arquivo é o layout em disco (ordem de bytes, cabeçalhos, seções de metadados, locais de payload). Um contêiner é um tipo específico de formato projetado para envolver fluxos de dados de mídia sem ditar como esses fluxos são codificados — exemplos incluem MP4, MKV, OGG, WebM e AVI. Um codec é o algoritmo que comprime e descomprime as amostras reais de áudio ou vídeo dentro do contêiner — exemplos incluem H.264, H.265, VP9, AV1 para vídeo e AAC, MP3, Opus, FLAC para áudio. O mesmo contêiner pode conter muitos codecs, e o mesmo codec pode viver em muitos contêineres. A detecção de tipo de arquivo identifica o contêiner com confiabilidade a partir de bytes mágicos, mas geralmente precisa analisar metadados internos (o átomo moov em MP4, o cabeçalho EBML em MKV) para enumerar os codecs e faixas dentro.