エフセキュアブログ

CPU を含む記事

パフォーマンス上のクリティカルパス

 人々が信じていることとは違って、我々はこのラボでリバースエンジニアリングとマルウェアの分析だけを行っているのではない。それどころか、おそらくはコードを分析する人よりも書く人のほうが多くいる職場だ。当社では今まで、作業についてはほとんどブログで取り上げてこなかったが、これを変えたいと思っている。この取り組みを開始するために、当社のWindows保護コンポーネントの開発者たちの生活をちらっとお見せしたいと思う。

 我々は、ある変更作業をちょうど終えたところだ。当社のソフトウェアを実行しているWindows 10システムの起動時間に改良を加え、また選択したWindowsアプリケーションの開始時間に良い影響を与えるものだ。これら改良点はローエンドのシステムで特に顕著になる。これを行う過程で、RAMがわずか1 GBしかない32ビットWindows 10機で、当社のSAFE製品が快適に動作するようにこぎつけた。スペックを考えると悪くない。

Low-end tablet
SAFEはこのちっぽけな機器でなかなか快適に動く

 あらゆるコードやロジックの変更、当社のコンポーネントに加える機能のすべてが当社製品のパフォーマンスに影響を与える可能性がある。したがって膨大なパフォーマンステストを実施していることは言うまでもない。顧客にリリースする前に、すべてのデータベースのパフォーマンスを確認している。社内に24時間毎日稼働する大掛かりな自動パフォーマンステストシステムを保有している。これは当社の全製品の内部・ベータ・プロダクションのそれぞれのビルドに対し、Windowsのさまざまなバージョンで使われるものだ。また外部のアンチウィルス製品のテスト企業によって発表されるパフォーマンス結果の情報も綿密に追っている。

 当社では、数多くのシナリオの下でソフトウェアをプロファイルする時間を頻繁に確保している。シナリオは自社で定義したものもあれば、Windows Assessment Kitで規定されたものもある。我々はテストを実施し、可能な限りすべてのメトリクスを収集してから、Windows Performance AnalyzerやWindbgで出力データの調査を行う。時折このデータをすべて掘り下げることで、除去することで最適化可能なボトルネックに到達する。

Jose's performance testing setup.
最先端の分析技術 + 古風な電話機 == 成功

 当社の振る舞い分析エンジンDeepGuardでは、最近の最適化を相当数見ることができる。我々が適用した大きな変更の1つは、ハッシュ計算を扱うために使用するコードのリファクタリングだ。Intel VTuneを用いて、我々は既存のハッシュアルゴリズムを分析し、CPUパイプライン内で失速する部分を探した。発見に基づき、こうした計算を実行するアセンブリコードの再調整を行い、使用されるCPUサイクル数の大幅な削減につながった。以下のスクリーンショットで確認できるとおり、今回の変更により我々は相当なパフォーマンス向上をなんとか絞り出した。

CPU benchmarking tool
アセンブリコードを書きたいなら、この仕事は気に入るだろう

 パフォーマンスの向上は、当社が繰り返し追及していることだ。当社で常に取り組んでいる点を、以下に挙げる。

ホワイトリストの改良

 クラウド内を検索したり、スキャンエンジンにかけたり、クライアントサイドの分析コンポーネントを通じて実行したりする必要がなければ、どのファイルもユーザエクスペリエンスの向上につながる。アプリケーションの起動が早まったり、ファイル操作が早まったり、ブラウジング体験が向上したり、だ。

古く重複する検知の除去

 当社の検知の大半は合理的であり、数千のサンプルにヒットするように設計されている。当社で新たにより良く検知するように開発する際に、より古い検知が持つのと同じサンプルを新バージョンで捕捉するのを発見することがある。このような場合には、古い検知を削除することで、パフォーマンスの小さな改善が得られる。OSとソフトウェアは古い攻撃に対するパッチが当てられているので、マルウェア作者は犠牲者を感染させるための新たな方法を探らねばならない。最終的には絶滅するマルウェアもある。このような場合には、それに応じて検知を削除する。

バグの発見と修正

 バグのないコードは無い。いつも変わらず、バグを見つけては修正している。かつては捉えられなかったバクを特定する新たな方法を定期的に発見しており、顧客ベース全体でのクラッシュについてうまく可視化するシステムを保有している。時折、パフォーマンスに打撃を与えるようなバクを発見し、修正することがある。この瞬間はいつでもお祝いだ。

クリティカルパスの最適化

 スキャンするロジックは複雑で、年がら年中ロジックを変更して、顧客の問題を解決したり、新製品の機能をサポートしたり、OSに対する変更をサポートしたり、あるいは使用されない機能を外したりしている。ほぼ常にスキャンのロジックについて作業している。その間、効率化する方法を模索している。

 エンジニアリングの面でラボにて起こっていることの小さな断片を覗くのが興味深いものであったら良いのだが。

 では。
 Andy

 (訳注:アンケートフォームは原文の記事へ)

性格診断よりもFACEBOOKに聞いてみよう(投票)




広告が、大企業の大きな原動力になっているケースがあります。Googleは57,000人以上の社員を抱え、その収益は660億ドルを超えています。Facebookの収益は120億ドル、社員は10,000人です。この二つの巨大企業は、広告収入を財源としてネット上でサービスを提供する最も有名な企業と言えるでしょう。そして、最近の広告はターゲティング広告となっており、企業側はユーザーが見たいと思っているものを知っていなければなりません。ということはつまり、皆さんのことを知っているということです。

では、Facebookを詳しく見ていきましょう。Facebookの広告設定に関する記事は以前に書きました。そして私はしばらくの間、自分のデータを追跡してみました。ターゲティング広告に使われるデータの一部は、年齢、性別、生まれた場所、見た映画など、ユーザー自身が入力したものです。しかしFacebookは、ユーザーがどのようなものを好きなのかを特定するため、Facebookやその他のサイト上の行動も分析しています。Facebook内でのトラッキングがどのように機能しているかは明らかです。Facebookのサーバーは、ユーザーがどのようなリンクをクリックしているかを単純に記録しているのです。他のサイトにおけるトラッキングに関しては、ちょっと嫌な感じですよね。これについては、以前の記事で書いています。

アクティビティの記録はFacebookによって分析され、ユーザーは「Your Ad Preferences(あなたの広告設定)」と呼ばれる興味のカテゴリに割り当てられます。広告主はターゲットとするカテゴリを選ぶことができます。そして、そうしたカテゴリに基づいて、広告が表示されることとなります。このリストは閲覧、管理が可能ですが、このページはFacebookのメニューの奥深くにうまく隠されています。

あなたの広告設定は後で見ることにして、まずはこのことに関して意見を述べさせてください。広告というのはうっとうしいこともありますが、最近では多くの「無料」サービスを提供するための原動力となっています。ですから、Facebookが広告収入で運営を行っていることを責める気はありません。ターゲティング広告を行っていることも、責める気はありません。これは、理論的には良いことでもあります。自分にとって有益かもしれない、より関連性の高い広告が表示されるからです。しかし、ターゲティング広告というのは、データ収集に基づいて行われるものです。これが油断のできないところです。このような幅広い個人プロファイルの取り扱いにおいて、Facebookなどの企業を信用できますか?その他の目的に悪用されないと信じることができるでしょうか?

