IT用語集 › セキュリティ › 安全でないデシリアライゼーション

安全でないデシリアライゼーション

セキュリティ Svenska → 更新: 2026-10-22

信頼できないデータをデシリアライズした結果、攻撃者の意図したオブジェクトが生成・実行されてしまう脆弱性。RCEの定番ルートである。

デシリアライズ時に副作用が起こり得る言語で発生する。Java(readObjectと、Apache Commons CollectionsやSpringを使ったガジェットチェーン)、Python(pickle.loads)、Ruby(Marshal)、PHP(unserialize)、.NET(BinaryFormatter)などだ。ysoserialやPHPGGCのようなツールが、出来合いのチェーンを生成してくれる。

対策は、信頼できないデータをそもそもデシリアライズしないこと。やむを得ない場合は、コード実行を伴わない形式(JSON、MessagePack、Protobuf)を使い、許可する型をホワイトリストで絞る。

← 用語集に戻る