2019年3月7日
株式会社Doctor Web Pacific
多くの人が「ファイアウォール」という用語を聞けば火災安全関係であると認識します。 ですが、「ファイアウォール」が火災安全だけでなく、別の部分のセキュリティの名前として使われていることを知っている人はほとんどいません。
砂が入ったバケツや砂場、防火金庫のような、燃えているものを消火することができ、また何が起きたのかを突き止めることができます。
サンドボックスと呼ばれる流行のセキュリティ機能も同様の目的で作られました。アプリケーションに悪意のあるプロパティが存在する(または存在しない)場合でも、そのアプリケーションが他のシステムに何らかの影響を与えないように設計された環境に置かれます。
サンドボックスは、隔離された環境でファイルを調べたり、アプリケーションを起動したりするために使用することができます。 2番目のオプションは、多くの場合、ユーザーが安全にオンライン取引を実行できるようにする安全なブラウザに実装されています。
サンドボックスの設計者は当然、すべての実行可能ファイルを完全に分離して、すべてのユーザーデータに完全にアクセスできるようにします。 しかし、サンドボックスはシステムリソースも消費するため、システムのフットプリントやプログラムの分離度が異なるさまざまなサンドボックス設計が存在します。
最も信頼できるものは仮想化を使用しています。 各ファイルがこの目的のために特別に起動された別々の仮想マシンで開かることが理想的です。 これらは最後の格納容器に似ています。
ただし、この場合、ファイルごとに個別の仮想マシンを実行する必要があります。 それ以外の場合は、ファイルはテスト環境と別のコンピューターとの間で転送される必要があります。
さらに、サンドボックス内のファイルシステムとレジストリは、感染を取り除くために何度も何度も元の状態にロールバックする必要があります。 それ以外の場合、スパムボットはサンドボックス内で機能し続けます。 仮想マシンにはそれに対処する手段が他にありません。 さらに、インターネットからダウンロードしたリムーバブルメディアやゲームにも、悪質なバックドアが含まれているかどうかを確認する必要があります。
また、システムリソースの大部分を仮想マシンに割り当てる必要があります。 仮想環境でマルウェアをテストするには、少なくともMicrosoft Officeがインストールされている必要がありますが、商用ライセンスはお金がかかります。
別のアプローチでは、ほとんどのトロイの木馬が動作するためにファイルを必要とするという仮定に基づいています。 そのため、彼らがファイルにアクセスしようとする場合は、毎回、彼らにそのコピーを渡しましょう!
サンドボックスはファイルシステムとレジストリへのアクセスを制限します。 実際のデータはそのまま残り、プログラムはサンドボックス内のファイルおよびレジストリコピーへのアクセスを許可されます。
アクセス許可の制御は、プログラムがサンドボックスからオペレーティングシステムのインターフェースを介して攻撃を仕掛けるのを防ぎます。
しかし、前の場合と同様に、ここではテスト対象のアプリケーションに必要なデータをコピーするためにリソースを割り当てる必要があります。 もちろん、最近のハードドライブは、大容量の記憶容量を持っていますが、アプリケーションがディスク全体を検索してすべてのデータを暗号化しようとすると、すべてのファイルを複製する必要があります。 そして、そうなった場合、ディスクスペースのすべてを使ってしまうかもしれません。
結局、複数のファイルを別々のサンドボックスで同時にテストされます。
そして最大の問題は、分離が完全ではないことです。 したがって、マルウェアが他のシステムコンポーネントにアクセスする必要がある場合、または、特別なハッキング技術を使用する場合は、サンドボックスの境界を越えて侵入する可能性があります。
では、まったく分離せずにアプリケーションの動作を観察するだけにした場合、どうなるでしょうか。
ここではルールベースの実行について話しています。 ファイルシステムとレジストリを変更しようとする試みはすべて、一連のセキュリティ規則を使用して制御されます。 ルールセットがより徹底的であるほど、それはより良いセキュリティ環境の提供を意味します。 このアプローチでは、データを目的の送信先に自由に送信できることと、システムコンポーネントを悪意のある変更から保護することのバランスが取れています。 アクセス許可の制御は、プログラムがサンドボックスからオペレーティングシステムのインターフェースを介して攻撃を仕掛けるのを防ぎます。
まあ、これはDr.Webの予防的保護によるもののようです。
しかし、マルウェアがサンドボックスから侵入する危険性だけが問題ではありません。 Webページをロードするためにダウンロードする必要があるファイルはいくつでしょうか。また、 どのようなデータが自動的にハードドライブに書き込まれるでしょうか?
ユーザーがダウンロードするファイルは氷山の一角にすぎません。 一方、トロイの木馬は追加のペイロードをダウンロードすることが知られています。 それでは、どのように変更を制御する必要があるファイルを追跡することができるでしょうか?また、それらすべてを監視する必要があるでしょうか。 これを達成するのに十分なリソースがあることは決してありませんし、それにも多くの時間がかかります。では、サンドボックスに配置する必要があるファイルを自動的に選択するフィルタを作成できるでしょうか?
この種の解決策は決して完璧ではありません。 悪意のある実行可能ファイルを認識できず、悪意のあるスクリプトについては何もできません。 その上、それらは悪意のあるブラウザ拡張をインストールするのを防ぐことができません。
そしてもう一つの問題には、おそらく最も重大な問題になります。 市販されているすべてのサンドボックスはよく知られています。 そのため、攻撃者は自分のマルウェアがサンドボックスで実行されているかどうかを判断する機能を簡単に提供できます。
トロイの木馬のインストーラは、トロイの木馬がデバッガ又は仮想マシン上で起動されたことを検出することができ、それはその分析を妨害します。 トロイの木馬がサンドボックスの下で実行されているかどうかもチェックします。
このトロイの木馬は、悪意のある意図を明示することなく特定の期間アイドル状態を維持し、解放された後に活動を開始します。
Tell us what you think
To ask Doctor Web’s site administration about a news item, enter @admin at the beginning of your comment. If your question is for the author of one of the comments, put @ before their names.
Other comments