メインコンテンツにスキップする

今日の世界では、アンチウイルスソフトウェアはコンピューターやサーバーを含むエンドポイントのセキュリティを確保するうえで欠かせない重要な側面となっています。アンチウイルスソフトウェアはサイバー脅威に対する重要な防御を提供しますが、絶対確実なものではありません。サイバー犯罪者はさまざまな手法を用いてアンチウイルスをかいくぐり、マルウェアの検出を回避します。

アンチウイルスのメカニズム

アンチウイルスソフトウェアは、あるファイルが悪意のあるものかどうかを判定することを目的としています。しかも、ユーザーの操作性に悪影響を及ぼさないよう、迅速に行わなければなりません。アンチウイルスソリューションが悪意のあるソフトウェアを探索するためによく利用する方法として、ヒューリスティックスキャンとシグネチャベーススキャンの2つがあります。

  • ヒューリスティックベースのスキャンでは、アルゴリズムやパターンを使用してファイルの機能を精査し、ソフトウェアが何か疑わしいことを行っていないかどうかを見極めます
  • シグネチャベースのスキャンでは、ファイルの形式を精査し、既知のマルウェアサンプルと一致する文字列やパターンを探します

マルウェア の作成者は、アンチウイルスと対峙する場所としてディスク上とメモリ上の2つから選べます。ディスク上の場合、一般的な例はシンプルな実行ファイルです。アンチウイルスは、ディスク上のファイルのスキャンと分析に長い時間をかけることができます。一方、アンチウイルスがメモリにロードされる場合、アンチウイルスがファイルと接する時間が短くなるため、マルウェアの実行が成功する可能性が高まります。

アンチウイルスの制約

アンチウイルスソフトウェアはシステムのセキュリティを確保する手段として推奨されますが、結局のところ、デバイスのハッキングが不可能になる訳ではありません。一般的なアンチウイルス製品では、これまでに特定されたマルウェアから構成されたマルウェアシグネチャのデータベースを利用します。新種のマルウェアサンプルが見つかると、そのデジタルシグネチャが作成され、データベースに追加されます。つまり、新しいマルウェアが出回ってからアンチウイルス製品の定義データベースがアップデートされるまでの間、このマルウェアに対して脆弱な期間があるということです。この期間中に マルウェアが甚大な被害をもたらす可能性があります。したがって、アンチウイルスソフトウェアは追加のセキュリティレイヤーになりますが、脅威を完全に緩和するとは言えないのです。

それに加え、マルウェアの記述に使用できるオペレーティングシステム(OS)非依存の言語が増え続けていることから、1つのマルウェアプログラムがより幅広いオーディエンスに影響を与える可能性があります。より高度になっていくサイバー脅威に後れを取らないためには、アンチウイルス製品も進化しなければなりません。ハッカーがアンチウイルス製品を回避する技術を磨き続けていることや、今日のセキュリティ環境の複雑さを考えると、これは大きな課題です。

アンチウイルス回避技術

目標を達成するために、サイバー犯罪者はさまざまな回避技術を開発してきました。これには以下のものが含まれます。

コードの圧縮と暗号化
ワームやトロイの木馬の大多数は圧縮されて暗号化されています。ハッカーは圧縮および暗号化用の特殊なユーティリティも作成しています。CryptExe、Exeref、PolyCryptなどのユーティリティを使用して処理されたインターネットファイルは、悪意のあるファイルであることがわかっています。圧縮および暗号化されたワームトロイの木馬を検知するために、アンチウイルス製品では、新しい解凍および復号化方法を追加したり、悪意のあるプログラムのサンプルごとに新しいシグネチャを追加したりする必要があります。

コードの変異
悪意のあるソフトウェアとして検知されにくくするために、トロイの木馬のコードと「スパム」命令を併用して、トロイの木馬の本来の機能を損なわずに一部のコードを変更します。この場合、感染したWebサイトからトロイの木馬がダウンロードされる際に、動的にコードの一部が変更されています。Warezovメールワームは、この技術を使用して深刻なマルウェアの蔓延を引き起こしました。

