台湾の複数の企業において新たなランサムウェアファミリーを使用した標的型攻撃の被害が確認されました。「ColdLock」と名付けられたランサムウェアファミリーは標的のデータベースやメールサーバを暗号化する機能を備え、感染した企業に甚大な被害を及ぼす危険性があります。
トレンドマイクロが収集した情報によると、この標的型攻撃は、2019年5月上旬から攻撃を開始していたことが示されています。またランサムウェアの解析結果からは、過去の2つのランサムウェアファミリー「Lockergoga」(「LOCKERGOGA」ファミリーとして検出対応)および「Freezing」(「FREEZING」ファミリーとして検知対応)、さらにはオープンソースのランサムウェアキット「EDA2」との類似点も確認されました。今回被害が確認された複数の企業以外が攻撃を受けた兆候は、現在のところ確認されておらず、このマルウェアファミリーが広く拡散している状況は考えにくいと判断しています。
トレンドマイクロ製品のユーザはこの脅威から保護されています。今回確認されたランサムウェアは「Ransom.MSIL.COLDLOCK.YPAE-A」や「Ransom.PS1.COLDLOCK.YPAE-A」などとして検出されます。以下、今回の脅威およびランサムウェアの挙動、他のランサムウェアとの関連について解説します。
■感染経路
現在のところ、今回の攻撃がどのような経路で被害企業のネットワーク内に侵入したかの詳細は明らかではありません。何らかの方法で対象企業ネットワークに侵入後にActive Directoryサーバへのアクセス権を取得したようです。そしてグループポリシーの設定を変更し、ランサムウェアをドメイン内の端末上に拡散、実行させたものと推測されます。
不正活動を実行するペイロードは「.NET実行可能ファイル(DLLファイル)」として感染端末に侵入します。このDLLファイルはConfuserExパッカーにより圧縮および保護が施されています。そして.NET実行可能ファイルのPowerShellリフレクティブロードを使用して、このDLLファイルが実行されます。
またこのDLLファイルは、感染端末上でランサムウェア活動を実行するために2つの条件を確認します。まずランサムノート(脅迫状)に使用される「%System Root%\ProgramData\readme.tmp」というファイルの存在を確認し、存在しない場合のみランサムウェア活動を行います。これにより、感染端末内で自身が重複して実行されるのを回避します。
さらに2つ目の珍しい方法として感染端末内の時計を確認し、当日の午後12時10分以降であった場合に実行されます。それよりも前の時間だった場合、午後12時10分になるまで15秒のスリープを繰り返しながら感染端末内の時計を確認します。
■暗号化の手法
このランサムウェアは、任意のファイルを暗号化する際、まず特定の準備動作を実行します。通常、ファイルへのアクセス防止機能が実行されている可能性があるため、まずは感染端末内でこうした機能に関連した以下のサービスを終了します。
- mariadb
- msexchangeis
- mssql
- mysql
- oracleservice
これらは、各種データベースやExchangeメールサーバで使用されるサービス名となります。さらにOutlookのプロセスも終了します。
また、このランサムウェアは、感染端末上で実行されているWindowsのバージョンを確認します。Windows 10の場合、Windows 10向けの動作を実行します。さらにWindows Defenderを無効化し、その他、フィードバック機能、マルウェア検体をMicrosoftに送信する機能、通知機能なども無効にします。
そして任意のファイルを暗号化する動作も一般的なランサムウェアとは少し異なっています。まず、以下のディレクトリは暗号化の対象としません。
- %System Root%\Program Files
- %System Root%\Program Files (x86)
- %System Root%\ProgramData
- %System Root%\Users\all users
- %System Root%\Users\default
- {malware directory}
- {drive letter}:\System Volume Information
- {drive letter}:\$Recycle.bin
ただし、上記ディレクトリの配下であっても以下のディレクトリは暗号化の対象となります。
- %System Root%\ProgramData\Microsoft\Windows\Start Menu
- %System Root%\Program Files\Microsoft\Exchange Server
- %System Root%\Program Files (x86)\Microsoft\Exchange Server
- 「Program Files」、「Program Files (x86)」、「ProgramData」の配下にある以下の文字列を含むディレクトリ:
- sql
- Mariadb
- Oracle
上記条件以外の場合、感染端末のディレクトリ内のファイルが暗号化の対象になるかどうかは、以下の3つの条件で判断されます。
- 対象のディレクトリ内のファイル数が100未満である
- 対象のディレクトリ内でファイルの最終書き込み時刻が2018年1月1日より前である
- 対象のディレクトリ内のファイル名に以下の文字列が含まれていないこと
- .git
- appdata
- cache
- image
- lib
- log
- logs
- microsoft
- reference
- res
- resource
- script
- setup
- skin
- temp
- theme
- third_party
- thirdparty
上記3つの条件がすべて満たされている場合、対象のディレクトリ内で以下の拡張子のファイルを除くすべてのファイルが暗号化されます。
- .avi
- .dll
- .gif
- .iso
- .m2ts
- .mkv
- .mov
- .mp3
- .msi
- .ocx
- .tmp
- .wmv
その他、もしこれらの3つのいくつかもしくはすべての条件が満たされない場合は、以下の拡張子のファイルのみが暗号化されます。
- .7z
- .aspx
- .bak
- .cpp
- .csv
- .doc
- .docx
- .gz
- .hwp
- .java
- .jpg
- .jsp
- .lnk
- .odt
- .one
- .php
- .ppt
- .pptx
- .pst
- .rar
- .sh
- .sql
- .txt
- .xls
- .xlsx
- .xml
- .zip
暗号化プロセスでは、CBCモードでAES機能が使用されます。そして暗号化理論のソルトと秘密鍵を使用して必要な鍵および初期化ベクトル(IV)が生成されます。必要な鍵はコードに埋め込まれ、IVはランダムな32バイトの長い文字列のSHA-256ハッシュを使用して動的に生成されます。そしてハードコードされた公開RSA鍵を使用してファイルが暗号化されます。使用された公開鍵は脅迫状にも含まれます。暗号化されたファイルには「.locked」の拡張子が付与されます。
ランサムウェアが使用する脅迫状は、以下のように感染端末内の複数の箇所に保存されます。
- %Desktop%\How To Unlock Files.Txt
- %System Root%\ProgramData\readme.tmp
- %User Startup%\How To Unlock Files.Txt
- {Encrypted Drive}:\How To Unlock Files.Txt
脅迫状の内容は、前述で指摘した他のランサムウェアの脅迫状とも類似しています。英語で記載されており、以下のような内容となります。
!!!端末内のすべてのファイルを暗号化した!!!
ファイルはRSA 2048によって暗号化されているため自力では決して復号できない!ファイルを復号したければCEOかCTOか誰でもよいからわれわれに電子メールをよこせ。復号用の秘密鍵は5日間だけ保持しておく。時間稼ぎなどしないこと。ではメール連絡を待っている。
その後、このランサムウェアはすべての感染端末上の壁紙を以下の内容に変更します。壁紙には、脅迫状のテキストファイルが保存されている場所が示され、脅迫状を読むように指示されています。壁紙の表示は感染端末内のレジストリ設定を変更することで行われます。
■他のランサムウェアファミリーとの関連
一見すると、暗号化されたファイルに「.locked」という拡張子を用いる手法からLockergogaとの関連が想起されます。ただし、他のランサムウェアファミリーもこのような拡張子の使い方をするため、これだけで双方の関連性を確証することはできません。一方、Freezingとの間にはより強い関連性が見られます。ADサーバの侵害を起点とするネットワーク内での拡散、反射型インジェクション(Reflective DLL Injection)、内部モジュールのアーキテクチャなど、複数の共通点があります。
また、不正コードの観点からは、オープンソースのランサムウェアキットEDA2との類似点が確認されます。数年前、EDA2を用いた愉快犯によるランサムウェア脅威が拡散したことがあり、その関連も指摘されます。
■被害に遭わないためには
ランサムウェアは長く続く脅威として認識されており、「2019年年間セキュリティラウンドアップ」でも指摘したようにランサムウェアの攻撃総数は、2018年の約5,500万から2019年の約6,100万に増加するなど、依然として猛威を振るっています。また、企業を狙う攻撃が台頭し、より危険度を増しています。企業が被害を受けた場合、社内ネットワークを介して簡単に攻撃が拡散してしまうリスクをはらんでいます。
ランサムウェアの被害に遭わないために、特に法人利用者では以下のベストプラクティスを推奨します。
- 「3-2-1ルール」を使用して定期的にファイルをバックアップすること。 つまり、2つの異なる形式で3つのバックアップを作成し、1つのコピーをオフサイトに保存することです。
- アプリケーション、ソフトウェア、オペレーティングシステムを定期的なパッチ適用で更新し、悪用可能な脆弱性に対処しておくこと。ゼロデイ脆弱性については、仮想パッチを利用してください。
- ご使用のセキュリティ対策ソフトのサンドボックス分析をアクティブ化します。 これにより、隔離された環境で不正ファイルが実行できるため安全な監視が可能になります。
■トレンドマイクロの対策
法人利用者では、複数のレイヤーを複数の技術で守る、多層防御が特に効果的です。防護のポイントとして、メール、Webなどのゲートウェイでの防御、エンドポイントでの防御、内部ネットワークとサーバでの防御が特に重要です。法人向けのエンドポイント製品「Trend Micro Apex One™」や中小企業向けのクラウド型エンドポイントセキュリティサービス「ウイルスバスター™ビジネスセキュリティサービス」では、「FRS」技術によりウイルス検出と同時に、挙動監視機能(不正変更監視機能)の強化により、侵入時点で検出未対応のランサムウェアであってもその不正活動を検知してブロックできます。メール対策製品「Deep Discovery™ Email Inspector」や「Trend Micro Cloud App Security™」などで使用可能なサンドボックス機能も未対応のランサムウェアの検出に有効です。また、クロスジェネレーション(XGen)セキュリティアプローチにより、高い検出率と誤検出/過検出の回避を両立しつつ、コンピュータへの負荷軽減を実現します。「Trend Micro XDR」は、最も効果的なAIと専門家による分析を、お客さま環境内のセンサーから収集された活動データに適用して、誤検出が少なく精度が高いアラートを生成します。
■侵入の痕跡(Indicators of Compromise、IoCs)
侵入の痕跡(Indicators of Compromise、IoCs)はこちらを参照してください。
参考記事:
- 「Targeted Ransomware Attack Hits Taiwanese Organizations」
By Greg Young (Vice President for Cybersecurity)
翻訳: 与那城 務(Core Technology Marketing, Trend Micro™ Research)