.SER

SER ファイル

Java Serialized Object File
質問する
クイック回答

SERファイルは、一般的にJavaシリアル化オブジェクト(Javaプログラムの1つ以上のオブジェクトをディスクに保存したバイナリスナップショット)です。これを開くには、それを作成した特定のアプリケーションが必要です。GeneMapperのユーザーは、GeneMapper内で直接開きます。未知のSERファイルを任意のJavaコードでデシリアライズしないでください。これはリモートコード実行の既知のベクトルです。

開発元: Sun Microsystems / Oracle Corporation カテゴリ: データファイル オープンスタンダード MIME: application/x-java-serialized-object
対応OS Windows macOS Linux
関連: .PKPASS · .DAT · .JSON · .RIS

このページの内容

19k+ 個の拡張子を索引済み
最終確認日:Aug 10, 2026

ファイルの種類がわかりませんか?

ファイルを識別ツールにドロップしてください。最初の数バイトを読み取って形式を特定します。

ファイルを識別する

SER ファイル形式とは?

.serファイルには、Javaシリアル化オブジェクトストリームが含まれています。これは、ObjectOutputStreamによって生成され、ObjectInputStreamによって読み戻される、1つ以上のJavaオブジェクトのバイナリエンコーディングです。この形式は1997年にJava 1.1で導入され、Javaオブジェクトシリアル化仕様で定義されています。

すべての有効な.serファイルは、4バイトのマジックシーケンスAC ED 00 05で始まります。バイト0-1はSTREAM_MAGIC (0xACED)、バイト2-3はSTREAM_VERSION (0x0005)を保持します。ストリームは、型付きブロックマーカー(TC_OBJECT (0x73)、TC_CLASS (0x76)、TC_ARRAY (0x75)、TC_STRING (0x74)、TC_NULL (0x70))を使用して、各オブジェクトのクラス記述子、フィールド、およびネストされたデータをエンコードします。

シリアル化は、アプリケーション状態のキャッシュ、JVM間でのオブジェクトの受け渡し、および構成データの永続化に広く使用されてきました。しかし、Javaのデシリアライズは既知のセキュリティ脆弱性です。悪意を持って作成されたストリームは、クラスパス内のガジェットチェーンを悪用してリモートコード実行を実現する可能性があります。Java 9では、デシリアライズ可能なクラスを制限するためにObjectInputFilterが導入されました。最新のJavaガイダンスでは、信頼できないデータに.serファイルを使用することを強く推奨していません。

推奨される最新の代替手段には、JSON(JacksonまたはGson経由)、Protocol Buffers、またはKryoが含まれます。GeneMapper (Thermo Fisher Scientific) は、バイオインフォマティクスのプロジェクトデータに.serファイルを使用します。SerializationDumperユーティリティを使用すると、実行せずに.serの内容を検査できます。

セキュリティと安全性

リスク: HIGH

Javaのデシリアライズは、Javaアプリケーションにおいて最も深刻度の高い攻撃対象の1つです(歴史的にOWASP Top 10に含まれます)。脆弱なアプリケーションで信頼できない.serファイルを開くと、ガジェットチェーン(例:2015年のApache Commons Collectionsのエクスプロイト)を介して任意のコードが実行される可能性があります。エンドユーザーは、信頼できるソースからの.serファイルのみを、本来のアプリケーションで開くようにしてください。未知の.serファイルを分析する場合は、ライブJVMでデシリアライズするのではなく、SerializationDumper(ペイロードを実行しない静的ダンプ)を使用してください。

形式の詳細

概要
正式名称Java Serialized Object File別名 Java serialization stream, .ser file
開発元Sun Microsystems / Oracle Corporation登場時期 1997 (Java 1.1, JDK 1.1)
MIME タイプapplication/x-java-serialized-object
タイプバイナリシリアル化Javaオブジェクトストリーム
標準規格オープン・ロイヤリティフリー
この拡張子は以下でも使用されています…
  • GeneMapperプロジェクトファイル - Applied Biosystems/Life TechnologiesのGeneMapperソフトウェアは、独自のプロジェクトデータコンテナとして.serを使用します。
  • 汎用アプリケーションデータキャッシュ - あらゆるJavaアプリケーションが任意のオブジェクトを.serにシリアル化できます。内容は完全にアプリケーション固有です。
マジックバイト ・ ファイルシグネチャ
オフセット
00010203
16進数
ACED0005
ASCII
····
バイト0-1: STREAM_MAGIC=0xACED; バイト2-3: STREAM_VERSION=0x0005。すべての有効なJavaシリアル化ストリームは、これら4バイトで始まります。

SER ファイルを開くプログラム