これについてFacebookはある程度オープンであり、私たちに「Your Ad Preferences」を閲覧させてくれるのは良いことです(注:すべての国で利用できるわけではありません)。しかし、この呼び方は本当に誤解を招きます。これは「Facebook’s Ad Preferences for You(Facebookがあなたのために行った広告設定)」とすべきでしょう。もちろん、ユーザー自身でカテゴリを確認して削除することもできますが、これで自分の管理下に置いたと勘違いしてはいけません。Facebookはあなたの行動の分析を続け、削除したカテゴリもすぐに再登録します。私は数か月前にすべて削除したのですが、再び210以上の興味のカテゴリが表示されています!Facebook以外でのトラッキングはブロックしてあるわけですから、これは本当に驚きです。つまり、Facebook以外のアクティビティはあまり関係ないということですね。私は原則として、Facebookを含むオンラインメディア上の広告は一切クリックしないことにしています。商用ページの「いいね!」も、非常に制限的にしか行っていません。

しかし本当はFacebookも、人が広告を嫌っていることを分かっています。「Suggested posts(おすすめの投稿)」や「Sponsored posts(スポンサーによる投稿)」は、実は姿を変えた広告であり、これらに反応してしまうと、その投稿が属するカテゴリにユーザーが興味を持っていると記録されてしまうのです。正直に言うと、私も普段こうしたコンテンツをクリックしています。

ページ上部のスクリーンショットの「自殺」の項目はどこから来たのでしょうか?いえ、私は大丈夫です。橋から飛び降りたりしません。精神衛生面も心配はありません。自殺に関連するFacebookのコンテンツは、何も触っていません。ただ、それを確実に知ることはできません。FacebookはAd Preferencesの設定をユーザー自身が管理できるようにすることで、オープンかつ正直なイメージを示そうとしていますが、そのようなバラ色のイメージが、すべてではありません。実際Facebookの広告の内部構造は、非常に複雑な秘密のシステムなのです。Facebook上で何らかの行動をした際、それが自分のプロファイルにどう影響するかは知りようがないのです。私にはまったく見当もつきませんが、私がクリックした何かが、おそらく自殺と関連があったのでしょう。

ここでFacebookの性格診断を受けてみましょう。Facebookはあなたがどのような人間であると考えているでしょうか。手順は下記のとおりです。
  1. Facebookにアクセスし、広告、あるいは「sponsored post」、あるいは「suggested post」を確認します。
  2. これらの項目には、右上にX印あるいは下矢印があるはずです。クリックしてみてください。
  3. ポップアップメニューの「Why am I seeing this?(このメッセージが表示される理由)」を選択します。
  4. この画面にはいくつか興味深い情報が含まれていますが、「Manage your ad preferences(広告設定の変更)」に進んでください。
  5. リストを確認し、ここに戻ってきて皆さんの意見を聞かせてください。
  6. 不適切なカテゴリを削除します。すべて削除すると、表示される広告の数が減るかもしれません。
では、このテストの正確さについて、皆さんがどう思っているのかを見てみましょう。
 
下の選択肢のうち、FacebookでのあなたのAd Preferencesを最もよく表しているのはどれですか?
  • すごい、ピッタリ! まさに自分に当てはまる。
  • ほとんどは合っているけど、完璧ではない。カテゴリの半数近くは削除する必要がある。
  • かなりひどい。カテゴリの半分以上が間違っている。
  • うわ、これはひどい! 誰かが自分のアカウントを使っていたに違いない。

 

FacebookのAd Preferencesを性格診断に使ってみるのもおもしろいですが、結局あまり精度の高いものではありません。他に本物のテストを探したほうが良いでしょう。問題は、どのテストを受けるかは自分で選べますが、あなたに関するデータを他人がどのように収集するかは選べないということです。誰かがこのテストを頼りに、あなたの評価を行っているかもしれません。実際のところ、あなたは基本的に誰とでもこのデータを共有する権利をFacebookに与えてしまっているのです。登録前に読み、承認した同意書のこの一節を覚えていませんか?

「Facebookの事業をグローバル規模で支援するベンダー、サービスプロバイダ、その他のパートナーには情報を移転します。そのようなパートナーには、技術インフラを提供する企業、Facebookサービスの利用状況を分析する企業、広告やサービスの効果を測定する企業、カスタマーサービスを提供する企業、支払いを円滑にする企業、学術的研究や調査を実施する企業が含まれます。」
 この部分、登録前に読みましたよね?

安全なネットサーフィンを
Micke

>>原文へのリンク


Tinba:もう1つの対サンドボックス手段

 マルウェア作者がサンドボックスを検出する新たな手段を発明したのなら、当然のことながらそこで一服したりしない。サンドボックスは非常に便利なシステムで、昨今では数百万のサンプルを自動的に分析する。Seculert は最近、Dyre/Dyrezaマルウェアで採用している、前例のないサンドボックス検出方法を明らかにした。我々は、これと類似する対サンドボックス手段が悪評高いバンキング型トロイの木馬Tinbaで使われていることを確認した。サンドボックス技術の向上の一助となることを期して、この発見について論じたいと思う。Joe Securityも同社のサンプルの1つから、Tinbaで見られたものと同じ回避手段を見つけ出している。

ユーザインタラクションを組み合わせた検出
 最新のTinbaのサンプルで我々が発見したのは、GetCursorPos APIを用いてマウスの動きを確認する回避手段を採用していたことだ。加えて、このマルウェア作者はGetForeGroundWindow APIを使う新しいサンドボックス検出方法も導入した。このAPIを使うと、ユーザが現在操作をしているアクティブウィンドウをマルウェアが確認できるようになる。

 一般に、自動化されたサンドボックスシステムは同一ウィンドウのままになる。マルウェアが実行された場所という観点からすると、これはデスクトップとなることもある。当該マルウェアではこの状況を利用しようとして、GetForeGroundWindow APIを2回連続でコールし、返された値を確認する。2回のコールの間には数秒の間隔があり、実際のユーザインタラクションを模倣している。この最新サンプルをサンドボックス環境で実行した場合、2回のGetForeGroundWindow APIのコールにより返される値は、常に同じものになるだろう。このことは、このサンプルを実行して以来、アクティブウィンドウが同一のままであること示すことになる。このケースでは、アクティブウィンドウが変化し、なおかつマウスカーソルが移動するまでメインルーチンは実行されず、コードはループし続ける。

tinba_user_interaction_detection (135k image)

物理マシンであることを期待
 ユーザインタラクションの検出後、メインルーチンを実行する前に、Tinbaはもう1つささやかな回避手段を採用している。これはDyre/Dyrezaが行っているCPUコア数の検出に少々似ている。Tinbaの場合、実行中のマシン上で得られるディスクシリンダーの数を探す。基本的には、これはディスク容量の確認と同等だ。おそらくは実装を簡単にする目的で、ディスクの物理容量を調べる代わりに、ioctlコードのIOCTL_DISK_GET_DRIVE_GEOMETRY_EXを使ってディスクのシリンダー数のみを確認しているのだろう。特に今回のケースでは、ディスクに少なくとも5,000個(0x1388)のシリンダー、つまり約11GBあるかどうかを判定し、なければこのサンプルは終了する。CPUコアの数の検出とまったく同じく、ディスク容量の確認も効果的な検出回避手法となり得る。なぜなら最近の通常のコンピュータ機のコア数やディスク容量はもっと大きいはずだからだ。

tinba_i_hope_im_a_real_machine (81k image)

 ウィンドウのユーザインタラクションのテストおよびマシン上のディスク容量の確認により、容易にサンドボックスを検出し得ることをTinbaは実証している。マルウェアの作者らは検出回避のための新しい方法を絶え間なく追い求めている。故に、彼らに遅れずついて行くには適切に調整を行わなければならないのだ。サンドボックス技術を強固にする際は、このことをサンドボックス提供業者は心に留めておかなければならない。

 今回の分析で用いたTinbaのサンプル:5c42e3234b8baaf228d3ada5e4ab7e2a5db36b03

