「Ubuntu」デスクトップに深刻なバグ--遠隔からコード実行のおそれ

Steven J. Vaughan-Nichols (Special to ZDNET.com) 翻訳校正: 編集部

2016-12-20 10:44

 アイルランドのセキュリティ研究者、Donncha O'Cearbhaill氏が「Ubuntu」に遠隔からコードを実行されるバグを発見した。この不具合が影響するのは「Ubuntu 12.10」で、攻撃を仕組まれたファイルを開封するとシステムに悪意あるコードを挿入される。悪意あるハッカーはこれを利用してシステムをクラッシュさせたり、マルウェアを動かすことができる。幸い、ルート権限を獲得することはできないようだ。

 O'Cearbhaill氏は、Ubuntuは「ProblemType:」で始まるファイルであれば、Apportで未知のファイルを開くことを発見した。ApportはUbuntuのデフォルトのクラッシュ処理・クラッシュレポートプログラムだ。

 Apportは「.crash」という拡張子とマジックバイトシーケンスを持つクラッシュファイルを生成する。マジックバイトは、ファイルを識別するための独自のシーケンスだ。例えば、PDFの拡張子を持たないPDFドキュメントであっても、”25 50 44 46”と16進数のマジックバイトにより、PDFであることがわかる。

 もちろんマジックバイトは悪用もできる。そしてこれが、今回のUbuntuの脆弱性の原因になっている。Ubuntuは未知のファイルがあるとき、最初にMIMEタイプとの照合を試みる。うまくいかない場合、フォールバックしてマジックバイトの照合を試みる。

 したがって攻撃者は、Apportのファイルのマジックバイトを持つものとして識別されるファイルを作成できる。「.crash」という拡張子のあるファイルであれば、通常は開封しないだろう。だが、拡張子がなければ開けるかもしれない。これをクリックすると、Apportがファイルを開き、最小化されたクラッシュレポートプロンプトを表示する。ここで「詳細を表示(Show Details)」をクリックすると、自ら自分への攻撃をスタートさせてしまうことになる。


パッチが当てられていないUbuntu Linuxを使っている場合、このような通常のエラーメッセージに攻撃が隠されている可能性がある。

 原因は、悪意あるハッカーが偽のApportクラッシュファイルの中に、Apport Crash Report Formatを使ってCrashDBフィールドにリストされたPythonプログラムを走らせるように仕組むことができるためだ。このCrashDBフィールドがパースされ、ユーザーの介在なしに勝手に実行されてしまう。

 ApportがクラッシュファイルにあるPackageとSourcePackageフィールドを処理前に適切に無害化していないから、ともいえる

 なお、これを含む不具合はすでに修正済みだ。だが、古いバージョンのオープンソースコードを狙おうとする悪意あるハッカーもいるので注意したい。

 

この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    ChatGPTに関連する詐欺が大幅に増加、パロアルトの調査結果に見るマルウェアの現状

  2. セキュリティ

    迫るISMS新規格への移行期限--ISO/IEC27001改訂の意味と求められる対応策とは

  3. セキュリティ

    警察把握分だけで年間4000件発生、IPA10大脅威の常連「標的型攻撃」を正しく知る用語集

  4. セキュリティ

    いま製造業がランサムウェアに狙われている!その被害の実態と実施すべき対策について知る

  5. セキュリティ

    セキュリティリーダー向けガイド--なぜ今XDRとSIEMの違いを理解することが重要なのか

ZDNET Japan クイックポール

所属する組織のデータ活用状況はどの段階にありますか?

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]