APT&標的型攻撃
オープンソースソフトウェアを悪用した標的型攻撃事例について解説
標的型攻撃の中で、オープンソースのソフトウェアが悪用される事例が増えています。これは、正規の無害なソフトウェアを悪用することで監視や調査の目を免れることができる、標的型攻撃に好都合な手口であるからです。本ブログ記事では、オープンソースのソフトウェアがどのように悪用されるのか、トレンドマイクロが行った最近の調査内容について解説し、講じるべき検出対策についてお伝えします。
標的型攻撃の中で、オープンソースのソフトウェアが悪用される事例が増えています。これは、正規の無害なソフトウェアを悪用することで監視や調査の目を免れることができる、標的型攻撃に好都合な手口であるからです。しかし、詳細調査を実施することで、不正活動を見つけ出し、攻撃の意図を明らかにすることができます。本ブログ記事では、オープンソースのソフトウェアがどのように悪用されるのか、トレンドマイクロが行った最近の調査内容について解説し、講じるべき検出対策についてお伝えします。
■インシデント調査事例から「Notepad++」の悪用
あるインシデントを調査する中で、「notepad.exe」という名前のファイルの存在に違和感を覚えました。すでに多くの人がご存知のように、Notepadは、広く世に知られている正規アプリケーションです。ただし、一部のマルウェア作成者は、検出を回避するために、notepad.exeなどの正規ソフトウェアの名前を使用して不正ファイルを偽装することがあります。
このnotepad.exeファイルは、Windows NT operating system kernelの略称であるntoskrnl.exeを介してドロップされました。この活動は、ntoskrnl.exeが持つ脆弱性を攻撃するエクスプロイト、あるいはネットワーク共有を介して実行されたようです。弊社が取得したデータから推測すると、おそらくは後者です。根本原因分析(RCA)を実行すると、この悪意のあるnotepad.exeファイルが、以下に示すツールを呼び出して、不正活動を実行することが明らかとなりました。
実行可能ファイルの名前 | 実行する動作 |
ipconfig.exe | WindowsのIPネットワーク設定情報を取得する |
net.exe |
|
reg.exe | ファイルへのレジストリキー/エントリ入力をダンプする |
systeminfo.exe | サービスパックレベルを含む、ローカルまたはリモートマシン上のOSの環境設定情報を収集する |
tasklist.exe | ローカルまたはリモートマシン上で現在実行中のプロセスの一覧を取得する |
表1:実行可能ファイルの名前と実行する動作の一覧
notepad.exeファイルが持つ上記プロセスや不正活動との関連性は、この不正ファイルが、不正リモートユーザからのコマンドを受け取る典型的なバックドア型マルウェアであることを示しています。しかし、妙な点に気づきました。notepad.exeファイルのプロパティ一覧にあるDetails(詳細)には以下が表示されます。
「File description(ファイルの説明)」、「Product name(製品名)」、「Original file name(商標)」を見ると、ソースコードエディタとして使用される、オープンソースのソフトウェア「Notepad ++」の名前が記されています。一般的にNotepad ++ファイルは、「notepad++.exe」という名前で流通しており、この検体に見られるような「notepad.exe」という名前は使われません。バージョンも2020年4月にリリースされたv7.8.6となっており、この調査を行った時点における最新バージョンであるv7.9.1(2020年11月リリース)ではありませんでした。
問題のファイルを実行すると、次のようになります。
このファイルのユーザインターフェイスは、典型的な正規のNotepad ++ファイルのように見えます。一見、何も不審な点は見られません。しかし、動作の面においてこの検体は、正規のNotepad ++が実行しないことを実行していることがわかりました。この検体は、c:\windows\debugフォルダ内に存在するファイル「config.dat」を検索します。検体のコードを解析すると、ファイル「config.dat」が姿を現すため、この動作は注目に値します。
■コード解析
この不正なNotepad ++ファイルのコードを逆コンパイルすると、次のコードが表示されます。
比較対象として、典型的な正規のNotepad ++ファイルから取得したコードスニペットを以下に示します。
これらのコードスニペットには多くの類似点があります。しかし、不正なNotepad ++ファイルには、暗号化されたBLOBファイル(config.dat)を読み込む追加のコードが記述されています。このBLOBファイルは、コードを復号してメモリ内で実行します。これによって、バックドアの不正活動が実行されます。これは、PLUGXのような、古いタイプのマルウェアを連想させます。
弊社が観察した2つのインスタンスは、それぞれ同じローダを使用しますが、異なるペイロードを配信することがわかりました。ペイロードの1つは「TrojanSpy.Win32.LAZAGNE.B」として検出され、もう1つは、「Ransom.Win32.EXX.YAAK-B」(Defray ランサムウェア)として検出されます。さらに調査を進めると、同じローダを利用する他のBLOBファイルも発見され、異なるペイロードを読み込むこともわかりました。
今回のインシデントで確認されたファイルは、標的型攻撃の一種である水飲み場型攻撃によって組織のネットワーク内に侵入したと弊社は推測しています。最初のPC端末が感染した後、管理共有を介して不正なnotepad ++とconfig.datが拡散するのは容易なことです。弊社が今回調査した悪意のあるnotepad.exeファイルは、不正ソースからダウンロードされたものであり、NotepadやNotepad++.exeの公式サイトからダウンロードされたものとは関係ありません。
■トロイの木馬化されたオープンソースのソフトウェア
解析された検体は、追加された不正コード以外、正規のNotepad ++ファイルに非常によく似ているため、特に技術面で経験の浅いセキュリティ担当者にとっては、無害なファイルと誤認されてしまう可能性があります。攻撃者は、オープンソースのソフトウェアをトロイの木馬化することで、今回のような偽装を可能にしました。Notepad ++のソースコードは一般に公開されているため、マルウェア作成者を含め、誰でもこのコードにアクセス可能です。
攻撃者は、広く一般に利用されているソフトウェアのオープンソースコードを見つけ出し、暗号化されたBLOBファイルを読み込むなどの機能を実行可能にする不正コードを追加することで、トロイの木馬化します。これにより得られるファイルのバイナリコードのほとんどは悪意のないものであり、追加された不正コードがファイルを読み込むだけであることから、それほど不審と判断されない動作となることを意味します。さらに、暗号化されたBLOBファイルにはファイルヘッダが存在しません。
このため、人工知能(AI)や機械学習(ML)ベースのソリューション、あるいは単一の防御層にのみ焦点を当てたソリューションなどのセキュリティ対策だけでは、これらの脅威を検出することが難しくなっています。本記事で解説したタイプの脅威をブロックするには、セキュリティチームがネットワーク環境内のデータや動作を相互に関連付けることができるよう、各セキュリティレイヤーを可視化できるソリューションが役立ちます。
■まとめ
ユーザは、オープンソースのソフトウェアを悪用する脅威を回避するために、信頼できる正規ソースからのみ、ファイル、アプリケーション、およびソフトウェア(オープンソースのソフトウェアなど)をダウンロードする必要があります。
たとえば、Notepad ++利用者は、公式Webサイトから関連ファイルをダウンロードすることができます。企業は、承認されたダウンロードサイトの一覧を作成して、従業員に配布することで、不正ソースから悪意のあるファイルをダウンロードするリスクを抑止することができます。別のセキュリティ対策として、従業員がオフィス端末にソフトウェアをインストールする前に、ITチームから承認を得るよう定めることもできます。セキュリティ・ITチームのためにも、ダウンロードしたバイナリをチェックサムで検証することも強くお勧めします。優れたオープンソースプロジェクトは、公式にリリースされたバイナリのチェックサムを維持しているからです。
■トレンドマイクロの対策
「Trend Micro™XDR」は高度な分析と人工知能(AI)技術を使用して、エンドポイント、メール、ネットワークなどのアラートを相関させ、一つの防御ポイントの情報だけではわからないような脅威を可視化し、深刻度のレベルに応じて優先順位を付けます。これにより、企業は攻撃がどのように開始され、どの程度拡散しているかを迅速に把握でき、被害を最小化することができます。
■侵入の痕跡(Indicator of Compromise、IoC)
今回の記事に関する侵入の痕跡はこちらを参照してください。
参考記事:
- 「Weaponizing Open Source Software for Targeted Attacks」
by Abraham Camba, Bren Matthew Ebriega, Gilbert Sison, Trend Micro
記事構成:岡本 勝之(セキュリティエバンジェリスト)
翻訳:益見 和宏(Core Technology Marketing, Trend Micro™ Research)