SlideShare a Scribd company logo
1 of 20
Download to read offline
ランサムウェアの解析と
その対策に関する研究
古門良介*,池上雅人† ,住田裕輔† ,岡庭素之† ,白石善明* ,森井昌克*
*神戸大学工学研究科所属
†キヤノンITソリューションズ株式会社ITプラットフォーム技術統括本部
サイバーセキュリティ技術開発本部サイバーセキュリティラボ
報告概要
目的
 ランサムウェア早期発見/早期復旧
 誤検知時もユーザビリティを妨げない
手法
 既存の検知手法に従来型の積極的・新たに消極的介入加えた
2つの閾値による可用性を考慮したシステムの提案
 初期の見逃しによるファイル喪失の緩和システムの提案
結果
 従来システムに比べてランサムウェアによる喪失ファイルを20%程
度減らした
 可用性・ユーザビリティを重視したランサムウェア検知・
復旧システムの提案
1
#SCIS2022
ランサムウェア
デバイス上のデータを暗号化,復号を条件に身代金を要求
感染後の復旧方法
 攻撃者に身代金を支払う
 メリット: すべてのランサムウェアが対応
 デメリット: 復旧の保証がない,攻撃者にモチベーションを与える
 セキュリティベンダ等が開発した復旧ツールを利用
 メリット: 身代金が必要ない
 デメリット: 対応するランサムウェアはごくわずか
2
#背景
ランサムウェアによる被害防ぐには,感染しないことが重要
→使いやすいランサムウェア検知・処理が重要
誤検知がユーザビリティを妨げる
誤検知のパターン:
 FN:ランサムウェアを検知できないケース
 FP: 正常プロセスをランサムウェアと検知するケース
FN:ユーザ「検知しなかったのにファイルが暗号化された」
FP: プロセス強制終了→ユーザ「急にソフトが落ちた」
3
#背景
ユーザビリティが低いとユーザはツールの利用を避ける
→ランサムウェアによる被害を防げない
目的
ユーザにとって実用的かつ
使いやすい検知・復旧ツールの提案
 未知検体への対応
 確度が低い時の強制的な介入(プロセスの終了)等を避ける
従来よりも喪失するファイル数の少ない検知手法の提案
 検知までのラグによるファイル喪失を減少させる
4
#目的
ランサムウェアの主な検知手法
悪性行動検知
 特徴
 予め定義した悪性行動パターンの基準でスコアリングをおこなう検知手法
 例
 シグネチャマッチ:
 静的なシグネチャを使う場合,未知検体に弱いが検知速度は早い
 振る舞い検知:
 動的な動作を特徴とするので,未知検体に強いが検出速度は遅い
異常行動検知(アノマリー型)
 特徴
 予め定義した正常行動と検体の行動との逸脱性をもとにする検知手法
 堅牢な正常行動を定義するのが困難で,誤検知が多くなりやすい
5
#先行手法
ランサムウェアの検知までの間に
暗号化が進行・ファイル喪失
6
#先行手法
時刻
初期化
ファイル
暗号化
暗号化開始
ファイル
暗号化
ファイル
暗号化
… 終了動作
活動開始 活動終了
検知手法がふるまい検知型の場合:
ランサムウェアの検知までの間に
暗号化が進行・ファイル喪失
検知手法がふるまい検知型の場合:
7
#先行手法
時刻
初期化
ファイル
暗号化
暗号化開始
ファイル
暗号化
ファイル
暗号化
… 終了動作
活動開始 活動終了
検知!
暗号化イベント等を特徴量にしているので、検知までに
ファイルが暗号化されてしまう
ファイルの読み書きを特徴量とした振る舞い検知型手法:
CryptoLock (and Drop It):
Stopping Ransomware Attacks on User Data
8
#先行手法
[1]N. Scaife, H. Carter, P. Traynor and K. R. B. Butler, 2016 IEEE 36th International Conference on Distributed
Computing Systems (ICDCS), 2016, pp. 303-312, doi: 10.1109/ICDCS.2016.46.
CryptoLock (and Drop It): Stopping Ransomware Attacks on User Data
縦軸はランサムウェアの検知率,横軸は検知され
るまでに暗号化されたファイルの数を示している.
CrptoDropシステム[1]は492検体において33個の
ファイル暗号化以下で検出をおこなった.
提案手法: 概要
ユーザに実用的かつ使いやすい検知・復旧ツールの提案
 ふるまい検知型先行研究ScaifeらのCryptLockの検知手法を拡張
 対象プロセスに強制的な介入を行わないことでFPも正常プロセスが
