Bashの脆弱性「Shellshock」を利用したNASシステムへの攻撃について

本コンテンツは、2014年10月1日(米国時間)にFireEye, Inc.のブログにて公開された内容の翻訳です。本内容は予告なく更新されている可能性があることをご了承ください。

米国カリフォルニア州ミルピタス発

先週、LinuxなどのUNIX系OSで使われているシェル「Bash」に、リモート・コード・インジェクションを可能にする深刻な脆弱性(「Shellshock」)が発見されました。ファイア・アイでは、問題の発覚以降、同脆弱性を悪用する動きをモニタリングし続けており、今回NAS(Network Attached Storage)システムに対する攻撃を確認しました。攻撃を受けていたNASのほとんどは、日本と韓国の組織で使用されているものでした。NASは大量のファイルを保存するほか、最近ではデータベースの格納にも利用されており、攻撃者にとって格好のターゲットとなっています。今回確認された攻撃では、NAS上のデータに対する完全なアクセス権を不正に取得できるものです。

OSに組み込みLinuxを採用するNASデバイスは非常に多く流通しているため、ファイア・アイでは、攻撃の被害が一般家庭や企業など広い範囲に及ぶ恐れがあると強く危惧しています。

主要メーカーのNASデバイスが狙われた今回の事例は、組み込みLinux搭載デバイスが直面しているリスクを象徴しているといえます。

「QNAP社は世界有数のストレージ・システム・ベンダーで、Gartner Research Groupの2010年の調査によると、5,000ドル以下のビジネス向けNAS市場で業界2番目のシェアを占めています。NAS、NVRビデオ監視システム、ネットワーク・メディア・プレイヤーなどの製品を一般消費者、小中規模環境、大規模環境向けに提供しています」

同社のほとんどすべてのデバイスは、今回見つかった脆弱性「CVE-2014-6271」の影響を受ける組み込みLinuxを搭載しています。同社は、個人用/ビジネス用のネットワーク・ストレージのほか、幅広い業種で利用されている業務用ビデオ監視システムを提供しています。今回の脆弱性が極めて深刻であるのは、こちらで説明されているように、root権限の奪取が可能であるためです。

QNAP社が注意喚起しているように、インターネットから直接アクセス可能なシステムは、修正パッチがリリースされるまで、インターネットから切り離しておくことが推奨されます。

ファイア・アイでは、QNAP社製品を中心とする組み込みデバイスを標的に、authorized_keysファイルにSSH鍵を追加してバックドア「ELF」をインストールしようとする攻撃を多数確認しています。攻撃者にとって、パッチが提供されるまでの期間は攻撃を実行する絶好のタイミングとなります。

<攻撃内容について>

ファイア・アイでは、2014年9月26日頃から、TCPポート8080番経由で/cgi-bin/ディレクトリにアクセスする試みが数千件発生していることを確認しています。Shellshockの脆弱性を探すスキャンはすでに大量発生しており、この現象をことさら取り上げる必要はないと思われるかもしれませんが、これらのスキャンには、ファイルを不正取得(フェッチ)するコマンドが含まれているという珍しい特徴があります。

ファイア・アイが確認した攻撃は、/cgi-bin/authLogin.cgiで提供される管理者用ログイン・ページを狙っています。

CGIページにShellshockの脆弱性があるかどうかは、簡単なコマンドラインで確認できます。
curlがインストールされたシステムで、次のHTTPリクエストを実行します。

192.168.101.131は、Shellshockの有無を確認するWebサーバーのIPアドレスです。

このテストでは、脆弱性のあるサーバー(192.168.101.131)から192.168.101.130に向けてICMP Pingパケットが5回送信されます(実際にテストする場合は、IPアドレスを適宜変更してください)。

テスト対象のシステムから500エラーが返され、ICMP Pingが送信されれば、攻撃が成立したことになります。

対象のシステムがインターネットに直接接続されている場合(このようなシステムは多数確認されています)、もっと簡単にテストを実施できます。無償公開されているShellshockのテスト・サイトで、テストするデバイスの管理ページを指定するだけです。

ポート8080番経由で/cgi-bin/の管理ページへアクセスされていたのは、QNAP社製品だけではありません。HPのプリンタも同じように多くのアクセスを受けていました。ただし、これらのプリンタに本当に脆弱性があるかどうかは確認できておらず、またプリンタが明確に狙われた標的だった可能性は低いとファイア・アイでは見ています。

ファイア・アイがこれまでに確認した攻撃の標的は、1つの例外を除き、いずれも日本または韓国の大学、研究機関のネットワークに接続され、インターネットからもアクセス可能なQNAP NASシステムでした。唯一の例外は、米国で確認されています。

