SPN通信 2010年12月30日

ゼロデイ攻撃の脅威とその予防


みなさん、こんにちは。 SPNの塩月です。

先日、Internet Explorer(IE)にリモートでのコード実行の可能な脆弱性が存在することが報告されました。マイクロソフトはセキュリティアドバイザリを公開して注意を促していますが、現時点でこの脆弱性に関するセキュリティ更新プログラム(パッチ)は提供されておりません。

  マイクロソフト セキュリティ アドバイザリ(2488013)
  Internet Explorerの脆弱性により、リモートでコードが実行される
  http://www.microsoft.com/japan/technet/security/advisory/2488013.mspx
この脆弱性を利用して不正なコード実行を行う攻撃用プログラムも、すでにインターネット上で広く公開されており、いわゆる「ゼロデイ攻撃」の危険性が非常に高い状態だといえます。

ところでそもそも「ゼロデイ攻撃(zero-day attack)」とはどういう意味でしょうか?

情報システムのリスクをコントロールする上で、パッチの適用は非常に重要な管理策として位置づけられます。脆弱性に関するパッチがベンダーから提供された場合、その脆弱性の危険性が高ければ高いほど、早急なパッチ適用が求められます。なぜなら、パッチの提供はすなわちその脆弱性の詳細情報の公開に他ならず、いつその脆弱性を利用した攻撃が行われるかわからないからです。たとえばパッチの公開から二日後にパッチを適用したとしましょう。その場合、二日間、窓が開きっぱなしの状態になっているわけです。いつ泥棒が窓から侵入してもおかしくありません。できる限り早く窓を閉める、つまりパッチを適用する必要があります。

このように脆弱性対策では、パッチの提供、パッチの適用、そしてその脆弱性を利用した攻撃の開始というそれぞれのタイミングが重要になります。当然、理想的なのは「パッチ提供→パッチ適用→攻撃開始」ですが、時として「攻撃開始→パッチ提供→パッチ適用」という状況が発生します。今回のように、ベンダーが脆弱性の存在を認識してパッチを提供する前に、その詳細や攻撃プログラムが公開された場合です。このような状況下で発生する攻撃がゼロデイ攻撃です。パッチの提供から攻撃が開始される日をカウントしてゼロ以下になることからこのように呼ばれています。

ゼロデイ攻撃は、いわばワクチンがまだ開発されていない新型インフルエンザのようなものですので、根本的な対策(すなわちパッチ適用)を講じることはできません。しかし新型インフルエンザが手洗い、うがい、マスク着用といった日常的な予防策である程度防げるように、ゼロデイ攻撃もさまざまな予防策によってその影響を最小限にとどめることが可能となります。例えばウイルス対策ソフトを適切に運用することで、リアルタイム保護機能によってゼロデイ攻撃を利用したマルウェア感染を未然に防いでくれる場合もあるでしょう。また日常的に管理者ユーザではなく、一般ユーザとしてログオンしてPCを使用することにより、攻撃を受けた際の影響範囲を限定させることが期待できます。

マイクロソフトはWindowsシステム上で稼動するソフトウェアに脆弱性があった場合でも、その脆弱性を利用して攻撃することを極力困難にするためのツール「EMET」を提供しています。

  The Enhanced Mitigation Experience Toolkit
  http://support.microsoft.com/kb/2458544
EMETはWindows OSが備えているDEPやASLRといった、さまざまな脆弱性の悪用防止技術を補い強化するものです。ゼロデイ状態の脆弱性は、脆弱性の存在自体をコントロールすることはできませんが、悪用のハードルを高めることでその脆弱性に起因するリスクをコントロールすることは可能です。EMETの詳細についてはまた別の機会に解説したいと思いますが、このようなツールの利用もゼロデイ攻撃の予防策として効果が高いと考えられますので、ぜひ一度、検討していただければと思います。

それではみなさん、またお会いしましょう。
どうぞよい年をお迎えください。

合同会社セキュリティ・プロフェッショナルズ・ネットワーク
代表社員 塩月誠人