
.NET MAUIは、.NET Multi-Platform App UIのことです。
Microsoftが提供するクロスプラットフォームフレームワークで、C#とXAMLを使用してモバイルやデスクトップのアプリを開発できます。
従来は このポジションにはXamarinというものがあったのですが、これの置き換えとして提供が開始されています。
新しいものは新しい特徴を持っています。
.NET MAUIは、1つのコードベースで、Android、iOS、macOS、Windows、Tizen、 Linuxなどの複数のプラットフォームで実行できるアプリを開発できます。
開発の結果、生成されるファイルの形式も従来の開発フレームワークとは異なっています。
このことが回避手段として悪用されている状況となっています。
- 悪意あるコードはDEXファイルにもネイティブライブラリにもない
従来のAndroid環境向け作成されたアプリケーションでは、悪意あるコードはファイル形式がDEXファイルやネイティブライブラリのものに含まれていました。
このため、アンチウイルスなどのセキュリティ製品では、こういったファイルの内容を検査するように最適化されていました。
しかし、.NET MAUIを使って開発されたAndroidアプリケーションの構成の中には、それとは別のBLOBファイル(Binary Large Object)が含まれています。
この開発環境を使用してコンパイルした結果、アプリケーション作成者が書いたコードがBLOBファイルの中に収められるのです。
アプリケーション開発者の中には、脅威アクターも含まれます。
脅威アクターの記述した悪意あるコードはBLOBのなかに潜むことになります。
このため、セキュリティ製品の検査をすり抜けることができる可能性が高まります。
ここで説明した内容はAndroidの話でしたが、.NET MAUIのサポートする他の環境でも同じことが考えられます。
Write once, run anywhere.
「一度〔プログラムを〕書けば、どこでも実行できる」でしょうか。
Javaが出てきたときによく聞かれたものですが、この言葉の衝撃を思い出します。
一度だけ書くといろいろな場所で動作するようにでき、そしてセキュリティ製品での検出もされにくいように仕上がるという感じがします。
一般開発者にとって便利な開発ツールは、脅威アクターにとっても都合が良いこともあるようです。
何とも言えない気分です。
New Android Malware Campaigns Evading Detection Using Cross-Platform Framework .NET MAUI
https://www.mcafee.com/blogs/other-blogs/mcafee-labs/new-android-malware-campaigns-evading-detection-using-cross-platform-framework-net-maui/
この記事をシェア |
---|