あるセキュリティ研究者がWindows Subsystem for Linux(WSL)用に作成された悪意のあるLinuxバイナリを発見し、攻撃者がWindowsマシンを攻撃するための新しい方法を試行していると発表しましtあ。
検出を回避するためのWSLの利用
WSL環境を標的とした最初の攻撃は5月初旬に発見され、8月22日まで2~3週間ごとに出現し続けました。これらのサンプルは、WSL環境のローダとして動作し、一般のファイルスキャンサービスでは非常に低い検出率を実現しています。
Lumen社のBlack Lotus Labsのセキュリティ研究者はレポートの中で、悪意のあるファイルにはペイロードが埋め込まれているか、リモートサーバーからフェッチされていると述べています。
次のステップは、WindowsのAPIコールを使用して実行中のプロセスにマルウェアを注入することですが、この手法は新しい方法ではありません。
今回確認された少数のサンプルの中で、一般にルーティング可能なIPアドレスを持つものは1つだけであり、これは脅威となる人物がWSLを利用してWindowsにマルウェアをインストールすることをテストしているようです。
これらの悪意のあるファイルは、主にPython 3に依存しており、PyInstallerを用いてDebian用のELF実行ファイルとしてパッケージ化されています。
「VirusTotalでのごくわずかな検出率となっていることからもわかるように、Windowsシステム用に設計されたほとんどのエンドポイントエージェントは、ELFファイルを分析するために構築されたシグネチャを持っていませんが、同様の機能を持つ非WSLエージェントは頻繁に検出されます」-Black Lotus Labs
検出を逃れるWSLマルウェア
PythonとPowerShell
Python 3で書かれた亜種の1つは、Windows APIを一切使用せず、WSLのローダーとしては初めての試みと思われます。また、Pythonの標準ライブラリを使用しているため、WindowsとLinuxの両方に対応しています。
研究者は、テストサンプルの中にロシア語で「Hello Sanya」と印字するコードを見つけました。このサンプルに関連する1つのファイルを除いて、すべてのファイルにローカルIPアドレスが含まれていましたが、パブリックIPは185.63.90[.]137を指しており、研究者がペイロードを取得しようとしたときにはすでにオフラインになっていました。
また、別の「ELF to Windows」ローダーの亜種では、PowerShellを利用してシェルコードを注入・実行していました。これらのサンプルのうちの1つは、Pythonを使用して、実行中のアンチウイルスソリューションを殺す関数を呼び出し、システム上での持続性を確立し、20秒ごとにPowerShellスクリプトを実行していました。
複数のサンプルを分析した際に観察された矛盾点から、研究者はコードは最終段階ではあるものの、まだ開発中であると考えています。
公開されているIPアドレスからの可視性が限られていることから、6月下旬から7月上旬にかけての活動は、エクアドルとフランスのターゲットに限定されています。
マイクロソフトは、2016年4月に「Windows Subsystem for Linux」を導入しました。WSLがベータ版をリリースしたばかりの2017年9月、チェックポイントの研究者はWSLを悪用してセキュリティ製品から悪意のあるコードを隠すことができる「Bashware」と呼ぶ攻撃を実演しました。
Lumen社のBlack Lotus Labsのレポートでは、検知されたキャンペーンに関連する危険性の指標を提供しており、防御者が検知ルールを作成する際に役立ちます。また、ファイルのハッシュ値やこの企業の幅広い活動に関するデータについては、同社のGitHubページを参照してください。
Comments