稼働し続けられるようにする手法の提案
従来よりも喪失するファイル数の少ない検知手法の提案
 検知までのラグによるファイル喪失を減少させる
9
#提案手法
既存の検知手法に対して,新たに目的を達成するために
拡張手法と復旧の既存手法を組み合わせたシステム提案
提案手法: 検知手法
ScaifeらのCryptLockの検知手法の閾値を拡張
従来:
 FP が最小限となる𝑇𝐵 一つのみ
 検知後の処理がプロセスの強制終了であり正常プロセスの使用を妨げない必要性
提案手法
 FNが最小限となる𝑇1
 プロセスの強制終了を行わず,プロセスによるファイル読み込みをバックアップ
 FPが最小限となる𝑇2
 プロセスの強制終了
10
#提案手法
閾値の関係: 𝑇1 < 𝑇2 = 𝑇𝐵
従来手法よりも,プロセスの介入のタイミングが早くなるため,
喪失ファイル数を減らすことが可能
プロセスによる
ファイル読み込みをバックアップ
プロセスはファイルを編集する際ファイルを読み込む
 例: ランサムウェアであればファイルを暗号化する際に読み込む
ファイル読み込みのWinAPI関数をフッキングして
読み込み時にバックアップ用にコピーを作成する
 ファイル読み込みWinAPI関数: OpenFile, CreateFile
 対象プロセスにDLL Injectionをおこない,フッキングをおこなう
11
#提案手法
ファイル喪失を減少・緩和手法
多くのランサムウェアはファイルの暗号化にAES等の
ブラックボックス方式の暗号化を用いる
 メモリ上に暗号鍵を平文でロードする暗号方式
暗号化プロセスのメモリダンプから鍵復旧
 暗号化の際にメモリ上に展開される鍵のパターンから暗号鍵の捜索
を行う手法を活用 (既存手法)
12
#提案手法
実装: システム概要
13
CryptoLock[1]から引用
Filter DriverでIOイベントを
取得・通知
ユーザランドでイベントの
スコアリング・検知・処理
 プロセスごとにスコアリングをお
こない,閾値を超えたプロセスに
処理をおこなう
#提案手法
実装: IOイベントスコアリング
IOイベント前後でファイルが暗号化されたか判定
(先行研究: CryptoDrop)
 ファジーハッシュ(ssdeep)によるファイル間の類似度スコア
 ファジーハッシュ: 同一ファイルでは近いハッシュ値が得られる
 ファイル拡張子とシグネチャの一致スコア
 ファイルシグネチャ: 一部のファイルでは固有のバイナリ列をもつ
 ファイル拡張子が示すファイルとファイルシグネチャが一致しない場合,
ファイルが暗号化された可能性がある
 シャノンエントロピーの増加スコア
 シャノンエントロピー: 対象の情報のユニーク性を表す指標
 一般的なファイルに比べ,暗号化されたファイルはバイト値は均一に分布するため
シャノンエントロピーの値は高くなる
14
#提案手法
実装: 検知・処理部分
15
• ファイル監視
• minispy を改良してI/OイベントをPID付きで取得
• ファイルが暗号化されたか判定(先行研究: CryptoDrop)
• ハッシュ値(pdeep)の類似度スコア
• ファイル拡張とシグネチャの一致スコア
• 情報エントロピーの増加スコア
• ランサムウェアと一般ソフトウェアの判定用しきい値設定
• ランサムウェア処理 (Strong possibility) (先行研究)
• メモリダンプ
• メモリダンプから暗号鍵捜索(AES)
• 暗号鍵検証
(限定的実装: AES IV: ALL0, CBC modeでエントロピーの
増減で判断)
• ランサムウェア処理 (Weak Possibility)
• DLL Injection,WINAPIフッキング
#提案手法
評価実験:手法
対象検体: 4種のランサムウェアファミリ
実験環境:
 右の表に示すVM環境
 1000個のファイル[2]を配置
実験対象:
 提案システム
 CryptoDropシステム
 実装言語による処理速度差を考慮して
