はじめに
サイバーセキュリティコンサルタントのハナは、組織のセキュリティ強化に情熱を注いでいます。この記事では、新しいマルウェアアズアサービス (MaaS) ローダーである D3fack の独特で困難な特徴を調査していきます。
Inno Setup マルウェアのトリアージ
D3fack マルウェアの最初のステージは Inno Setup インストーラーとして配布されており、初めは無害に見えます。しかし、Inno Setupスクリプトを詳しく調べると、IDP.DLLからのインポートやPowerShellコマンドへの参照など、疑わしい要素が見つかります。コンパイルされた Inno Setup コードを逆コンパイルし、obfuscated された文字列を解読することで、マルウェアの機能をより深く理解することができます。
obfuscated 文字列の解読
Inno Setup スクリプト内の obfuscated された文字列は、標準 base64 アルファベットの文字順が逆転したカスタムの base64 ライクなアルファベットで暗号化されていることがわかりました。これらの文字列を自動的に解読し、Inno Setup スクリプト内で置き換えることで、マルウェアの実行方法、URLからのファイルダウンロード、PowerShellコマンドの実行などの詳細が明らかになりました。
ダウンロードされた JPHP ペイロードの分析
D3fack マルウェアの2つ目のステージは、JPHP (Java ベースの PHP) アプリケーションと呼ばれる大きなexecutable ファイルです。従来のJavaデコンパイラーではJPHP コードを適切に処理できないため、JPHPコードをJava クラスファイルに変換して、Recaf デコンパイラーを使用することで、マルウェアの機能を分析することができました。そこから、追加のコンテンツをURLからダウンロードし、PowerShellコマンドを実行することが明らかになりました。
JPHP の逆解析における課題
JPHP コードは、JVM上で動作する独自の言語実装であるため、従来のJavaデコンパイラーでは対応できません。しかし、JPHPコードをJavaクラスファイルに変換する独自のプロセスを使用することで、よりアクセスしやすい方法でマルウェアの機能を分析することができました。
潜在的なプロジェクトアイデア
このビデオでは、JPHP 環境への参照を、より読みやすいJavaコードに置き換えることで、JPHP コードを単純化するプロジェクトの提案があります。これにより、構文変換技術を使用して、逆解析プロセスをより容易にすることができます。ハナは読者に対し、マルウェア分析で遭遇した特殊な実行環境について探求し、逆解析プロセスを改善するための潜在的なプロジェクトを検討するよう呼びかけています。
まとめ
D3fack マルウェアローダーは、検出を回避し、逆解析プロセスを複雑化するために使用される、サイバー犯罪者の進化する戦術を示しています。JPHP コードが提示する独特の課題を理解し、創造的な解決策を適用することで、研究者やセキュリティ専門家は、これらの高度な脅威に立ち向かうことができるでしょう。
ポイント:
- D3fack マルウェアは Inno Setup インストーラーとして配布され、逆コンパイルや文字列解読によって疑わしい要素が明らかになります。
- 2つ目のステージであるJPHP ペイロードは大きな課題を提示し、従来のJavaデコンパイラーは対応できません。
- JPHPコードをJavaクラスファイルに変換することで、Recafデコンパイラーを使用し、より分析しやすくなります。
- JPHP コードの単純化や逆解析プロセスの改善につながる潜在的なプロジェクトを探索することで、セキュリティコミュニティに役立つ洞察が得られます。