モバイル脅威検出テクノロジー。 Origins Tracing™について少し

habravchane様、Androidに対する脅威について繰り返しお話ししており、おそらく懐疑論者をすでに食べています。 本日は、このモバイルプラットフォームのマルウェアについてではなく、検出に使用されるテクノロジーについてお話しすることをお勧めします。 そして、おそらく、Dr.Web for Androidに実装されたOrigins Tracingテクノロジーから話を始めましょう。



今日、このトピックに関するすべての質問には、マーケティングの専門家ではなく、モバイルの脅威に関するDoctor WebのアナリストであるAlexander Goryachevが回答しています。



Dr.Web for Androidのハイライトの1つは、Origins Tracingテクノロジーです。 製品の誕生と同時に現れなかったが、後でそれに移されたことは興味深い。 Doctor Webの従業員が独自に開発した独自の技術であるOrigins Tracingは、さまざまな種類のマルウェアを検出するウイルス対策機能を大幅に向上させることができます。 このテクノロジーの本質は、脅威ごとに動作アルゴリズムの説明が作成され、それがウイルス対策データベースに追加されることです。 そのような記録の1つは、悪意のあるアプリケーションのファミリ全体をカバーするのに十分な場合があります。そのため、このファミリからの新しい修正とバージョンの検出は、ウイルス対策研究所での予備分析なしで保証できます。 同時に、特定のサンプルごとに記録する必要がないため、ウイルスベースのボリュームが大幅に削減されます。この方法は、多くのアンチウイルスベンダーにとって主な方法でした。 すべての秘密を明らかにすることはできませんが、Origins Tracingの主な機能について説明します。



まず、基本的なAndroidアプリケーションの外観を思い出しましょう。apk拡張子を持つメインソフトウェアパッケージ(SuperGame.apkなど)は、すべてのアプリケーションコンポーネントを含む標準のzipアーカイブです。 内部にはAndroidManifest.xmlファイルがあります。このファイルには、アプリケーションの名前、バージョン、使用するライブラリ、サービス、および操作に必要な機能が示されています。 dexファイルだけでなく、アプリケーションのデジタル署名があります。classs.dexは、Dalvik仮想マシン(Dalvik VM)で動作するようにコンパイルされたメインの実行可能コード(Dalvik Executable)です。 Dalvik仮想マシンでは、ほとんどの悪意のあるプログラムが何らかの形で標準のAndroidアプリケーションとして機能するため、最も重要なのはdexファイルです。



ウイルス対策を使用してアプリケーションをスキャンする場合、Origins Tracingテクノロジは、中間バイトコードへの逆コンパイルに基づくdexファイルの特定のモデルを構築します。 ウイルスデータベースには、そのようなモデルに関する情報が含まれています。 既存の特別な距離関数は、あるモデルと別のモデルの類似性を判断できるため、脅威が検出されます。



例でOrigins Tracingの作業を検討します。



有料のSMSメッセージをプレミアム番号(Android.SmsSendの典型的な代表者)に送信するように設計された2つの悪意のあるアプリケーションがあります。 スクリーンショットは、メインの実行可能ファイルのサイズが異なることを示しています(それぞれ194 424バイトと233 728バイト):

画像



AndroidManifest.xmlによると、両方のアプリケーションの名前は同じrreh.nyurとバージョン1.0です。 次に、それらをモバイルデバイスで直接検討します。

画像

画像

画像

画像

画像

両方のアプリケーションの設計と操作はまったく同じです。 では、Dr.Web for Androidがこれらのプログラムにどのように応答するかを見てみましょう。

画像



ご覧のとおり、検出中の脅威の名前にはプレフィックス.originが含まれています。 つまり、Origins Tracingテクノロジーは、その基準に基づいて、114番目のサブファミリーのAndroid.SmsSendファミリーの次の代表を発見しました。



調査済みのSMSトロイの木馬などの類似の悪意のあるプログラム間の実行可能なdexファイルのサイズの違い(最初のスクリーンショットで見たように)は、ほとんどの場合、ウイルス作成者が標準の署名検出方法を使用してアンチウイルスによる検出を回避しようとする試みによって引き起こされます。 このために、たとえばアプリケーションのソースコード内のクラス、関数、変数の名前を変更するなど、簡単なトリックを使用できます。 そのようなコードをコンパイルした後、変更された内容のdexファイルが受信されます。これは、ウイルスデータベース内の既存の署名に対応しなくなり、従来の署名方法による検出を防ぐことができます。



Origins Tracingテクノロジーの大きな利点は、非署名方式を使用することです。これにより、多くの場合、悪意のあるプログラムの更新または変更されたバージョン、および既知のプログラムに基づいて動作する悪意のあるプログラムの検出をより効果的に処理できるようになります。



このテクノロジーのもう1つの利点は、変更されたコードだけでなく、埋め込まれたコードも検出できることです。

この状況は、Android.Gongfu、Android.DreamExploid、Android.Geinimi、Android.ADRDなどでよく見られます。 Android.SmsSendのようなマルウェアや自給自足の商用スパイウェアとは異なり、これらのファミリーは侵入者によって正当なアプリケーションに拡散します。 Origins Tracingは、Adware.Airpush、Adware.Startappなどの広告モジュールにも対応しています。これらのモジュールは、開発者または不正なユーザーが変更されたときに、意図的にアプリケーションに統合されます。






All Articles