ステルス技術
一般的にトロイの木馬に使用されるルートキットテクノロジーは、感染したファイルがオペレーティングシステムやアンチウイルス製品に認識されないように、システムの機能を遮断して置き換えます。他のシステムファイルやトロイの木馬が登録されているレジストリブランチまでも隠ぺいされることがあります。

アンチウイルス製品とアンチウイルスデータベースのアップデートのブロック
多くのトロイの木馬とネットワークワームは、標的のコンピューターで実行中のアプリケーションのリストからアンチウイルス製品を能動的に検索します。そして次に、マルウェアは以下の動作を試みます。

  • アンチウイルス製品のブロック
  • アンチウイルスデータベースの破損
  • アンチウイルス製品のアップデートプロセスの正常動作の妨害

マルウェアに対処するために、アンチウイルス製品はデータベースの整合性を管理し、トロイの木馬からプロセスを隠すことで自らを防御する必要があります。

Webサイト上のコードのマスキング
アンチウイルスの提供元はトロイの木馬を含んだWebサイトのアドレスを常に収集しており、ウイルスアナリストはサイトのコンテンツを調査して、データベースに新しいマルウェア情報を追加できます。しかし、アンチウイルススキャンへの対抗策として、アンチウイルス会社が要求を送信したときにトロイの木馬の代わりにトロイの木馬以外のファイルがダウンロードされるように、Webページを変更している場合があります。

大量攻撃
大量攻撃では、新しいバージョンのトロイの木馬が短期間で大量にインターネットに配信されます。これにより、アンチウイルス会社は膨大な数の新しいサンプルを分析することになります。各サンプルの分析には時間がかかるため、サイバー犯罪者は、その間に悪意のあるコードをユーザーのコンピューターに侵入させようと考えています。

ゼロデイ脆弱性

アンチウイルス製品は定期的にアップデートされます。これは一般に、ゼロデイ脅威に対応するためです。マルウェア回避技術の1つであり、サイバー犯罪者はソフトウェアまたはハードウェアの脆弱性を悪用して、アンチウイルス製品にパッチが用意される前にマルウェアをリリースします。

ファイルレスマルウェア

マシン上でマルウェアを実行する最新の手法であり、標的のマシンに何かを保存する必要なく実行できます。ファイルレスマルウェアは完全にマシンのメモリ上で動作するため、アンチウイルススキャナーを回避できます。感染したWebページにアクセスしてもマルウェアは直接配信されません。代わりに、関連するプログラムの既知の脆弱性を利用してマルウェアがメモリ領域にダウンロードされ、そこからマルウェアが実行されます。ファイルレスマルウェアが危険なのは、マルウェアが仕事を終えたりマシンがリセットされると、メモリが消去され、悪質なマルウェアがインストールされた証拠が残らない点です。

フィッシングフィッシングは、サイバー犯罪者が情報を盗むために最もよく利用する技術です。フィッシング攻撃の攻撃者は、信頼できる送信元や既知の送信元を装って被害者を騙します。ユーザーが悪意のあるリンクをクリックしたり、感染したファイルをダウンロードしたりすると、攻撃者がネットワークへのアクセス権を手に入れて機密情報を盗み出せるようになります。アンチウイルスソフトウェアは既知の脅威しか検知できず、新たな変異プログラムに対して確実に効果を発揮することはできません。

ブラウザーベースの攻撃  アンチウイルスソフトウェアはオペレーティングシステムにはアクセスできないため、ブラウザーベースの攻撃によって回避できてしまいます。こうした攻撃は、悪意のあるスクリプトやコードを使ってユーザーのデバイスを感染させます。ブラウザーベースの攻撃からを防ぐために、防御ツールを備えたブラウザーもありますが、このようなツールが効果を発揮するためには一貫して正しく使い続けなければなりません。

