ランサムウェア
「Locky」を模倣した新種の暗号化型ランサムウェア「PyLocky」について解説
今日の脅威状況において、暗号化型ランサムウェアの活動は前年2017年と比べ顕著な停滞状態にあるとはいえ、現在もサイバー犯罪者の主要な手口の一つとして利用されています。実際、2018年上半期内では、わずかに活動の増加を見せ、セキュリティ対策製品を回避するための微調整により、その活動を維持しています。
今日の脅威状況において、暗号化型ランサムウェアの活動は前年2017年と比べ顕著な停滞状態にあるとはいえ、現在もサイバー犯罪者の主要な手口の一つとして利用されています。実際、2018年上半期内では、わずかに活動の増加を見せ、セキュリティ対策製品を回避するための微調整により、その活動を維持しています。今回取り上げる「 PYLOCKY(パイロッキー) 」(「 RANSOM_PYLOCKY.A 」として検出)に関しては、すでに確立されたランサムウェアファミリを模倣し、それらの悪評に便乗し活動しています。
トレンドマイクロは7月下旬から8月全体を通して、暗号化型ランサムウェア「PyLocky」を拡散するスパムメールの活動の波を確認しました。このランサムウェアは、身代金要求文書において「Locky」になりすましていますが、「PyLocky」と「Locky」の相互の関係性はありません。
「PyLocky」は人気の高い汎用スクリプト言語であるPythonでプログラミングされており、単独でも動作する実行ファイルとしてパッケージ化するため、Python専用パッケージングツールPyInstallerを利用しています。Pythonでプログラミングされたランサムウェアは目新しい手口ではなく、2016年には「CryPy」(RANSOM_CRYPY.A)、2017年には「Pyl33t」(RANSOM_CRYPPYT.A)が検出されていますが、今回注意すべき点としては、「PyLocky」にはアンチ機械学習機能が備わっていることです。PyInstallerとオープンソースのスクリプトベースのインストーラであるInno Setup Installerを組み合わせて使用することで、機械学習ベースのソリューションを含む静的解析を困難にしています。似たような手口としては、NullSoftインストーラを利用した「CERBER」の亜種の攻撃をトレンドマイクロはすでに確認しています。
「PyLocky」の拡散もまた集中的に発生しており、欧州諸国、特にフランスを対象としたいくつかのスパムメールが確認されました。スパムメールの攻撃は開始当初は小規模でしたが、拡散した量と拡散範囲は最終的に増加しました。
図1:拡散された「PyLocky」関連の国別分布
図2: ランサムウェア「Locky」になりすました「PyLocky」の身代金要求文書
■感染の流れ
トレンドマイクロは8月2日、サイバー犯罪者がフランスの企業にスパムメールを利用して「PyLocky」を拡散する活動を確認しました。その手口として、請求書に関連するようなソーシャルエンジニアリングの手法を利用した件名によりユーザがリンクをクリックするように誘導し「PyLocky」を含む不正なURLにリダイレクトさせます。
図3:「弊社は貴社からの支払いを受領いたしました」という件名のスパムメール
この不正URLは、署名付きの実行ファイル”Facture_23100.31.07.2018.exe”を含むZIPファイル(Facture_23100.31.07.2018.zip)に誘導します。実行されると、このZIPファイル(Facture_23100.31.07.2018.exe)は、いくつかのC ++およびPythonライブラリとPython 2.7 Core の「ダイナミック・リンク・ライブラリ(Dynamic Link Library、DLL)」をマルウェアコンポーネントとして、PyInstallerを利用して作成されたランサムウェア本体の実行ファイル(lockyfud.exe)とともに感染PCの「C:\Users\{user}\AppData\Local\Temp\is-{random}.tmp」に作成します。
図4: ZIPファイルのデジタル署名情報
図5:「PyLocky」に関連するマルウェアコンポーネント
「PyLocky」は、画像、動画、文章、音声、プログラム、ゲーム、データベース、およびアーカイブファイルを暗号化します。「PyLocky」が暗号化するファイル形式は次のとおりです。
「.dat」、「.keychain」、「.sdf」、「.vcf」、「.jpg」、「.png」、「.tiff」、「.gif」、「.jpeg」、「.jif」、「.jp2」、 「.jpx」、「.j2k」、「.j2c」、「.fpx」、「.pcd」、「.bmp」、「.svg」、 「.3dm」、「.3ds」、「.max」、「.obj」、「.dds」、「.psd」、「.tga」、「.thm」、「.tif」、「.yuv」、「.ai」、「.eps」、「.ps」、「.svg」、「.indd」、「.pct」、「.mp4」、「.avi」、「.mkv」、「.3g2」、「.3gp」、「.asf」、「.flv」、「.m4v」、「.mov」、「.mpg」、「.rm」、「.srt」、「.swf」、「.vob」、「.wmv」、「.doc」、「.docx」、 「.txt」、「.pdf」、「.log」、「.msg」、「.odt」、「.pages.」、「.rtf」、 「.tex」、「.wpd」、「.wps」、「.csv」、「.ged」、「.key」、「.pps」、「.ppt.」、 「.pptx」、「.xml」、「.json」、「.xlsx」、「.xlsm」、「.xlsb」、「.xls」、 「.mht」、「.mhtml」、「.htm」、「.html」、「.xltx」、「.prn」、「.dif」、 「.slk」、「.xlam」、「.xla」、「.ods」、「.docm」、「.dotx」、「.dotm」、 「.xps」、「.ics」、「.mp3.」、「.aif」、「.iff」、「.m3u」、「.m4a」、 「.mid」、「.mpa」、「.wav」、「.wma」、「.msi」、「.php」、「.apk」、 「.app」、「.bat」、「.cgi」、「.com」、「.asp」、「.aspx」、「.cer」、 「.cfm」、「.css」、「.js」、「.jsp」、「.rss」、「.xhtml」、「.c」、 「.class」、「.cpp」、「.cs」、「.h」、「.java」、「.lua」、「.pl」、 「.py」、「.sh」、「.sln」、「.swift」、「.vb」、「.vcxproj」、「.dem」、 「.gam」、「.nes」、「.rom」、「.sav」、「.tgz」、「.zip」、「.rar」、 「.tar」、「.7z」、「.cbr」、「.deb」、「.gz」、「.pkg」、「.rpm」、 「.zipx」、「.iso」、「.ged」、「.accdb」、「.db」、「.dbf」、「.mdb」、 「.sql」、「.fnt」、「.fon」、「.otf」、「.ttf」、「.cfg」、「.ini」、 「.prf」、「.bak」、「.old」、「.tmp」、「.torrent」
図6:「PyLocky」が PC のプロパティ情報を取得するコード(画像上部)
■暗号化の手順
図4、図5に示したように「PyLocky」は、ハードコードされた拡張子を持つファイルを暗号化するように設定されています。また「PyLocky」は、Windows Management Instrumentation(WMI)を悪用して、感染PCのプロパティをチェックします。感染PCの可視メモリの合計サイズが4GB未満の場合、「PyLocky」はアンチサンドボックス機能として、999,999秒(11.5日以上)の間スリープ状態になります。ファイルの暗号化作業は、感染PCの可視メモリが4GB以上の場合に実行されます。暗号化の後、「PyLocky」はコマンド&コントロール(C&C)サーバとの通信を確立します。
「PyLocky」は、PyCryptoライブラリを使用し、3DES(Triple DES)方式を用いて暗号化を実行します。「PyLocky」は論理ドライブごとに反復処理を行い、 まずはじめにファイルのリストを生成し、各ファイルを暗号化されたバージョンで上書きしてから、身代金を要求する脅迫文を書き送ります。
「PyLocky」の身代金要求文書は、英語、フランス語、韓国語、イタリア語で書かれており、これらのことから、韓国語やイタリア語を話すユーザも狙っていることがうかがわれます。また、感染システムの情報をPOSTメソッドでC&Cサーバに送信します。
図7:「PyLocky」がC&C通信を行うコード
図8:「PyLocky」が暗号化を実行するコード
図9:さまざまな言語で書かれた「PyLocky」の身代金要求文書
■被害に遭わないためには
「PyLocky」のアンチ機械学習機能による検出回避技術と、一般的に管理者にのみ使用が限定されるWMIのような正規ツールの悪用は、さらに深い防御の重要性を実証しています。たとえば、機械学習機能は、新種や亜種、未知のマルウェアの脅威を検出する上で効果的なサイバーセキュリティツールですが、それだけでは万全の解決策とはいえません。今日の脅威においては、サイバー攻撃者の手口は高度化に加え、多様化、複雑化しているため、セキュリティへの多層的な防御アプローチが重要になります。
ベストプラクティスの適用
- 暗号化されてしまった場合でも復元できるよう、定期的にファイルをバックアップ
- 脆弱性対策として、システムを常に最新の状態にアップデート
- システムコンポーネントを安全に使用
- サイバーセキュリティに対する意識の向上
■トレンドマイクロの対策
クロスジェネレーションで進化を続ける「XGen™セキュリティ」は、AI 技術をはじめとする先進技術と実績の高いスレットインテリジェンスを融合した防御アプローチにより、データを保管するサーバ、データを交換するネットワーク、データを利用するユーザの各レイヤーで最適化されたセキュリティを提供します。Web/URLフィルタリング、挙動解析、カスタムサンドボックスのような機能を備えたクロスジェネレーション(XGen)セキュリティアプローチは、既知または未知/未公開の脆弱性を狙い、個人情報の窃取や暗号化、不正な仮想通貨発掘活動を行う脅威をブロックします。XGen は「Hybrid Cloud Security」、「User Protection」、そして「Network Defense」へのソリューションを提供するトレンドマイクロ製品に組み込まれています。
■侵入の痕跡(Indicator of Compromise, IoCs)
「RANSOM_PYLOCKY.A」として検出されたマルウェアのハッシュ値(SHA256):
•c9c91b11059bd9ac3a0ad169deb513cef38b3d07213a5f916c3698bb4f407ffa
•1569f6fd28c666241902a19b205ee8223d47cccdd08c92fc35e867c487ebc999
関連するハッシュ値 (SHA-256):
•e172e4fa621845080893d72ecd0735f9a425a0c7775c7bc95c094ddf73d1f844 (Facture_23100.31.07.2018.zip)
•2a244721ff221172edb788715d11008f0ab50ad946592f355ba16ce97a23e055 (Facture_23100.31.07.2018.exe)
•87aadc95a8c9740f14b401bd6d7cc5ce2e2b9beec750f32d1d9c858bc101dffa (facture_31254872_18.08.23_{numbers}.exe)
関連する不正URL:
•hxxps://centredentairenantes[.]fr (C&C サーバ)
•hxxps://panicpc[.]fr/client[.]php?fac=676171&u=0000EFC90103
•hxxps://savigneuxcom[.]securesitefr[.]com/client.php?fac=001838274191030
調査協力:Mary Yambao、Kerr Ang、Alvin Nieto
参考記事:
- 「A Closer Look at the Locky Poser, PyLocky Ransomware」
by Ian Kenefick (Threats Analyst)
翻訳: 益見 和宏(Core Technology Marketing, TrendLabs)