現在、世界には7,260,000,000を超えるモバイルデバイスがあります。つまり、世界の人口の91.54%が1つあります。これらのデバイスの約2,500,000,000,000は、オペレーティングシステムとしてAndroidを持っています。
これらのデバイスが私たちにとってますます重要になっていることは秘密ではありません。彼らは実質的に一日中私たちと一緒にいて、多くの個人情報が含まれています。
マルウェア分析は、3つの主要なタイプに分類できます。静的分析、動的分析、ハイブリッド分析。
静的分析は、それを分析するためにコードを実行する必要がない分析と見なされます。これは、マルウェアを意図せずにアクティブ化する可能性がないため、非常に安全にするルールまたはヒューリスティックを介したパターンの検索に基づいています。このタイプの分析は、動的分析よりも高速であり、その検出システムの性質上、既知のマルウェアの検出率が高くなります。
一方、動的スキャンは、マルウェアを実行して分析する必要があるスキャンです。つまり、その実行が実際のシステムに影響を与えないように、より大きなインフラストラクチャを隔離するために配置する必要があります。このタイプのスキャンは、静的スキャンよりも信頼性が高く、未知のマルウェアを検出できます。
最後に、静的分析と動的分析手法の両方を使用する分析は、ハイブリッド分析として知られています。現在、Kaspersky、Avira、Avastなどのよく知られたマルウェア対策ソリューションなど、このタイプの分析を使用して、異なる段階に分割しています。
静的分析のカテゴリには、ヤラのルールがあります。 Yaraルールは、既知のマルウェアを識別および分類できるマルウェア署名の一種です。

ルールには、通常、ルール自体に関する情報が配置されるメタセクション、マルウェアを比較するパターンが定義されている文字列セクション、マルウェアと見なされるためにパターンが満たさなければならない条件が定義されている条件セクションの3つのセクションがあります。ヤラのルールは非常に複雑になる可能性があるため、どのように機能するかを詳細に理解したい場合は、ドキュメントを読むことをお勧めします。
ヤラのルールのもう1つの好ましいポイントは、それらがアナリストによって広く使用され始めている現在の手法であるということです。つまり、多くの貢献があることを意味します。
Yaralyzeは、2つの静的解析手法を使用するAndroidデバイス用のマルウェア検出ツールであり、1つはハッシュ分析に基づいてYaraルールを使用し、もう1つは使用しています。レポートのストレージと視覚化を可能にします。クライアントサーバーアーキテクチャを使用して設計されており、サーバーをクラウドでホストできるクライアントサーバーアーキテクチャを使用して、クライアントがインストールされ、 +130,000ヤラルールと+500,000のハッシュを使用できるモバイルデバイスとVirusshareおよびGithubから取得したマルウェアアプリの+500,000ハッシュを使用して設計されています(ルールとハッシュはリポジトリで公開されていません)。





2種類のテストが実行されました。 1つのタイプのテストは、既知のマルウェアの検出におけるツールの有効性をテストし、ブラタ、シャークボット、ケルベロス、フルボットマルウェアのサンプルを使用し、もう1つは分析速度をテストすることでした。


画像で見ることができるように、マルウェアファイルを検出することができ、Winrarの実際のAPKで誤検知を生成しません。
| APK | T1 | T2 | T3 | T4 | 平均 |
|---|---|---|---|---|---|
| Flubot(マルウェア) | 2.27s | 2.23s | 2.24s | 2.29s | 2.257S |
| Sharkbot(マルウェア) | 2.54s | 2.51s | 2.53s | 2.56s | 2.535S |
| ウィンラー | 2.18s | 2.20秒 | 2.16s | 2.16s | 2.175S |
| アプリケーションハッシュの場所 | T1 | T2 | T3 | T4 | 平均 |
|---|---|---|---|---|---|
| クライアントDB | 0.079S | 0.081S | 0.078s | 0.077S | 0.0787S |
| サーバーDB | 0.088s | 0.085S | 0.087S | 0.091S | 0.0877S |
| 偶然の一致 | 0.087S | 0.088s | 0.084S | 0.088s | 0.0867S |
最初の表では、速度の観点から、平均分析時間が非常に似ていることが観察されることがわかります。これは、分析されたすべてのAPKが、扱うマルウェアの種類を絞り込むルールがあるため、マルウェアとして既にマークされている場合でも、すべてのヤラルールを通過するためです。さらに、分析時間は、論理的であるように、分析するAPKのサイズによっても条件付けられます。これらのAPKには、サイズが大きく異なりませんでした。
2番目のテーブルでは、時間も非常に似ていることがわかり、ハッシュがサーバーのデータベースにあるとき、または一致していないときに、クライアントがサーバーにリクエストを行う必要があるため、これは奇妙に思えるかもしれません。等しい時間は、テスト時にサーバーが単一のリクエストを受信していたため、ワークロードが大きくなく、データベースには検索に過度に負担するのに十分な数のハッシュがないという事実によって正当化される可能性があります。