Windows2 apps
GeneMapper (Thermo Fisher Scientific) 有料 GeneMapperを開き、「File」>「Open Project」を使用して.serプロジェクトファイルを選択します。
SerializationDumper オープンソース java -jar SerializationDumper.jar < input.ser - 分析のために生のシリアル化ストリーム構造をダンプします。
macOS1 app
SerializationDumper オープンソース java -jar SerializationDumper.jar < input.ser - 分析のために生のシリアル化ストリーム構造をダンプします。
Linux1 app
SerializationDumper オープンソース java -jar SerializationDumper.jar < input.ser - 分析のために生のシリアル化ストリーム構造をダンプします。

技術的詳細

詳細仕様
マジックバイトオフセット0に AC ED 00 05 - STREAM_MAGIC (0xACED) に続いて STREAM_VERSION (0x0005)
エンコーディングバイナリ、ビッグエンディアン
MIMEタイプapplication/x-java-serialized-object
シリアル化APIjava.io.ObjectOutputStream (書き込み) / java.io.ObjectInputStream (読み取り); クラスは java.io.Serializable を実装する必要があります
プロトコルバージョンシリアル化プロトコルバージョン2 (ストリームバージョン5)、Java 1.2以降安定
クラスのバージョニング各クラスにserialVersionUIDが埋め込まれます。バージョンの不一致はデシリアライズ時にInvalidClassExceptionをスローします
コンテンツマーカーTC_OBJECT (0x73), TC_CLASS (0x76), TC_ARRAY (0x75), TC_STRING (0x74), TC_NULL (0x70)
セキュリティリスク既知のデシリアライズ・ガジェットチェーン攻撃ベクトル。Java 9以降はObjectInputFilterのクラス許可リストにより緩和
一般的なサイズ単純なオブジェクトの数バイトから、巨大なシリアル化オブジェクトグラフの数百MBまで
プラットフォームの移植性Windows、Linux、またはmacOS上の任意のJVMで読み取り可能。Javaエコシステム以外では移植性なし
ストリーム圧縮形式レベルでは非圧縮。アプリケーション層でGZIPOutputStreamラッピングが任意に適用される
整合性組み込みのチェックサムなし。整合性はアプリケーション層の署名または安全な転送によって提供される
既知のアプリケーションGeneMapper (Thermo Fisher Scientific) がバイオインフォマティクスのプロジェクトおよびデータファイルに.serを使用
リリース日1997 (Java 1.1, JDK 1.1)
最新バージョンStream version 5 (serialization protocol version 2, since Java 1.2)
オープンスタンダードはい · ロイヤリティフリー
仕様書docs.oracle.com

SER の変換

コミュニティ Q&A

ユーザーからの質問
質問する
SER ファイルを扱うユーザーからヘルプを得られます。OSやソフトウェアのバージョンなど、具体的に記載してください。
アカウント不要 ・ 通常1日以内に回答されます

まだ質問はありません。SER ファイルについて最初の質問をしてみましょう。

よくある質問

.serファイルを開くにはどうすればよいですか?
それを作成した特定のJavaアプリケーションが必要です。ほとんどのユーザーはGeneMapperで.serに遭遇します。その場合はGeneMapperで開いてください。生の検査には、SerializationDumper(ペイロードを実行しません)を使用してください。
.serをJSONやCSVに変換できますか?
汎用的な変換は不可能です。.serファイルは特定のJavaクラスに紐付けられています。所有しているアプリケーションがデータをエクスポートする必要があります。汎用的なコンバーターは存在しません。
.serファイルは危険ですか?
本来のアプリケーションで開く分には安全です。未知の.serを任意のJavaコードでデシリアライズすることは非常にリスクが高いです(ガジェットチェーンを介したリモートコード実行)。信頼できないファイルの分析にはSerializationDumperを使用してください。
Javaアプリケーションが.serファイルに対してInvalidClassExceptionをスローするのはなぜですか?
ファイル内のserialVersionUIDが現在のクラス定義と一致していません。その.serは、ソフトウェアの異なる(通常は古い)バージョンによって保存されたものです。

参考文献

1Java Object Serialization Specification (Oracle)docs.oracle.com
2GeneMapper Software 6 - Thermo Fisher Scientificwww.thermofisher.com

さらに探索

データベース全体から

今週のトップ拡張子

1.AQQAQQ Instant Messenger File
2.CRDOWNLOADChrome Partial Download File
3.MDMarkdown Document
4.BINCD/DVD Disc Image (BIN/CUE)
5.NOMEDIAAndroid No-Media Marker File
6.PARTPartial Download File
7.RPMSGRestricted Permission Message
8.EXEWindows Executable (Portable Executable)
9.AVIFAV1 Image File Format (AVIF)
10.DBSQLite Database File

関連する拡張子

.PKPASSApple Wallet Pass (formerly Passbook)
.DATProgram Data File (generic)
.JSONJavaScript Object Notation file
.RISResearch Information Systems citation file
.OFXOpen Financial Exchange
.CSVComma-Separated Values

無料ファイルツール

ブラウザで動作するファイル識別および画像変換ツール。すべてお使いのデバイス上で実行されます。

ツールボックスを開く

ファイル拡張子を A-Z で閲覧