仮想環境・クラウド環境に対応する エフセキュア仮想スキャンサーバ

ITシステムの仮想化やクラウド化は今後さらに進展すると予測されますが、仮想環境やクラウド環境でのセキュリティは、従来の環境と比較して、新たな課題 が生じます。それら課題とは主に、パフォーマンスの向上を図りながらセキュリティレベルを維持すること、容易な構築と混在環境を含めた一元管理が求められ ること、構成の柔軟性と拡張性を確保することの3点になります。

パフォーマンスの向上とセキュリティレベルの維持


一般にエージェントレスと呼ばれるセ キュリティ・ソリューションでは、パターンファイルによるファイルの検査しか行えず、未知のウイルス対策や脆弱性対策などへの対策が不十分になります。仮 想環境であっても、脅威の内容は、物理環境と変わりありません。エフセキュア仮想スキャンサーバでは、各クライアントには未知のウイルス対策や脆弱性への 対策の機能は残しつつ、大半の検査エンジンを取り除きスリム化したエージェントに進化させることで、クライアントで使用するCPUやメモリリソース、ディ スク容量を削減します。これらのクライアントから取り除かれた検査エンジンは仮想スキャンサーバで実行され、スキャン結果の共有などを行うことにより、検 査効率の向上を図っています。この方法により、パフォーマンスは向上させながらも、従来からセキュリティレベルを落とさないことに成功しています。


容易な構築と混在環境を含めた一元管理


エー ジェントレスのプログラムでは、実際にはドライバレベルで動作する"隠されたエージェント"として機能します。このような方式は、従来のデスクトップを管 理していた管理者には馴染みが薄く、導入や管理に戸惑う原因のひとつとなります。しかし、エフセキュア仮想スキャンサーバでは、各クライアントの導入方法 や管理方法は従来型の製品と変わらないため、物理環境と仮想環境が混在する場合も、一台の管理サーバで、戸惑うことなく管理することが可能です。さらに設 定やステータス監視について仮想環境を特別に考える必要がなく、既に規定しているセキュリティポリシーをそのまま適用することができます。また、エフセ キュア仮想スキャンサーバは仮想アプライアンスの形式で提供されるため、OSレベルでのサーバの知識を必要とせず、簡単に構築・運用が可能であり、導入・ メンテナンスのコストの削減に寄与します。


構成の柔軟性と拡張性


さらに エージェントレスのソリューションは、特定のハイパーバイザーでしか利用できず、またその動作の実態もブラックボックス化され、特定のベンダーの技術に大 きく依存してしまいがちです。しかし、エフセキュア仮想スキャンサーバでは、クライアントと仮想スキャンサーバ間の通信に、標準化されたプロトコルを使用 しているため幅広いハイパーバイザーで利用が可能であり、高い柔軟性と拡張性を確保して大規模な環境であっても簡単に負荷分散を行なうことができます。

Bitcoin詐欺が接続された

Bitcoin $1000

 Bitcoinや、他のLitecoinPeercoinといったデジタル通貨は、我々が換金する方法を変えるだろう。しかし、大きな欠陥を伴う。その欠陥とは、感染したコンピュータを紙幣「印刷」機へと変えるためにも使われうる点だ。

 Bitcoinの背後のアルゴリズムの美しいところは、暗号通貨に必要な、2つの主な課題を解決していることだ。トランザクションを確認し、インフレーションを起こすことなく金銭を生み出す、双方をともに組み合わせている。トランザクションの確認は、P2Pネットワーク上の他の参加者によって行われ、その対価としてBitcoinを得る。全体のプロセスは、マイニング(採掘)として知られている。

 黎明期のBitcoinではマイニングは容易だった。ホームコンピュータでマイニングし、Bitcoinを稼ぐことができただろう。しかし、通貨価値が増大(2013年の間に$8から$1000へ)するにつれて、人々がさらにマイニングするようになった。それに応じて、マイニングは(数学的に)より困難になり、強力なコンピュータが求められるようになった。不幸なことに、こういったコンピュータが自分の所有物である必要はない。オンライン犯罪者たちが運営している最大級のボットネットのいくつかは、今ではマイニングで収益を得ている。感染したホームコンピュータならなんでも、サーバ犯罪者のためにBitcoinをマイニングできるのだ。

 ボットネットを使ってマイニングを行うのは大きなビジネスだ。世界第2の規模のボットネットであるZeroAccessは、感染したマシンで暗号通貨をマイニングすることで、1日に何万ドルかを生み出した。感染したマシンがハイエンドのGPUチップが乗ったビデオカードを搭載しているときは、これは著しく効率的になる。

 こういったマイニング・ボットネットは、人間のユーザを要しない。処理能力とネットワーク接続があればいいのだ。物にまみれたインターネットは、車といった機械やゴミ箱に埋め込まれたコンピュータなど、さらに何百万台以上のWebに接続されたコンピュータをもたらすだろう。お金をマイニングするためには、そういったもののすべてが、Windows PCのようなスペックを持つ必要があるわけではない。たとえばLitecoinは、ハイエンドGPUよりむしろ通常のCPUで実行できるような、よりメモリに徹底したアルゴリズムを使う。

 神話上のインターネットに接続された冷蔵庫がついに発見した存在理由―犯罪者であることを認めざるを得ない。

ミッコ・ヒッポネン
Wired UK 12/2013」に初掲載

2012年の#yearinreview パート3

 2012年#yearinreviewのパート3、10〜12月分を挙げる。

2012年10月3日
(訳注:コンピュータが解けないCAPTCHAを作れなくなる日は近い。)

2012年10月4日
(訳注:電話帳を見た。数百ページに渡って掲載された、氏名、電話番号、自宅住所。プライバシー・ポリシーは見当たらなかった。)

2012年10月5日
(訳注:銀行のカードに黒のマーカーで「暗証番号:5186」と書こう。もしカードが盗まれたとき、正しくない暗証番号の入力が増える。本当の暗証番号は書かないように。

2012年10月12日
(訳注:CPUファンが動作しているかどうか定かではない?Adobe Flash™を使っているゲームを何か動かしてみれば分かる。)

2012年10月23日
(訳注:メールのヒント No.46:1) 「購読停止」という単語に対するフィルタを作成する。2) そうしたメールをゴミ箱に送る。)

2012年11月8日
(訳注:Googleには約10億人のユーザがいて、同社の年間収入は約300億ドルだ。つまり、あなたはGoogleにとって年間30ドルの価値がある。)

2012年11月16日
(訳注:インターネットにはルールはほとんどない。しかしその数少ないルールの1つを挙げる。歌詞や壁紙に注力したサイトは、未完成なサイトに見えるようにしなければならない。)

2012年11月17日
(訳注:2012年第3四半期の売上高。Windowsデバイス 8750万ドル 対 Androidデバイス 1億2250万ドル。コンシューマ向けデバイスの分野で、LinuxがついにWindowsを凌駕した!)

2012年11月20日
(訳注:AdBlockはすばらしいが、そのユーザ基盤はとても小さい。本当にもっと広告を打つべきだ。いや、待てよ。)