ファイア・アイのNXアプライアンスが検知した攻撃は、標的のシステムに対し、NASデバイスの起動環境を改ざんしてSSH鍵をコピーし、Linux用のELFバイナリを取得する一連のスクリプトをダウンロードするよう命令していました。

NASに対するHTTPリクエストのUser-Agentフィールドには、次のcurlコマンドが埋め込まれていました。このコマンドは、nova.ddns.usに対するカスタムHTTPリクエストを生成するようデバイスに命じています。このドメインは、韓国のIPアドレスに解決されます。


同リクエストは、エクスプロイトを利用して118.218.219[.]179からファイルをダウンロードします。この動作は、管理者ユーザー(UID=0)がデバイスにログインし、外部サーバーから/rootディレクトリにファイルをコピーするのと同じになりますが、ユーザーの操作なしで完全にバックグラウンドで実行されます。

米国のIPアドレス107.191.116[.]167にも、不正なファイルをホストするサーバーが見つかっています。

NASシステムの侵入に成功したリクエストは、続いて「once」というファイルをダウンロードします。このファイルは、別のスクリプトと、将来のログインを容易にするSSH鍵をNASの/rootディレクトリにコピーするためのシェル・スクリプトです。

このスクリプトは、NASのローカルDNS設定を密かに変更してGoogleのDNSサーバーを使用するように設定した後、wgetまたはcurlを使用して、Shellshockを悪用するリクエストのUser-Agentフィールドに指定されたホストから追加ファイルをコピーします。次の例では、nova.ddns.usにホストされたダイナミックDNSからファイルがコピーされます。

hXXp://nova.ddns[.]us/authorized_keys à /root/.ssh/authorized_keys

hXXp://nova.ddns[.]us /autorun.sh à $local_path/autorun.sh

その後、バックドアのELFをローカル・システムにダウンロードします。

hXXp://nova.ddns[.]us/term_$arch à $local_path/term

$archには、「uname -m」コマンドで出力されるマシンのアーキテクチャを表す文字列が入ります。

64ビット版のファイルを取得する場合は、「x86_64」となります。

hXXp://nova.ddns.us/term_x86_64

代わりに「i686」とすれば、32ビット版のファイルを取得できます。

どちらのファイルも、分析時点ではVirusTotalに未登録のLinux用ELFバイナリです。

64ビット・ファイルのMD5: 24bdef31e71342ae413bd2d6ee766564

32ビット・ファイルのMD5: 87a8da400230500026f674c9d0452a11

<コピーされたSSH鍵について>

この攻撃で特に興味深いのは、前述のスクリプトによってNASデバイスのローカルauthorized_keysファイルにSSH鍵がコピーされる点です。このSSH鍵は、パスワードなしでのログインを可能にする、NASデバイスへのバックドアとして機能します。

nova.ddns.us/authorized_keysからダウンロードされるSSH鍵の内容は、次のとおりです。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCmm9yrZmk82sex8JLLeWs/y4v6iI4cxgqm6Y3sDkT/d5WJZ39pm6k6x8Z7mTKyVWJUSV2MOcwzfUuk10jmaT9PO0Og0mAEv5ZQwFKPZaMvXkI/6B/LQx//RkCWLA7l68/8kKeTV/1bU/iLu/kK4xVFVTQFDh4H72cGCuovslTzqaSZjDDkrDx2uGkWXFejoOBCeGm8aDjZchcekAJBlnHhc56N6vjjwNlDi2gw1pmD+gmNafUYQoimbGPPfKK84TZIBlnNdFIBfz/YbAn4Vib/5HJb9JdFVt+sKiVzm4EPVrY4WwRIvhugmPwlazGcYFZQpB6FFJ2FDmlQAQUugyiv root@nova

またこのスクリプトは、QNAP NASシステムに付属する自動起動のためのローカル構成ファイルqpkg.confを上書きします。これにより、autorun.shスクリプトを自動実行するようNASシステムが構成され、攻撃者がいつでもシステムにアクセスできるようになります。

autorun.shスクリプトは、QNAP NASシステムに共通の共有パスである/share/MD0_DATAディレクトリを探します。このディレクトリが見つからない場合、スクリプトは、「share」という文字列を名前に含む別のディレクトリを探します。見つかったディレクトリは、マルウェアのインストール・ディレクトリの作成に利用されます。

またこのスクリプトは更新機能を備えており、自動起動が開始されるごとにその機能が実行されます。分析時点では、update.shファイルの中身は空でしたが、何らかのタイミングで攻撃者によって書き込みが行われるものと推測されます。