ペイロードのエンコードマルウェアがアンチウイルススキャナーを回避するもう1つの手法が、ペイロードのエンコードです。サイバー犯罪者は多くの場合、ツールを使用してこの作業を手動で行います。マルウェアが配信されてアクティブになると、デコードされて標的に損害を与えます。一般には、エンコードされたウイルスの正面に付加された小さなヘッダープログラムを介して実行されます。アンチウイルススキャナーはこのプログラムを脅威と認識せず、エンコードされたウイルスは単にデータとして扱われます。ヘッダーがトリガーされると(たとえば、既存の実行ファイルに埋め込まれることによる)、マルウェアがメモリ領域にデコードされ、その領域のプログラムカウンタを飛び越えてマルウェアを実行します。

A man sitting a computer

マルウェア回避技術に対して防御する方法

アンチウイルスソフトウェアの利用は、サイバーセキュリティ戦略全体の中核に据えるべきです。しかし、この記事で説明しているように、サイバーセキュリティ対策をアンチウイルスソフトウェアだけに頼るべきではありません。セキュリティを最適化するためには、多層的なサイバーセキュリティアプローチに投資するとよいでしょう。自社のネットワークをサイバー犯罪者から守るために使用できるその他のツールには、次のようなものがあります。

デバイスの暗号化デバイスを暗号化すると、正しいパスワードやキーを知らないユーザーがデバイス内のデータにアクセスすることはできなくなります。デバイスが盗まれた場合やマルウェアに感染した場合でも、適切に暗号化されていれば不正アクセスを防止できます。

多要素認証(MFA)MFAでは、アカウントにアクセスしようとするユーザーに対し、時間に依存するコードなど複数種類の情報を入力するよう求めます。これにより、パスワードに依存する場合と比べてセキュリティが強化されます。デバイスやアカウントに機密情報や個人情報を保管している場合は、これが非常に重要になります。

パスワードマネージャーアカウントやネットワークのセキュリティ保護にはパスワードが重要な役割を果たしますが、アカウントごとに異なる強力なパスワードを使う必要があります。強力なパスワードとは、少なくとも15文字(理想としてはさらに多く)で構成され、大文字と小文字、数字、および記号を混用したものです。 パスワードマネージャーはパスワードを把握するのに役立ちます。 一意のパスワードを安全に保管できる格納庫であり、ハッカーを寄せつけません。

サイバーセキュリティ意識向上トレーニングサイバー犯罪が増加の一途をたどっている中で、企業は従業員に対し、サイバー攻撃に伴うリスクやサイバー攻撃が発生した場合の対処方法について指導する必要があります。サイバー脅威を取り巻く状況についてユーザーを啓蒙することで、フィッシングメールなどの疑わしいアクティビティをユーザーが認識できるように支援することができます。

EDR(Endpoint Detection and Response)EDRソリューションでは、ネットワークとエンドポイントのふるまいを監視し、そのログを保存します。EDRテクノロジーは、サイバー攻撃の性質を把握するために必要なデータをセキュリティ担当者に提供し、アラートやエンドポイント修復を自動化します。

サイバー犯罪者は通常、1つのアンチウイルス回避技術を単体で利用することはありません。むしろ、さまざまな状況に対応できるようにマルウェアを設計して、攻撃が成功する確率を最大化します。幸い、セキュリティコミュニティは警戒を怠らず、新種のアンチウイルス回避技術やマルウェア回避技術について常に学習し、新たな防御手法を生み出し続けています。

関連記事:

関連するカスペルスキー製品:

アンチウイルス回避技術とマルウェア回避技術

アンチウイルスはサイバーセキュリティを構成する重要な要素ですが、時には回避されてしまうこともあります。アンチウイルス回避技術とマルウェア回避技術について詳しく学びましょう。
Kaspersky Logo