2012年11月27日
(訳注:Apple社はiOSマップ担当のマネージャWilliamsonを解雇した。不運なことに、彼は建物から外に出る道が分からなかった。#macrumors

2012年12月3日
(訳注:Googleにはあなたがどこへ行ったかが分かる。そして今に、どこへ行こうとしているのかも分かるようになる。Gmailの航空便の予約メールを解析することで。ジョークではない。)

2012年12月4日
(訳注:Visa、MasterCard、Amexはスパムによって多大な利益を得ていることに留意すべきだ。スパムで宣伝される商品の大半は、これらのカードで支払いがなされる。)

2012年12月6日
(訳注:John McAfee、Kim Dotcom、中本哲史、Julian Assange、Elon Musk、Albert Gonzales、thegrugq。彼らをベースにした映画の筋書きは想像できる。)

2012年12月18日
(訳注:インスタグラムのユーザはサービスにお金を支払っていなかったというのなら、支払ってきたことについてユーザはどう考えてるんだ?稼働させるには費用のかかるサービスだ。)

2012年12月19日
(訳注:ある企業が何かの件でGoogleを訴えたら、その企業がどういった類の検索をしているか、Googleは監視を開始するのだろうか。)

 そして今日に至った。F-Secure Labsで長いクリスマス休暇に入る前日だ。しかし、このブログがちょっと静かになるというだけで、私達が活動休止しているわけではない。ミッコ・ヒッポネンの全つぶやきはhttps://twitter.com/mikkoからフォローできる。

 私、ショーン・サリバンをフォローするにはhttps://twitter.com/5ean5ullivanからだ。

 私が見つけた、関心を持たれそうな話題のを以下に挙げる。

(訳注:Franken上院議員によるLocation Privacy Protection法(bit.ly/R8z9zv)。「ストーキング」アプリの禁止を要求。秀逸なインタビュー。)

 米国のAl Franken上院議員は「ストーキング」アプリの禁止を要求した。これはしばしば女性に対する嫌がらせで用いられる。

Marketplace Tech, Location Privacy

 ロケーション・プライバシーは重要な問題で、2013年にモバイル・スパイ・ソフトウェアが主流に加わるという我々の予想の根拠である。

 また、https://twitter.com/FSecureをフォローしてほしい。セキュリティと技術に関するニュースがうまく集約されている。

(訳注:世界中の銀行は大規模なサイバー攻撃に直面することに備えつつある。bit.ly/Ub0nWU

—————

 そして、今年のオススメの最後に。

 Risky Businessの2012 in reviewというセキュリティ・ポッドキャストを確認してほしい。オーストラリアのPatrick GrayとニュージーランドのAdam Boileauの週間ニュースのコーナーがサウンドトラックと共にうまく編集されている。

RiskyBusiness2012Review

 最後に2012年のセキュリティの話題を振り返ったときに、慌てないでほしい。

 ときには物事には自己解決する方法がある。

(訳注:これを見てからYouTubeのページを開き、グッド!かそうでないかチェックしてほしい。youtu.be/ussCHoQttyQ。インターネットとは、とてつもないものだ。)

あなたが平穏でありますように。
ショーン

標的型攻撃が私生活を狙うとき

  現在のところ標的型サイバー攻撃は企業や政府機関に対するものが多数ニュースになっています。しかし、もし私生活も狙われるとしたらどうなるでしょうか? 企業や政府ならば内部ネットワークにそれなりのセキュリティ対策が施されていたとしても、自宅ネット接続ではインターネットルーターのファイアーウォールとマシンに入れたウィルス対策ソフトくらいしか防御手段がないのではないでしょうか。そして最近話題の出口対策はほとんど初めから考慮されていません。企業や政府の中でターゲットにされた個人の私生活から収集した情報を基にして、さらに組織への標的型攻撃を仕掛ける事は十分ありうるでしょう。

  標的型攻撃の初期段階でFacebookやLinkedInなどのソーシャルネットワークで事前情報の収集が行われていることは指摘されています。その次の段階になると、ソーシャルネットワークの情報を基にターゲットの私生活を狙った盗聴・盗撮などでの情報収集が行われる可能性があるでしょう。そして現在のPC・携帯電話・スマートフォンなどにはほぼすべてカメラとマイクロフォンが搭載されていますが、これらは監視カメラにもなりえるわけです。実際にPC内蔵カメラを外部から制御して画像を送信させるスパイウェアがあり、アメリカでこれを悪用したコンピューター修理ショップの技術者が逮捕された例が最近ありました。

  この犯人の21歳の技術者は、ショッフにPCを持ち込んで来た特に女性客を狙ってCamCaptureというスパイウェアを仕込んで修理し、外部からインターネット経由で覗きをしていました。また、被害者の女性数人にはカメラの前で服を脱ぐように指示する脅迫メールを送りつけていたそうです。しかし、その店舗に修理を依頼した姉妹が、修理後からカメラ動作ランプが不可解な点灯をするようになったのに気がついて他の修理ショップに持ち込んだことから、スパイウェアが仕込まれた事が判明して逮捕に至ったということです。この犯人の場合は被害者のコンピューターを直接触って仕込んでいましたが、このようなスパイウェアを感染させるように設定したウェブサイトにフィッシングで被害者を誘導する手段もありうるので、大量のPCを監視カメラ化することが可能になります。

  これと同様の発想のスパイウェアはスマートフォン向けに登場してくるでしょう。実際スパイウェア以前に、Lady Gagaやスカーレット・ヨハンソンの携帯電話から自写ヌード画像などがハッキングで流出する事件が既に起き、日本でもユーザーの意図しない内に個人情報をマーケティング目的で収集する機能を持ったアプリが出回った例がいくつもあるわけです。特にAndroidスマートフォンの場合はユーザーによるアプリ購入は基本的に自己責任方式であり、Google以外が提供するアプリマーケットからもダウンロードできるため、マルウェア混入のアプリがすでに何度も登場しています。その中で、外部からコントロールしてスマートフォンを監視盗聴デバイス化するマルウェアが出てくる可能性がありうるわけです。高性能のCPUを搭載してGPSや様々なセンサーを持つスマートフォンは、ターゲットした相手が常に持ち歩くわけで、標的型スパイ攻撃にとって理想的なデバイスです。と、書いていた間にAndroidのリモートアクセス・トロージャンと思われるマルウェアが中国で登場の話題が出ていました。
  さらに中国のNetQinの調査によると今年前半でのスマートフォンのマルウェア感染は1280万台(Android 78%、Symbian 19%、17,676種のマルウェア)という推計も出ています。
  PCのウィルス対策ソフトはかなり普及して現在はスマートフォン向けの普及の必要性が叫ばれていますが、ここでも外部へ出て行く情報の制御など、ウィルス対策ソフト・レベルでの対策の組込みは急ぐべき課題ではないでしょうか。

いや、パスワードをしっかりSaltingしても十分ではない、CUDA Accelerated PBKDF2を使用すべし

私は最近のパスワードのリーク(LinkedIn、eHarmony、Last.fm)に関するオンラインの議論を追ってきたが、salt値がパスワードを安全にするという強固な信念を持つ開発者が、まだ大勢いるようだ。

  攻撃者がsaltを有していたとしても、攻撃は実質上可能ではない。何故なら14文字の鍵空間をチェックするには非常に時間が掛かるためで、よってsaltにより安全が保たれる、というのが一般的な推論のようだ。小さい子供がテディベアを抱きしめるように、デベロッパはsaltを握りしめていれば、すべての悪しきクラッカーを寄せ付けずにいられると考えている、と言っても良い。

  残念なことに、人間は一般に、乱数ジェネレータでは無い。Francois Pesceによる非常に素晴らしい調査が、このことに関する動かぬ証拠を提供している。

  基本的にFrancoisが行っているのは、LinkedInのもののような、巨大なパスワードデータベースを辞書攻撃によって攻撃し、クラックしたパスワードを次の攻撃のために辞書に追加する、というものだ。これは、人々が特定のサービスで使用する傾向のあるパスワードに対して、攻撃を自動的に最適化する。そして彼は、レインボーテーブルを使用せずに実験を行っているが、これは彼の実験のセットアップが、パスワードはsaltされているが、攻撃者がsalt値を得ている状況もカバーすることを意味している。

  これは、人々が使いがちな典型的パスワードを探し、こうした一般的パスワードのさらなる置換を発見し、データベースで簡単に手に入れられるものを全て獲得するのに、非常に効果的な手法だ。

  攻撃者がユーザーアカウントの60パーセントから80パーセントを得られるなら、しっかりと選択されたパスワードがあるため、20パーセントから40パーセントのアカウントをクラッキングできなくても、誰が気にするだろうか?

  ではこうした手法に対してどのように防御すべきか?

  正規ユーザは単語を含むパスワードを選ぶべきではなく、長いパスフレーズの方がベターだが、それらはGPUが支援する辞書攻撃に驚くほど弱い可能性もある。

  大部分のユーザは決して強いパスワードを使用しないのだから、開発者はスロー・ハッシュ・インプリメンテーションに切り替え、ユーザごとに一意のsalt値を使用すべきだ。しかし開発者は、あまりに多くのユーザが同時に認証しようして、CPUサイクルを使い果たすのを恐れるため、スロー・ハッシュへの切り替えには驚くほど抵抗がある。

  多すぎる正規ユーザが同時にログインしようとする問題に対処するため、攻撃者たちのアイディアを盗むことができる。敵が行うのと同じように、GPUでユーザのパスワードハッシュチェックを計算すれば良い。

nvidia_cuda (134k image)

  たとえば、NVidiaのCUDAプラットフォームは、パスワード認証サーバに組み込むのに理想的だ。CUDAを使用すれば、敵と同じ土俵に立つことができる。パスワードサーバごとに一つのCUDA対応カードでも、パスワードハッシュチェックを1msで計算でき、敵もそのパスワードをクラックしようとするのに1ms必要となる。これは1秒に何億もの試みを行うのではなく、攻撃者は1秒に数千の試行に制限されることを意味している。

  もちろん、攻撃者は、例えば、100のCUDAもしくはパワフルなATIカードを入手できるが、それは非常に効果であり、そのような攻撃者に1秒に230,000,000,000回ではなく、たった100,000回の試行しか提供しない。

  残念なことに、Webもしくは他のアプリケーションに対するCUDAあるいはATI GPUサポートの統合情報を得るのは難しいが、そのためにオープンソースおよび開発者コミュニティがある。

  私はパスワード認証でCUDAを使用するためのオープンソースライブラリを見つけられなかったが、オープンソースクラッキングツールのいずれかを、容易に適用することができるだろう。たとえば:http://code.google.com/p/pyrit/ はWPA/WPA2-PSKを目的としているが、パスワードのチェックにも利用できる。

Post by — @jarnomn

まだ問題無くパスワードにデフォルト設定を使っている? やめましょう。

先週、我々は「パスワードは本当にSHA-1+saltで十分だと思いますか?」という記事を再掲載した。

  パスワードに関するこの話題を続けると:コードでパスワードハッシュを実装する際、適切なIteration Countを使用するだけでなく、同じことがKeePass.のようなパスワード管理ソフトにも当てはまる。

  強力なパスワードは記憶するのが難しいため、多くの人がKeePassや他のパスワードマネージャを使用することを選択し、そのパスワードマネージャを、一つあるいは他の動機サービスにコピーする。パスワードはデスクトップやラップトップ、携帯電話、タブレットなど、あらゆるデバイスで利用可能になる。しかしこれは潜在的な問題をもたらす。デバイスの一つに障害が起きるか、盗まれるか、あるいは動機サービスがハッキングされれば、パスワードファイルが悪の手に渡る結果になる可能性が高いのだ。

  そのための明白な防御は、パスワードデータベースファイルで強力なパスワードを使用することだ。しかし強力なパスワードの入力は、携帯電話では面倒だ。そのため多くの人がより短いパスワードを使用することになる。14文字以上のパスワードもしくはパスフレーズが適切だが、我々は皆、多くの人がそうはしないことを知っている。

  パスワードマネージャの設定で、Key Iteration Countを調整することにより、モバイル使用における短いパスワードの問題を軽減することができるかもしれない。一般的にはIteration Countを設定すれば、使用中の最も遅いデバイスで、パスワード認証が約1秒になる。

  たとえば、KeePassを使用しているなら、デフォルトの鍵導出Iteration Countは6,000だ。典型的な携帯電話では、1秒間におよそ200,000の反復が行われる。よって、適切なKey Iteration Countを設定することで、攻撃者にとってパスワードクラッキングを33倍、高くつくものにすることができる。もちろん、パスワードに1文字プラスすれば、同等の保護を与えることになり、2文字追加すれば、1024倍良い保護になる。しかしそれは、Key Iteration Countを途方もなく低い、デフォルトの値にしておく理由ではない。

  以下はWindowsラップトップのKeePassで、値は4,279,296に設定されている:

Number of key encryption rounds

  そしてモバイルパスワードマネージャを開発している人への助言は:モバイル端末のCPUパワーが低いことで、Key Iteration Countを妥当な数値(何十万というレベルではなく、400万から600万であるべき)に設定することは非常に難しい。では携帯電話のGPUをパスワード導出に使用したらどうだろう? それを使用して、鍵導出のための適切なIteration Countが獲得でき、GPUアクセラレーションを使用するパスワードクラッカーに対して、より有利になる。

Post by — @jarnomn

ミッコ・ヒッポネンが来日 @PacSecJP

  最近TEDGoogle Zeitgeistなどで精力的に講演しているF-Secureのミッコですが、今週9-10日に東京で開催のPacSecセキュリティコンファレンスにも登場して「標的型スパイ攻撃」について話してくれる予定です。三菱重工、IHIなど防衛産業や衆議院、参議院、総務省などへの標的型サイバースパイ活動が明らかになっている最近の状況を俯瞰する上で、意味のある話が聞けるでしょう。ミッコの今迄の講演では最近のセキュリティ事件の状況から、サイバー犯罪者、ハクティビスト、国家による動き、の3つを重要な論点に挙げていますが、最新の話題も含めた話が聞けそうです。

  先週はTokyo Designers Weekでしたが、今週はTokyo Security Weekと呼べそうなほどイベントが目白押しです。今日7日は日本スマートフォンセキュリティフォーラムの成果発表会があります。9-10日のPacSecに続いて12日には、エフセキュアブログ・メンバー福森さんも参加してあのDefcon CTFに出場したSutegoma2の関係者が主催する、日本発のセキュリティコンファレンス「AVTokyo」が開催されるので、こちらでも濃い話題が聞けそうです。また10日夜には日本の政府/民間を横断的につなぐセキュリティコミュニティ「WaiGaya」の集まりも企画されているようです。11日にはやはりエフセキュアブログ・メンバー鵜飼さんのFourteen Fortyのセミナーもありますね。

  アメリカなど海外のコンファレンスに行くには旅費・宿泊費を足して行くとけっこうな金額になるので、このような国際的なセキュリティイベントが日本で増えれば、勉強したりネットワーキングできる機会が増えるので良い事です。
みなさんはどのイベントに参加されますか? 


  ちなみにPacSecでの他の講演者も含めた内容はこんな感じです↓ 私も運営に参加していますが、講演内容は日本の状況も考慮して選ぶようにされています。

続きを読む

バックドア:OSX/DevilRobber.A

我々は先頃、Mac OS Xマルウェアで、バックドアとトロイの木馬的な機能を持つ「DevilRobber.A」を分析した。現在までに収集したサンプルはすべて、「The Pirate Bay」サイトの一つのユーザアカウントによりアップロードされたものだ:

DevilRobber tpb

  これら共有されたファイルは、正当なMacアプリケーションだが、マルウェアのコンポーネントを含むよう修正されていた。我々が入手したサンプルには、そのコンポーネントのバリエーションがあり、これは、いくつかのサンプル(亜種)には追加の機能が存在するということを意味している。

  同マルウェアの作者には、それぞれの制作物にさまざまな目的があったようだ。亜種の一つは、感染したマシンのキーチェーンを盗み、「pthc」というストリングにマッチする名を持つ、システム上のファイル数を記録する。これは「プレティーンのハードコア・ポルノ」を表しているのではないかと、Graham Cluleyが推測している。このマルウェア作者はまるで、感染したマシンがポルノを有していることを特定し、その素材にアクセスするために認証情報を使用することで、違法な児童虐待素材を探そうとしているかのようだ。

  他の亜種はBitcoinマイニングに関連するアプリケーションをインストールする。これらのアプリケーションは、感染したマシンのCPUおよびGPUの処理能力の双方を使用するため、コンピュータ所有者の負担により、マイニングオペレーションが向上する。目下、非常にどん欲だ!

  以下は、本稿執筆時までに我々が発見した亜種の相違に関するまとめだ:

DevilRobber variants

  さらに、我々が見た亜種はすべて、特定の規準にマッチするファイルの数を記録し、ターミナルコマンド履歴とBitcoinワレットの盗みも行う。全ての亜種は以下も実行する:

  •  リモートユーザからのコマンドをリスンするポートを開く。
  •  リモートユーザが使用できるWebプロキシを、他の攻撃の足がかりとしてインストールする。
  •  感染したマシンから情報を盗み、後で利用するため、その詳細をFTPサーバにアップロードする。

  ここでも亜種ごとに相違がある。Webプロキシにより使用されるポートは、亜種に依存する(上の表のPort Mapping欄を見て欲しい)。データを盗むためのFTPサーバも、サンプルによりさまざまだ。そしてDevilRobberのデータ窃盗ルーチンは、一定の間隔でくり返される。43200秒ごと、60000秒ごと、100000秒ごとで、これはサンプルにより異なる。

  テクニカルな点で、もう一つ興味深いのは、DevilRobberがUPnP対応のゲートウェイデバイスにポートマッピングを追加し、そのポートがネットワーク外からアクセス可能にするという点だ:

DevilRobber add port mapping

  そしてそれは、以前「Conficker/Downadup」で目にしたものだ。

  「DevilRobber」に関する詳細は、我々の解説でご覧頂ける。

モバイルセキュリティ・ティップス

  「CES 2011」が、モバイルコンピューティングの未来に関するプレビューで今年の幕を開けた。おそらくNVIDIA Tegra 2などのデュアルコアCPUを搭載した、ハイスペックのスマートフォンやタブレットがさらに多くリリースされることが期待される。我々の中には、「LG Optimus 2X」や「Motorola Atrix 4G」といった端末のSneak Peekに魅了されている者もおり、これらが今四半期リリースされることを間違いなく楽しみにしている。

  データ料金がより安価に、モバイル・コンピューティングのテクノロジがよりパワフルになることで、モバイル機器は小型のパソコンにより近づいて行く。さらに、ユーザが簡単に銀行の取引やオンラインショッピング、フライトの予約、普段のウェブブラウジングなどを行うのを手助けするアプリケーションが手に入りやすくなることで、ユーザのスマートフォンへの依存が加速される。

  モバイル・コンピューティング人気の高まりは、悪意ある攻撃に新たな扉を開いている。これは比較的新しい領域であるため、待ち受けているリスクに気づいておらず、身を守る方法がよくわからない人もいるだろう。そこで手始めとして、以下にいくつか役立つティップスを挙げておこう:

  1. システムを常にアップデートする
      これを当然と思わないことだ。モバイル・オペレーティングシステムをアップデートしておくことで、ユーザは最新の機能を享受できるだけでなく、セキュリティを守る助けともなる。パソコンと同様に、システムを最新にすることは、修正されていないセキュリティホールや脆弱性を利用する悪意ある攻撃への防御となる。

  2. 端末にセキュリティ・アプリケーションをインストールする
      モバイル機器はミニコンピュータ並みの機能を有しているため、攻撃や窃盗の魅力的な標的となる。そしてこうした状況は、フィジカルデバイスと含まれるデータを保護する必要を生む。たとえばエフセキュアの「Mobile Security」アプリケーションは、データを保護し、脅威から防御し、紛失した、もしくは盗難にあった端末を見つける助けとなる機能を提供している。

  3. クリックし到着する場所に気を付ける
      個人情報やクレジットカード情報を獲得するスキャムやフィッシングは、モバイルユーザに対するもっともアクティブな攻撃となることが予期される。ソーシャルエンジニアリングの手法は、ユーザに悪意あるリンクをクリックさせたり、有益な情報を提供させたりするために用いられる。よって、ウェブサイトが「https」で始まっていることを、機密情報を入力する前に確認することだ。

  4. パブリックネットワークでの商取引を控える
      パブリックネットワークは有益で、データ料金を節約する助けとなる。しかし、自分の電話が接続しているパブリックWi-Fiは、セキュアではないかもしれないことを心にとめておく必要がある。安全を期するため、活動はブラウジングに制限し、商取引を行うのは避けることだ。

  5. アプリケーションのインストール、獲得は信用できるソースから行う
      スマートフォンを所有することの楽しみ(そして便利さ)には、様々なことができる多彩なアプリケーションが活用できるということがある。多くのアプリケーションが存在し、独立した、モニターされていないチャネルを通じて提供されている。自分がインストールしたものに注意し、そのソースに注意することだ。ソースの中には、悪意あるコンテンツを含むリパッケージされたアプリケーションを含むものもあるかもしれない。

  6. 端末上での各アプリケーションのデータアクセスのチェックを習慣化する
      アプリケーションの中には、ユーザのデータや個人情報にアクセスするものもある。アプリケーションの範囲外、目的外のアクセスに用心すること。たとえば、SMS(読み書きおよび送信)やコール、電話帳エントリ、システムファイルにアクセスするゲームアプリケーションは、なぜそんなアクセスが必要なのかと疑問を感じる必要があるだろう。アプリケーションに対して何らかの疑いがあるなら、インストールしてはいけない。


  今年、我々はモバイルの脅威に新たに起きる動向を、さらに調査して行く予定だ。モバイルセキュリティに関する最新の調査結果やニュースに注目して欲しい。


--Zimry Ongの投稿による。

やっぱり出てきた!Androidボット

「これは結構ヤバいのでは!?」と話題の「Geinimi」。
昨年末に、Lookout Mobile Securityの記事で報告され、今後の動向が気になります。

現在のところ、マルウェアの配信元は中国の公式外マーケットのみですので、被害範囲もある程度限定されていると思われます。

今回、配布されているサイトの内の1つを調べてみますと、Geinimiが混入されたアプリケーションは比較的信頼のおける(?)アップロード職人がアップしたものに含まれていました。
#サイトの信頼度は別として・・・
恐らく、アップロードしたユーザも、Geinimiが混入されていることに気付いていないと思われます。
(そもそも、このアプリケーション自体が拾い物の可能性が大きいですが・・・)

また、現在配布されているGeinimi入りアプリケーションが、二次配布されたものと仮定しますと、オリジナルはどこかに存在していることになります。
場合によっては、中国語圏から日本語圏、英語圏と攻撃範囲を拡大してくるかもしれないですね。

geinimi_bbs



Geinimiの動作は、他のサイトで解説されておりますとおり、「位置情報」や「端末情報(端末識別番号や加入者識別子)」などをC&Cサーバへ送信するなどします。
モバイルセキュリティの専門家のご指導のもと、Geinimi入りアプリケーションをバラしてみました。
(apk拡張子はZIP形式)
送信される箇所を参照しますと、端末内の詳細な情報が送信されることが何となく分かると思います。

~/Geinimi_APP/smali/com/dseffects/MonkeyJump2/jump2/e/p.smali ← これ
method=post&IMEI=
&IMSI=
&AdID=
&CPID=
&PTID=
&SALESID=
&msgType=
imei=
&imsi=
&sms=
&type=send
&latitude=
&longitude=
&type=receive
&phone=
&MODEL=%s&BOARD=%s&BRAND=%s&CPU_ABI=%s&DEVICE=%s&DISPLAY=%s&FINGERPRINT=%s&HOST=%s&ID=%s&MANUFACTURER=%s&PRODUCT=%s&TAGS=%s&TIME=%s&TYPE=%s&USER=%s&SoftwareVersion=%s&Line1Number=%s&NetworkCountryIso=%s&NetworkOperator=%s&NetworkOperatorName=%s&NetworkType=%s&PhoneType=%s&SimCountryIso=%s&SimOperator=%s&SimOperatorName=%s&SimSerialNumber=%s&SimState=%s&SubscriberId=%s&VoiceMailNumber=%s&CPID=%s&PTID=%s&SALESID=%s&DID=%s&sdkver=%s&autosdkver=%s&shell=%s
データの送信先は、SANSでも紹介されている通り、次のドメインです。
いずれも既に接続できません。
www.widifu.com:8080;www.udaore.com:8080;www.frijd.com:8080;www.islpast.com:8080;
www.piajesj.com:8080;www.qoewsl.com:8080;www.weolir.com:8080;www.uisoa.com:8080;
www.riusdu.com:8080;www.aiucr.com:8080;117.135.134.185:8080

攻撃者側の目的は、Android端末の情報であることは容易に想像できますが、これらの情報が何に悪用されようとしているのかが、非常に興味深いところです。
昨年のZeuSがMITMO(Man in the Mobile)を使ってモバイル・バンキング口座の認証を破ったことがちょっと話題になりました。このときの攻撃対象はブラックベリーなどでしたが、もしAndroid端末を乗っ取られたことを考えますと、日本のような便利機能満載な端末は非常に恐いなぁ・・・と思うのは私だけでしょうか。

今後、スマートフォンの普及率を踏まえますと、さらにAndroid端末を狙ったマルウェアは増加していくことが予想されます。
その多くは、Geinimiのようなアプリケーションに混入するタイプが多いと思っています。

これらの対策としては、Lookoutなどでも記載されているように、
・信頼できるサイトからのみアプリをダウンロードする
・アプリケーションをインストールする際に表示される警告を確認する
・スマートフォンなどの振る舞いに異常がないかどうかチェックする
は勿論のこと、Android端末向けのアンチウイルスソフトウェアをインストールは忘れずにしておきたいところです。

来年にはどうなっているか・・・非常に興味深いですね!

遅いCPUはマルウェア防御に等しい?

  ラボでは毎日、何万もの疑わしいバイナリを扱っている。人間の研究者の比較的小さなグループが、このような量を取り扱える唯一の方法は、もちろんオートメーション化だ。我々のマルウェアサンプル管理システムにインポートされたサンプルはスキャンされ、分類され、仮想環境で実行される。記録が作成され、我々人間が分析する。

  マルウェア作者は、アンチウイルスのベンダが最新の亜種のライフスパンを攻撃するため、オートメーション化と仮想化を使用する事を知っている。(それが、彼らが毎日多数の亜種を作成する理由だ。)量が多いことに加えて、多くのマルウェアの亜種は、我々のリサーチを妨げ、可能な限り長く検出されないようにするため、バーチャルマシン検出とアンチデバッギングコードも含んでいる。

  時には、彼らのアンチデバッギングはあまりに攻撃的で、逆効果寸前ということもある。

  先週、私はデバッガの存在を検出するため、複数のメソッドを使用しているZbot(別名ZeuS)の亜種を分析していた。デバッガが検出されると、ExitProcessが即座に呼びだし、悪意あるコードは実行されない。このアンチデバッグトリックは長らく知られているものだが、その一つには面白い副作用がある。

  以下がアセンブリコードだ:

IDA

  最初に、RDTSC(Read Time-Stamp Counter)インストラクションが実行される。タイムスタンプカウンタは、各クロックサイクル上で値が増加する。カウンタの高位の32ビットはEDXにロードされ、スタック上にプッシュされる。次に、2秒間実行を停止するSleep(0x7D0)が呼び出される。最後にRDTSCが再び実行され、好意の32ビットはスタックに保存された値と比較される。値が等しければ、すなわちRDTSCが実行される実行されるたびに、EDXが同じ値を受けとるなら、サンプルはデバッガが存在しているに違いないと判断する。これは、少なくとも2秒間に2^32クロックサイクルが起き、EDXの値が増加しなければならないという仮定に基づいている。

  これは、サンプルはCPUが2GHz以上で動作すると想定していることを意味している。言い換えれば、2GHz以下のCPUでは、サンプルはデバッグされているかのように振る舞い、実行を中止し、システムに感染しないということだ。私はこのサンプルをIBM T42(1.86GHz)ノート上でテストしたが、同システムはスピードが遅かったため、感染を避けることができた。

  Zbotのアンチデバッギング防御のもう一つ別の面白い副作用は、同サンプルが感染させることの出来るどんなコンピュータも、ボットの高価なコレクションに終わるということだ。もしかしたら、Zbotをばらまいている連中には、特異な趣味があるのだろうか?

  この記事はレスポンスチームのTimoによる。

ついに標的に狙われたSCADAシステム

  先週よりWindowsのLNKショートカットファイルを使用する新たなゼロディ・エクスプロイットが、標的型攻撃に使われると懸念されています。しかし今回重要なことは、このエクスプロイットがSCADAシステムのWindows上で動くマネジメントアプリケーションをターゲットにしている点です。F-SecureのSean Sullivanのポスト  「スパイ攻撃がLNKショートカットファイルを使用」「LNKエクスプロイトに関するその後の分析」 でもこれについて少し触れられています。

  SCADAとは、工場のオートメーションなどに使われる、機器制御とモニタリングのデータ収集とを行うための取り付けモジュール型コンピューター装置のことですが、これらは工場だけでなく電力網、ガス供給、水道、石油パイプラインなど重要インフラでも大規模に使用されています。

  私は6年ほど前に重要インフラ保護関連の調査のため、サンディア研究所などアメリカ数カ所でヒアリングのために回ったことがありますが、SCADAのセキュリティはその時すでに重要な課題になっていました。その時期アメリカでは東海岸での大規模停電を経験した直後だったため、そこから検討して電力グリッドなどに使われるSCADAシステムが攻撃された場合にも大規模な電力障害が起きうると想定されていました。

  Robert McMillanによるNewYork Timesに掲載された記事 「New Virus Targets Industrial Secrets」 では、この点についてさらに掘り下げていますが、今回のLNKファイル・エクスプロイットでは、Siemens社のSCADAマネジメント・ソフトウェアの「Simatic WinCC」のみが狙われる仕組みである事が判明しているそうです。このエクスプロイットはUSBデバイスに潜み、WindowsOSのPCに挿し込まれるとまずスキャンを開始、他のUSBデバイスを探して自身をコピーしようとするか、またはSiemensのWinCCソフトウェアを発見するとデフォルトパスワードでログインしようとします。そのためSiemens社は先週金曜にはすでに顧客に対してアラートを出しているそうです。

  NYTimes記事中で、Mississippi州立大学の研究者Wesley McGrewによると、このエクスプロイット作成者がもしもっと広範囲な悪用を狙うなら、もっと普及しているSCADAマネジメント・システムのWonderwareやRSLogixを試しただろうと発言しています。今回のエクスプロイットは、SCADAを乗っ取って人質にし身代金要求するためかもしれない、という観測もあります。

  SCADAのコンピューターは、未だに1980年代の8bitや16bitのCPUのOSなど搭載しないコンピューターの世界と近いものがあり、最近流行のArduino程度の性能かそれ以下のものも多いでしょう。また使用される場所も人里離れた山奥などもあり、一度設置されると何年あるいは何十年も壊れない限り使われる可能性がありますから、ソフトウェアのアップデートも行われないで放置され得ます。またパスワードなども変更される前提になっていないことから、デバイスにハードコードされている場合もあります。

  しかし、1990年代にはSCADAの世界にもネットワーク化の波が押し寄せたために、階上階を重ねるようにTCP/IPが追加されてきました。そのため、メーカーによってはPCの世界では考えられないようなインプリメントをした場合があったようで、以前アメリカで聞いた話でも、TCP/IPのポート番号を直接制御コマンドに割り当てられたSCADAが使われた工業用ロボットがあり、セキュリティ・テストのためにポートスキャンをかけただけで、いきなりトンデモない動作を始めた例があったそうです。

  また、低速CPUでRAMも限定量しか搭載されていないコンピューターでありOSすら走っていないとしたら、ファイアーウォールやフィルタリングなどのベーシックなセキュリティ機能が入る余裕もないといえます。TCP/IP通信もむき出しのパケットが流れているため、アメリカ商務省下の国立標準技術局(NIST)ではSCADAモジュールにアドオンするためのAES暗号通信モジュールを研究していました。

  従来から、サイバー戦やサイバーテロリズムの危惧からSCADAのセキュリティについて指摘が出されて来ていましたが、今回明らかにSCADAをターゲットにしたエクスプロイットが登場したことで、現実の問題として認識する必要があります。今回の問題を指摘したのがベラルーシのアンチウィルス企業だったことは、地理的な要素から見たら偶然ではないでしょう。重要インフラのSCADAに対する攻撃が成功した場合は、国としてのインフラ機能を奪うことができます。日本でもSCADAは各方面で使われています。輸入品よりは日本の電機メーカーのものが多く使用されていると云われていますが、将来に備えて警戒が必要な分野と言えると思います。

ベガスで「Black Hat」が開催

ラスベガスで、Black Hatブリーフィングの初日が終了しようとしている。Black Hatは最大のセキュリティ・カンファレンスの1つで、常に熟練リサーチャーたちが研究発表に招かれている。

Jeff Moss opening BlackHat 2009

  BlackLightルートキット・スキャニング・テクノロジに深く関わってきたため、私は多くのRootkitトラック・セッションに出席して過ごした。初日にはいくつか、興味深いプレゼンテーションがあった:

Stoned Bootkit, Peter Kleissner

  Peterは、Master Boot Recordを使用して、ブートプロセスの早い段階でアクティベートするルートキットを作成するための、オープンな開発フレームワークについて発表した。同テクノロジの大部分は以前のリサーチで周知のものだが、恐ろしいのはStoned Bootkitの拡張性にある。

Stoned Bootkit

  Peterは簡単に、いくつかの拡張例に触れた。一つの例は、環境保護という目的で、ACPIを使用してCPUを減速させるCO2ルートキット・プラグインだ! さて、これはまったく素晴らしいが、私の考えでは、Stoned Bootkitフレームワークの最も熱心なユーザは、同マルウェアのオーサー・コミュニティにいるだろうと思う。私の言葉を額面通り受け取って欲しいのだが、彼らがコミュニティに参加しているのは、熱帯雨林を守るためでは無いはずだ。

Ring -3 Rootkitsの紹介, Alexander Tereshkin および Rafal Wojtczuk

  ルートキットは発達し続けている。先年は、ユーザモード(Ring 3)からカーネル(Ring 0)へ、カーネルからハイパーバイザ(Ring -1)に進み、そしてついにはシステム管理モード(Ring -2)まで進んでいる。

Alexander Tereshkin presenting

  AlexanderとRafalは、Intel AMT実行環境で、悪意あるコードを実行する可能性について調査した。AMTはリモート管理のためのものだが、残念なことに、良き人々にとってはリモート管理であっても、攻撃者にとってはルートキットによるバックドアを意味している。しかし、これがルートキット・カウントダウンの終結でないことは間違いない。Ring -4 ルートキットがどこで動作するかなど、誰が推測したいと思うだろうか? とは言え、我々は間もなく知ることになるだろうと、私は確信している。

  もちろん、すべてがルートキットについてだ、という訳ではない。初日には、SSL/TLSのビルディングブロックの1つである、X.509に関する2つの興味深い講演があった。

Dan Kaminsky presenting

  その中で、Moxie MarlinspikeとDan Kaminskyがそれぞれに、ほとんどのインプリメンテーションに関わる問題を発見した。すなわち、攻撃者がすべてのWebサイトで有効であるように見える証明書を作成することを可能にする問題だ。証明書のネームフィールドに、巧みに空文字を埋め込むことにより、ブラウザが悪意ある証明書を正当なWebサイトに誤ってマッチングさせるのだ。どちらのリサーチャーも素晴らしい仕事をしている!

ラスベガスからサインオフ
Antti

PS. もし皆さんがBlack Hatに出席されているなら、木曜の午後に行われるミッコのConfickerワームに関する講演をぜひお聞き頂きたい。

バックナンバー
セキュリティ関連リンク
セキュリティ機関

政府関連

セキュリティ関連団体

研究機関・大学
詳細カテゴリ
メディア関係者の皆様へ
エフセキュアブログメンバー
エフセキュアブログメンバー
ミッコ・ヒッポネン
エフセキュア CRO(セキュリティ研究所主席研究員)(ヘルシンキ)
(Twitterアカウント)
(研究所Twitter)
ショーン・サリバン
エフセキュア セキュリティ・アドバイザー(ヘルシンキ)
(Twitterアカウント)
高間 剛典
メタ・アソシエイツ代表
(公式ブログ)
(Twitterアカウント)
星澤 裕二
株式会社セキュアブレイン 最高技術責任者
(公式ブログ)
(人物紹介)
岩井 博樹
デロイト トーマツ リスクサービス株式会社 (〜2013年3月 株式会社ラック) 情報セキュリティ大学院大学 客員研究員
(Twitterアカウント)

(人物紹介)
福森 大喜
株式会社サイバーディフェンス研究所 上級分析官
CDI-CIRTメンバー
(人物紹介)
鵜飼 裕司
株式会社FFRI 代表取締役社長
(人物紹介)
福本 佳成
楽天株式会社
執行役員
OWASP Japan
アドバイザリーボード
Rakuten-CERT representative
(人物紹介)
神田 貴雅
エフセキュア株式会社 プロダクトグループ 部長
富安 洋介
エフセキュア株式会社 プロダクトグループ
コーポレートセールスチーム
エフセキュア株式会社
(エフセキュアブログ公式Twitterアカウント)

海外記事翻訳
株式会社イメージズ・アンド・ワーズ
エフセキュアメールマガジン

ブログに載らないメルマガ限定情報や、技術者インタビュー、製品情報、技術解説を掲載して毎月一回配信します。アドレスのみの登録で購読無料。

エフセキュアブログQRコード
QRコード