<バックドア「ELF」について>

ダウンロードされるELFの実行形式ファイルは、攻撃者によるシェル・アクセスを可能にするバックドアです。ファイル名はOSのアーキテクチャに応じて、term_x86_64またはterm_i686となります。

このファイルは、目的に応じて次の3つの方法で起動できます。

l  パラメータなしで実行: 58273番ポートで接続を待機

l  パラメータを1つ指定して実行: 指定された番号のポートで接続を待機

l  パラメータを2つ指定して実行: 最初のパラメータに指定されたホストに、2番目のパラメータに指定されたポート番号で接続

バックドアが接続を待機している場合、シェル・アクセスにはパスワードが必要となります。攻撃者が「IAMYOURGOD」という文字列を含むパケットを送信すると、バックドアはセットアップを開始してシェルを提供します。それ以外のパケットを受信した場合は、バックドアは接続を閉じます。ファイア・アイが確認したいずれのケースでも、バックドアはパラメータなしで実行され、58273番ポートで接続を待機していました。

64ビット・ファイルのMD5:24bdef31e71342ae413bd2d6ee766564

32ビット・ファイルのMD5:87a8da400230500026f674c9d0452a11

<侵害を受けているかどうかを確認するための手がかりについて>

システムが侵害(侵入)を受けているかどうかは、次の手がかりの有無によって判断できる場合があります。

SSH鍵

システム上に次のSSH鍵がある場合、攻撃者は鍵のコピーに成功しています。

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCmm9yrZmk82sex8JLLeWs/y4v6iI4cxgqm6Y3sDkT/d5WJZ39pm6k6x8Z7mTKyVWJUSV2MOcwzfUuk10jmaT9PO0Og0mAEv5ZQwFKPZaMvXkI/6B/LQx//RkCWLA7l68/8kKeTV/1bU/iLu/kK4xVFVTQFDh4H72cGCuovslTzqaSZjDDkrDx2uGkWXFejoOBCeGm8aDjZchcekAJBlnHhc56N6vjjwNlDi2gw1pmD+gmNafUYQoimbGPPfKK84TZIBlnNdFIBfz/YbAn4Vib/5HJb9JdFVt+sKiVzm4EPVrY4WwRIvhugmPwlazGcYFZQpB6FFJ2FDmlQAQUugyiv root@nova

ログ

Webサーバーのログで、Shellshock攻撃に固有のバイト文字列を含むHTTPリクエストを確認すると、侵入を受けているホストを特定できる場合があります。

HTTPヘッダーまたはURIに「() {」という文字(16進数では「28 29 20 7b 20」)を含むリクエストを探します。

Linuxマルウェア

TCPポート: 58273

64ビット版のELFバイナリ

ファイル名: term_x686_64

MD5:24bdef31e71342ae413bd2d6ee766564

32ビット版のELFバイナリ

ファイル名:term_i686

MD5:87a8da400230500026f674c9d0452a11

以上

FireEyeについて

FireEye®は、次世代のサイバー攻撃から、世界中の民間企業や官公庁をリアルタイムで防御するために専用設計された、仮想マシンベースのセキュリティ・プラットフォームを発明した企業です。高度なサイバー攻撃は、次世代ファイアウォールやIPS、アンチウイルス、各種ゲートウェイなど、シグネチャベースのセキュリティ対策を容易にすり抜けてしまいます。FireEye®脅威対策プラットフォーム™は、攻撃ライフサイクル全体で、モバイル、Web、電子メール、ファイル・システムといった主要な攻撃経路にわたり、シグネチャを利用しないリアルタイムでダイナミックな脅威防御策を組織へ提供します。FireEyeプラットフォームの核となる仮想実行エンジンは、Dynamic Threat Intelligenceによって補完されており、サイバー攻撃をリアルタイムに検出・防御することができます。FireEyeのソリューションは、世界60か国以上の2,500を超える組織に導入されており、Fortune 500企業の130社以上で利用されています。

FireEyeウェブサイト: http://www.fireeye.co.jp

FireEyeプラットフォームについて: http://www.fireeye.com/jp/ja/products-and-solutions/

【報道関係の方からのお問い合せ先】

FireEye広報事務局

(ホフマンジャパン株式会社内)

担当: 青木 / 田中

TEL: 03-5159-5750

Email: FireEye_PR@hoffman.com

# # #

FireEyeはFireEye, Inc.の登録商標です。その他すべてのブランド、製品、またはサービスの名前は、それぞれ該当する所有者の商標またはサービスマークである可能性があります。