MIME-typdetektor
Filändelser ljuger, vem som helst kan döpa om malware.exe till photo.jpg. Det tillförlitliga sättet att veta vad en fil verkligen är, är att läsa dess första byte, där de flesta format placerar en signatur (“magiskt tal”) som identifierar formatet oavsett namn. Den här detektorn läser signaturen på vilken släppt fil som helst och returnerar den kanoniska MIME-typen plus den vanligaste ändelsemappningen, så att du kan verifiera att en uppladdning är det klienten påstår.
Så fungerar MIME-detektering
-
1
Släpp en fil
Vilken storlek som helst; endast de första 4–16 KB läses.
-
2
Läs magiska byte
De flesta format börjar med en känd signatur.
-
3
Matcha mot en signaturdatabas
Detektorn använder samma regler som `file(1)` / libmagic.
-
4
Returnera MIME + ändelse
Visar medietypen enligt RFC 6838, den kanoniska ändelsen och en läsbar etikett.
Exempel på signaturer
| Format | Första byte (hex) | MIME |
|---|---|---|
| JPEG | FF D8 FF |
image/jpeg |
| PNG | 89 50 4E 47 0D 0A 1A 0A |
image/png |
| GIF87a | 47 49 46 38 37 61 |
image/gif |
| GIF89a | 47 49 46 38 39 61 |
image/gif |
| WebP | 52 49 46 46 ... 57 45 42 50 |
image/webp |
25 50 44 46 (%PDF) |
application/pdf |
|
| ZIP / JAR / ODT / DOCX | 50 4B 03 04 |
application/zip (eller specifik) |
| gzip | 1F 8B 08 |
application/gzip |
| MP4 (ISO BMFF) | 00 00 00 XX 66 74 79 70 |
video/mp4 |
| MP3 | 49 44 33 eller FF FB |
audio/mpeg |
| FLAC | 66 4C 61 43 |
audio/flac |
| WAV | 52 49 46 46 ... 57 41 56 45 |
audio/wav |
| ELF (Linux-binär) | 7F 45 4C 46 |
application/x-executable |
| Windows PE (exe) | 4D 5A |
application/x-msdownload |
Varför ändelser inte räcker
- Säkerhet. En uppladdad
resume.pdfsom egentligen är en.exekringgår naiva ändelsefilter. MIME-detektering på serversidan är lösningen. - Content-Type-avvikelse. En webbläsare kan skicka fel MIME för en uppladdning; att läsa magiska byte berättar vad datan faktiskt är.
- Återställda säkerhetskopior. Ändelser går ibland förlorade eller tas bort; innehållssniffning låter dig identifiera vad varje fil är.
Den ZIP-baserade familjen
Många moderna format är ZIP-arkiv under huven, de börjar med PK\x03\x04 som vilken ZIP som helst:
- Office Open XML:
.docx,.xlsx,.pptx. - OpenDocument:
.odt,.ods,.odp. - EPUB:
.epub. - Android APK:
.apk. - Java JAR:
.jar.
För att skilja dem åt tittar detektorn in i ZIP-filen efter en manifestfil ([Content_Types].xml för OOXML, mimetype för ODF / EPUB).
Användbara kombinationer
- Första 512 byte täcker de flesta formatsignaturer.
- Första 4 KB täcker ZIP-baserade format där manifestet ligger längre in.
- Första 16 KB täcker gränsfall som vissa multimediebehållare.
Inte perfekt
- Vanliga textfiler har inga magiska byte. Detektorn faller tillbaka på heuristik (är det giltig UTF-8? ser det ut som JSON eller XML?).
- Krypterade / obfuskerade filer kan se ut som slumpmässiga byte utan någon igenkännbar signatur.
- Formattvetydighet.
audio/wavochvideo/avibörjar båda medRIFF; detektorn kontrollerar den sekundära identifieraren (WAVEkontraAVIfyra byte senare).
Vanliga frågor
Nej. Detekteringen körs i din webbläsare, endast de första KB läses och matchas mot en signaturdatabas på klientsidan. Inget lämnar din enhet.
Eftersom OOXML, ODF, EPUB och JAR alla börjar med ZIP-signaturen. Detektorn tittar in för att hitta det formatspecifika manifestet och returnera den mer specifika MIME-typen (application/vnd.openxmlformats-...).
Det fångar naiv omdöpning, en .exe omdöpt till .jpg visas som körbar utifrån sina magiska byte. Sofistikerade angripare bäddar in nyttolaster i riktiga mediefiler eller använder polyglotfiler som matchar flera signaturer; de besegrar enkel detektering.
Vanlig text har inga magiska byte. Detektorn kör heuristik: giltig UTF-8? giltig JSON? XML-deklaration? CSV-struktur? Annars faller den tillbaka på text/plain.
Signaturdatabasen är liknande (härledd från Unix libmagic-regler). Resultaten bör stämma för vanliga format. Obskyra eller anpassade format kan skilja sig.
Relaterade verktyg
DMARC-postkontrollverktyg
Fråga DMARC TXT-posten för varje domän och analysera policy, justeringsmetod, rapportadresser samt genomförandeprocent i lättläst form.
Domänålderskontroll
Kontrollera när ett domännamn först registrerades samt dess ålder i år, månader och dagar med hjälp av WHOIS-data från registret.
Domän till IP-adress
Omvandla varje domännamn till dess IPv4-adresser (A) och IPv6-adresser (AAAA) och kopiera dem till valfritt nätverksverktyg.
E-postkontroll för dataintrång
Kontrollera om en e-postadress har förekommit i ett känt dataintrång, se i vilka läckor den exponerades och ta reda på vad du bör byta först.
CIDR-kalkylator
Beräkna nätverksadress, broadcastadresser, värdomfånget, användbara IP-adresser och subnätmask för varje IPv4-CIDR-block.
Detektor för webbläsarinformation
Se vad din webbläsare rapporterar: user agent, engine, version, OS, enhetstyp, skärmupplösning, tidszon, språk och publik IP.
Verktyget finns på andra språk
- Detector de tipo MIME [ES]
- Détecteur de type MIME [FR]
- MIMEタイプ検出器 [JA]
- Detector de Tipo MIME [PT]
- เครื่องตรวจจับประเภทไฟล์ MIME [TH]
- Bộ phát hiện loại MIME [VI]
- أداة كشف نوع ملفات MIME [AR]
- MIME-Typ-Detektor [DE]
- MIME 타입 감지기 [KO]
- Detektor Jenis MIME [ID]
- MIME-type detector [NL]
- Detektor typu MIME [PL]
- Определение MIME-типа файла [RU]
- MIME Tür Tespit Cihazı [TR]
- MIME类型检测器 [ZH]
- MIME Type Detector [EN]
- Rilevatore di tipo MIME [IT]