Python3で再実装したCryptoDropシステム
実験手法:
 実験環境で検体を実行し,10分後に暗号化された
ファイルの総数を確認した
16
#評価
VMソフト VirtualBox 6.1.30
ゲストOS Windows10x86
RAM 2GB
その他 UAC・アンチウイルス無効化
[2]オフィスワークで使用されるofficeファイルや動画・音楽ファイルを含んだ
digitalcorpora.orgのコーパスファイル
評価結果
17
#評価
ランサムウェア名
CryptoLock
ファイル暗号化数
提案手法
ファイル暗号化数
提案手法
バックアップ数
提案システム
暗号鍵取得
Medusa Locker 75 76 19 〇
Jaff Locker 84 85 18 ×
Hackbit 65 67 6 ×
Teslacrypt 112 112 21 ×
表: 各システムのランサムウェアに対する評価
介入のタイミングが早くなったため,
従来より20%程度喪失ファイル数を減らすことができた.
暗号鍵取得できた場合より多くのファイル復旧が可能な場合もある.
CryptoLockシステムと
提案システムの比較
ファイル暗号化数がおよそ同値について
 介入閾値: 𝑇1 < 𝑇2 = 𝑇𝐵 であるからプロセスの強制終了のタイミング
がおよそ同じになるため
パフォーマンスへの影響
 提案システムのほうがシステムへの介入箇所が多いため,
CryptoLockシステムのほうが低い
 システムへの介入箇所: Filter Driver, プロセスの強制終了, DLL Injection, API hook
観点
 CryptoLockシステムではランサムウェアの検知と停止
 提案システムではランサムウェアの検知と緩和・停止と復旧
18
#評価
まとめ
目的
 ランサムウェア早期発見/早期復旧
 誤検知時もユーザビリティを妨げない
手法
 既存の検知手法に従来型の積極的・新たに消極的介入加えた
2つの閾値による可用性を考慮したシステムの提案
 初期の見逃しによるファイル喪失の緩和システムの提案
19
提案システムによりで以下を実現
- ランサムウェアによる喪失ファイル数の約20%の削減
- 低い確度時にプロセスを止めないファイル暗号化緩和手法
- 可用性・ユーザビリティを重視したランサムウェア検知・復旧システム

More Related Content

More from 神戸大学

情報セキュリティワークショップin越後湯沢(森井昌克@神戸大)
情報セキュリティワークショップin越後湯沢(森井昌克@神戸大)情報セキュリティワークショップin越後湯沢(森井昌克@神戸大)
情報セキュリティワークショップin越後湯沢(森井昌克@神戸大)神戸大学
 
これは楽しい数学マジック(その3)
これは楽しい数学マジック(その3)これは楽しい数学マジック(その3)
これは楽しい数学マジック(その3)神戸大学
 
これは楽しい数学マジック(その2)
これは楽しい数学マジック(その2)これは楽しい数学マジック(その2)
これは楽しい数学マジック(その2)神戸大学
 
これは楽しい数学マジック(その1)
これは楽しい数学マジック(その1)これは楽しい数学マジック(その1)
これは楽しい数学マジック(その1)神戸大学
 
Malware Visualization
Malware VisualizationMalware Visualization
Malware Visualization神戸大学
 

More from 神戸大学 (6)

情報セキュリティワークショップin越後湯沢(森井昌克@神戸大)
情報セキュリティワークショップin越後湯沢(森井昌克@神戸大)情報セキュリティワークショップin越後湯沢(森井昌克@神戸大)
情報セキュリティワークショップin越後湯沢(森井昌克@神戸大)
 
これは楽しい数学マジック(その3)
これは楽しい数学マジック(その3)これは楽しい数学マジック(その3)
これは楽しい数学マジック(その3)
 
これは楽しい数学マジック(その2)
これは楽しい数学マジック(その2)これは楽しい数学マジック(その2)
これは楽しい数学マジック(その2)
 
これは楽しい数学マジック(その1)
これは楽しい数学マジック(その1)これは楽しい数学マジック(その1)
これは楽しい数学マジック(その1)
 
Panel 20130301pub
Panel 20130301pubPanel 20130301pub
Panel 20130301pub
 
Malware Visualization
Malware VisualizationMalware Visualization
Malware Visualization
 

ransomeware_SCIS2022_Kobe-U