マイライブラリ
マイライブラリ

+ マイライブラリに追加

電話

お問い合わせ履歴

電話(英語)

+7 (495) 789-45-86

Profile

ObjectInputStream Serialization

CVE-2014-7911

この脆弱性は "ObjectInputStream Serialization" と呼ばれ、2014年11月に発見され、Google Android OSのバージョン 5.0以前のユーザーを脅威に晒します。

OSコンポーネントの1つに受信したデータの処理方法に特徴があります。攻撃者はこの特徴を悪用して、感染したデバイス上で特定の悪意のあるアクションを実行できます。問題は、システムフォルダー "luni/src/main/java/java/io/" に格納される ObjectInputStream コンポーネントが、受信したオブジェクトがシリアル化をサポートできるかどうかをチェックしないことです。

この脆弱性を悪用する攻撃者は、オペレーティング システムの動作を妨害する可能性があります。— 例えば、Android のクリティカルなシステムプロセスを終了します。

Dr.Web Anti-virus for Androidは、この脆弱性がデバイスの動作に欠かせないシステムコンポーネントに存在するため、影響を与えることはできません。しかし、Dr.Web Anti-virus for Androidは、この脆弱性を悪用するマルウェアがモバイルデバイスやタブレットに侵入して実行されることを防ぐことが可能なため、Dr.Web Anti-virus for Androidのユーザーはサイバー犯罪保護対策を講じることができます。Android バージョン 5.0 では、この脆弱性はオペレーティングシステム開発者によって修正されました。

詳細な情報

Javaプログラミング言語におけるオブジェクトのシリアル化とは、オブジェクト自体と、そのオブジェクトが参照する他のオブジェクトが、その後の保存と送信のためにバイト配列(例えば、外部ファイルの形式)に変換される機能を指します。その後、シリアル化されたオブジェクトをそのようなコピーから元の形式で復元できます。

このテクノロジーは主に、出力ストリームを使用してオブジェクトまたはオブジェクトのグループをフリーズし、それらをディスクに保存したり、ネットワーク経由で転送したりして、使用可能な Java 構造に変換し直すために使用されます。 クラスの作成時に Serializable インターフェイスが使用された場合、変換は ObjectInputStream クラスと ObjectOutputStream クラスを使用して自動的に行われます。 シリアル化のメカニズムはプロセス間通信で広く使用されています。

この脆弱性は、シリアル化の要件を満たしていない場合でも、攻撃者がシリアル化された形式からパラメーターなしのパブリックなコンストラクターを持つ任意のオブジェクトのインスタンスを作成できることです。 このオブジェクトに Finalize メソッドがある場合、Garbage Collectorを使用してオブジェクトが削除される前に、このメソッドが呼び出され、オブジェクトに含まれるコードが実行されます。この脆弱性を悪用すると、例えば、Androidシステムサービスを攻撃してクラッシュさせることができます。

See also information about other vulnerabilities