ランサムウェアとは勝手にファイルを暗号化して身代金を要求するマルウェアの一種です。最近、Lockyと呼ばれるランサムウェアの被害を目にする機会がありました。破壊されたファイルの復旧を試みましたが、前身と思われるVVVランサムウェア(トレンドマイクロ社による情報)で通じた復旧手法がことごとく対策されていました。
被害を最小限に食い止める対策を検討するため、プログラミング的な観点から考察を試みます。
注意事項
- 筆者はセキュリティの専門家ではありません。回答できるだけの知見もなく、ご相談には応じかねます。
- Lockyの検体をリバースエンジニアリングしたわけではありません。素人が下手に手を出すと感染の拡大を招く危険があるためです。
- 感染したのは筆者ではありません。ファイルの復旧を試みただけです。
- ファイルの復旧には失敗しました。この記事に復旧方法はありません。
感染経路
トレンドマイクロ社による情報にも記載されている、Document2というスパムメールの添付ファイルから感染しました。
このメールは差出人が自分自身となっており、家と会社間で自分にメールを送る習慣のある人を油断させる狙いがあるようです。(そもそもそれ自体が情報漏洩につながる問題行為ですが、ここでは立ち入りません)
ウィルス対策ソフトは入れていましたが、パターンファイルが対応していないらしく検出されませんでした。ベンダーに連絡して、指示に従い検体を提出しました。
原因となった添付ファイルはただのブートストラップで、本体はダウンロードするようなので、いたちごっこが激しいようです。
VVVとの比較
前身と思われるVVVランサムウェアはTwitterでも大きく話題になりました。
このケースではShadowExplorerというソフトで復旧できたようです。
LockyではShadowExplorerは通用しませんでした。すべてのシャドウコピーは削除され、わざわざ破壊後にシャドウコピーが取られていました。
また、VVVではシャドウコピーの他、削除ファイル復元ツールでもサルベージできたらしいです。これもLockyでは通用しませんでした。
VVVの抜け道が知れ渡ったことに対して、ランサムウェアの作者が対策を打って来たことが読み取れます。背筋が凍ります。
悪質化した点として、VVVでは拡張子を変えるだけでファイル名が残るため何のファイルだったかは分かりますが、Lockyではファイル名もランダム化されるため元が何だか分からなくなります。
今の所、Lockyは破壊活動に専念するだけで、他のPCに感染することはないようです。しかしローカルネットワークの共有フォルダを探し出す機能があり、被害はネットワークに広がります。感染が広がったわけではないため、感染したPCを隔離すれば活動は封じ込められます。
ある程度破壊が進行してから、デスクトップを書き替えて脅迫文を表示します。この時点では既に手遅れです。
ファイルの破壊手順
プログラミング的な考察です。
VVVでは復元ポイントが消されているのにシャドウコピーが残っていたことから、System Volume Informationフォルダは削除されなかったと思われます。Lockyでは削除されるようになったようです。
VVVで削除ファイル復元ツールが使えたことから、以下の手順で破壊活動を行ったと推測されます。
- 別ファイルに暗号化
- 元ファイルを削除
Lockyではファイルが削除された形跡がないことから、手順が変わったと思われます。
- 元ファイルをランダムアクセスで開く
- ファイル自身を暗号化データで上書き
- ファイル名をランダムな16進数に変更(ユーザー識別IDをプレフィックスに含む)
このようなやり方をされると、復旧は事実上困難です。
逆に言えば、マルウェアではないまともなツールは復旧しやすく作るべきです。保存の際に別ファイルに書き出して完了後に置き替えるようにしないと、上書き保存中にバグで落ちれば旧ファイルを巻き添えにして消えてしまいます。実際にそういう挙動を示すソフトを見掛けることがあります。
並列実行
破壊されたファイルを時系列に並べると、複数のフォルダで並行して破壊活動が進行していたことが読み取れました。マルチスレッドで動いているのでしょうか?
1つの箇所に深く侵入するより、横に広がる戦略だと思われます。
処理速度はかなり高速で、2時間で4万ファイル(4GB)ほども処理されてしまいました。
RAIDとバックアップ
RAIDはバックアップではないとはよく言われます。そのことを痛感しました。
今ほどマルウェアの脅威がなかった時代でも、ハードディスクはよく壊れました。それにはRAIDで対応できるため、それで十分だと判断したまま今に至っていました。
RAIDでは人為的なミス(削除・上書き)にも無力ですが、最近の低価格NASにはゴミ箱機能が実装されており、その程度のミスなら対応できていました。これもまたバックアップの必要性を感じなかった理由です。
バックアップがなければ悪意を持った攻撃には無力だという視点が欠けていました。
注意点として、バックアップは共有から外しておく必要があります。もしバックアップが簡単に使えるようにと読み書きで共有していれば、マルウェアの餌食になりバックアップの役目を果たせません。
シャドウコピー
シャドウコピーが何の意味もないというわけではありません。
感染PCのシャドウコピーは削除されますが、NASに感染するわけではないため、NAS側にシャドウコピーがあれば復元は可能です。
おわりに
とりとめもない内容になりましたが、実際にランサムウェアの被害に会った衝撃は大きく、記録として残しました。