ファイル拡張子識別ツール

次へ

ファイル名または拡張子を入力すると、ツールが拡張子、ファイルタイプ名、MIMEタイプを表示します。.dat.bin.m4aが何なのかをすぐに調べられ、invoice.pdf.exeのような二重拡張子も、開く前にすぐ気づけます。

ファイルの種類を識別する方法

  1. 1

    ファイル名または拡張子を入力する

    `report.dat`のような完全なファイル名、`.png`のような拡張子だけ、またはファイル名で終わるURLを入力できます。

  2. 2

    レポートを確認する

    ツールは拡張子、ファイルタイプ名、MIMEタイプを表示します。不明な拡張子はそのまま正直に表示されます。

  3. 3

    二重拡張子に注意する

    ファイル名が`invoice.pdf.exe`の場合、レポートには`exe`と表示されます。実行ファイルを隠すよくある手口なので、そのようなファイルは慎重に扱ってください。

  4. 4

    早見表を活用する

    下の表は一般的なフォーマットの先頭バイト(マジックナンバー)をまとめたものです。hexビューアでファイルを確認できます。

一般的なフォーマットのマジックバイト

フォーマット 先頭バイト(16進) ASCII
PNG 89 50 4E 47 .PNG
JPEG FF D8 FF ...
GIF 47 49 46 38 GIF8
PDF 25 50 44 46 %PDF
ZIP 50 4B 03 04 PK..
7z 37 7A BC AF 7z..
RAR 52 61 72 21 Rar!
MP3 49 44 33 / FF FB ID3 / …
ELF 7F 45 4C 46 .ELF
EXE 4D 5A MZ

拡張子だけでは中身の証明になりません。拡張子が.pngなのにファイルが4D 5Aで始まっている場合、それは誰かが名前を変更したWindows実行ファイルです。開かないでください。hexビューアで任意のファイルの先頭バイトを確認できます。

攻撃者が好む拡張子

拡張子 悪用される理由
.scr スクリーンセーバーファイルはWindows上で任意のコードを実行します
.iso ディスクイメージは最近のWindowsで自動的にマウントされます
.lnk ショートカットはPowerShellのワンライナーを実行できます
.html 攻撃者が認証情報を盗むページを埋め込めます
.pdfの中に.zip 二重拡張子による検知回避

このツールが役立つ場面

  • 誰かがresume.pdf.exeを送ってきた場合、レポートが実際のexe拡張子を表示します。
  • song.mp3をダウンロードして、本来のMIMEタイプを知りたい場合。不安なら先頭バイトを上の表と比較してください。
  • 変な拡張子のファイルが詰まったディレクトリを引き継ぎ、1つずつ識別したい場合。
  • 古いシステムが.datを出力する場合、ツールは標準フォーマットではないと表示するので、hexビューアで開いて確認してください。

よくある間違い

  • 拡張子だけを信じること。Windowsは既知の拡張子を既定で隠すため、invoice.pdf.exeはエクスプローラー上ではinvoice.pdfと表示されます。
  • .txtを安全だと思い込むこと。.txtファイルでも、名前を変更しただけのマクロ入りOfficeドキュメントである可能性があり、誤って開けばスクリプトが実行されることもあります。
  • バイナリ=危険、テキスト=安全と決めつけること。悪意のある.js.ps1スクリプトは純粋なテキストです。

よくある質問

いいえ。ツールが見るのは入力したファイル名または拡張子だけです。ファイルの中身は読まず、別の拡張子に改名されたファイルを検出することもできません。

どのフォーマットにも先頭の数バイトに署名があります(PNGなら89 50 4E 47)。ファイルをhexビューアで開き、先頭バイトを上の表と比較してください。拡張子だけでは証明になりません。

はい、いとも簡単に。.jpgファイルは.exeに、あるいはその逆に名前を変更できます。ツールは実際の(最後の)拡張子を表示するので、photo.jpg.exeのような二重拡張子にはすぐ気づけます。

テキストファイルは人が読むことを目的としており、どのエディタで開いても安全です。バイナリファイルには印刷できないバイト(画像、実行ファイル、アーカイブ)が含まれるため、本来対応するアプリケーションでのみ開くべきです。

関連ツール

このツールは他の言語でも利用できます