© SIOS Technology, Inc. All rights Reserved.
ランサムウェアをサーバー側から対策する
1
2016/06/15
OSS/Security Evangelist
面 和毅
© SIOS Technology, Inc. All rights Reserved.
Agenda
2
1. ランサムウェアのおさらい
2. ランサムウェアへの対策
1. やられないようにする
2. やられても良いようにする
3. まとめ
© SIOS Technology, Inc. All rights Reserved.
自己紹介
3
 Linux/OSS歴18年
 OSSのセキュリティにフォーカス
 アクセス制御(SELinux, LIDS)
 AntiVirus
 SIEM
 SIer, ベンダ, 顧客(管理者)の立場を経験
© SIOS Technology, Inc. All rights Reserved.
1.ランサムウェアのおさらい
4
© SIOS Technology, Inc. All rights Reserved.
ランサムウェアとは
5
ランサムウェア
別名:身代金ウィルス,身代金ウイルス,身代金型ウィルス,身代金要求ウイルス
【英】ransomware ランサムウェアとは、マルウェア(悪意のあるソフトウェ
ア)の一種で、ユーザーのデータを「人質」にとり、データの回復のために「身
代金」(ransom)を要求するソフトウェアのことである。
© SIOS Technology, Inc. All rights Reserved.
結局ランサムウェアって何をやるの?
ローカルHDDを
暗号化orファイル消去
繋がったUSBメモリを
暗号化orファイル消去
ネットワークマウントしている
フォルダの暗号化orファイル消去
繋がっているありとあらゆるデバイス内のファイルを
・暗号化 -> 複合化でお金を取る
・ランダムに消していく -> 「今すぐお金を振り込みなさい!!」
© SIOS Technology, Inc. All rights Reserved.
じゃあ、対処方法は??
まずは対処方法を整理してみましょう
動きだけ見ていると、やはり「ウィルス感染」->「暗号化」に置き換えた
だけで、今までのウィルス感染対策と基本姿勢は同じ。
ランサムウェアに
• やられないようにする
• やられても良いようにする
で考えてみましょう
© SIOS Technology, Inc. All rights Reserved.
2. ランサムウェアの対策
2-1. やられないようにする
8
© SIOS Technology, Inc. All rights Reserved.
まずはやられないようにする
1. AntiVirusソフトウェアを各端末にインストール
• 既存のランサムウェアは各社のAntiVirusソフトで検知可能
• 「AntiVirusじゃ防げない!」というショッキングなトークに
騙されない
2. USBなど外部デバイスの禁止。少なくとも常時挿しておかない
3. 外部アクセスのWebブラウザもプラグインは最小にする
4. メーラーも設定を確認して、添付ファイルを開くときに気を付ける
© SIOS Technology, Inc. All rights Reserved.
何か参考になるものは?
結局、標的型攻撃の対策と同じ
年金機構の再発防止策(一部)が参考になる
「プラグイン」などの
拡張機能の使用の制限
メールの
添付ファイル扱い
埋め込みコンテンツの
取り込み設定制限
年金機構事件の問題への対応
© SIOS Technology, Inc. All rights Reserved.
サーバ側で対策出来る?
• AntiVirusを統合して、防御に漏れがないようにする
• AntiVirus製品はヘテロな環境を(意図的に)作る
TrendMicro製品
Sophos製品
製品を選ぶときは対応OSで選びましょう
最近はどのAntiVirusも同じようなものです
© SIOS Technology, Inc. All rights Reserved.
2016年4月時点での各社の検知率
12
© SIOS Technology, Inc. All rights Reserved.
的確なスキャン設計・設定
13
スキャン対象・対象外を明確にする
• DBファイルとかISOファイルとかスキャン
してませんか?
• 圧縮ファイルのスキャンは注意が必要
• アーカイブファイルのスキャンは必要か?
© SIOS Technology, Inc. All rights Reserved.
とは言っても
• 結局、人間がやることには漏れはあり得る
• 最新のランサムウェアだとAntiVirus対応に時間がかかる
• 新しい攻撃方法が出てくるかもしれない
「やられても良いようにする」対策を考えておきましょう
© SIOS Technology, Inc. All rights Reserved.
2. ランサムウェアの対策
2-2. やられても良いようにする
15
© SIOS Technology, Inc. All rights Reserved.
サーバ側で考えること
「やられても良いようにする」とは(以下、サーバ側視点)
ファイルサーバ側
• ランサムウェアが変な行動を出来ないようにする
• ファイルを改変(暗号化)されても元に戻せるようにする
バックアップサーバ側
• 最悪の場合、バックアップから戻せるようにする
© SIOS Technology, Inc. All rights Reserved.
2. ランサムウェアの対策
2-2. やられても良いようにする
17
ファイルサーバ編
© SIOS Technology, Inc. All rights Reserved.
ファイルサーバ側で考えること
「やられても良いようにする」ためには。。。。
まず、ランサムウェアがどう動くかを詳しく考察しよう!
ただし、「サーバ側で対応する」のが大前提。
© SIOS Technology, Inc. All rights Reserved.
ファイルサーバ側
ランサムウェアとファイルサーバの動き
ファイルの
暗号化
暗号化ファイル
書き込み
元ファイルの
削除
端末
ファイル
サーバ
• 対象ファイルの
選択
• ファイルの
暗号化
• 暗号化ファイルの
書き込み
• smbdなどから
共有ボリュームへの
何らかのファイルの
書き込み(位置は
どこでも良い)
• smbdなどから
対象ファイルへの
sys_open/sys_read
• 対象ファイルへの
sys_close (律儀なら)
• 対象ファイルの
削除要求
• smbdなどからの要求
により共有ボリュームの
何らかのファイルの削除
ファイルサーバとしては当たり前の動作
© SIOS Technology, Inc. All rights Reserved.
ファイルサーバ側
じゃあどうするか?
ファイルの
暗号化
暗号化ファイル
書き込み
元ファイルの
削除
端末
ファイル
サーバ
• 対象ファイルの
選択
• ファイルの
暗号化
• 暗号化ファイルの
書き込み
• smbdなどから
共有ボリュームへの
何らかのファイルの
書き込み(位置は
どこでも良い)
• smbdなどから
対象ファイルへの
sys_open/sys_read
• 対象ファイルへの
sys_close (律儀なら)
• 対象ファイルの
削除要求
• smbdなどからの要求
により共有ボリュームの
何らかのファイルの削除
ここを何とかしてみよう
© SIOS Technology, Inc. All rights Reserved.
ファイルサーバ側
ファイルが消されても良いようにするには?
復活させる方法があればいい
ファイルサーバ側でゴミ箱(Recycle bin)を使う!!
© SIOS Technology, Inc. All rights Reserved.
Linux+Sambaの場合
Samba3/4ならRecycle binの設定ができる
ファイ共有セクションで「vfs objects = recycle」を
指定することで、ごみ箱機能を有効に。
[Share]
comment = Public Stuff
path = /Share/
browseable = yes
writable = yes
printable = no
vfs objects = recycle
guest ok = yes
read only = no
recycle:repository = .recycle
recycle:keeptree = yes
実際の動きはデモで!!
© SIOS Technology, Inc. All rights Reserved.
Windows Serverの場合
Windowsだと商用で「Undelete」がある
© SIOS Technology, Inc. All rights Reserved.
Windows Serverの場合
その他、VSS(Volume Shadow-copy Service)
を有効にしておくのがおすすめ
定期的なスナップショット
- パフォーマンス劣化は小さい
- ランサムウェアにやられても、
「直前にスナップショット取ってた
時点のファイル」に戻せる
© SIOS Technology, Inc. All rights Reserved.
ゴミ箱のメリット・デメリット
メリット
• 暗号化ランサムウェアだけでなくファイル削除型にも効く
• オペミスで削除したファイルでも復活できる
• 直前の状態が入っているので、そこから復活すれば感染直前の
状態に復活できる
• ゴミ箱もバックアップ対象にすれば直近まで戻せる
デメリット
• 容量が増える
-> ストレージのコストとリスクの兼ね合い
-> メンテナンスが必要になる(定期的にパージ)
• 戻すときにサーバ側で対応が必要
-> ランサムウェア感染とか、どっちみち管理者に報告でしょ?
一昔前のNetWareの時は。。。。
© SIOS Technology, Inc. All rights Reserved.
でもちょっと待った
削除じゃなくて「改変」されるとどうなる?
ファイルの
暗号化
暗号化ファイル
書き込み
元ファイルの
削除 改変
端末
ファイル
サーバ
• 対象ファイルの
選択
• ファイルの
暗号化
• 暗号化ファイルの
書き込み
• smbdなどから
共有ボリュームへの
何らかのファイルの
書き込み(位置は
どこでも良い)
• smbdなどから
対象ファイルへの
sys_open/sys_read
• 対象ファイルへの
sys_close (律儀なら)
• 対象ファイルの
削除 改変要求
• smbdなどからの要求
により共有ボリュームの
何らかのファイルの削除
改変(write)
こうなってくるとどうする?
© SIOS Technology, Inc. All rights Reserved.
サーバOS側から見ると
27
Kernel
PC/User
システムコール
fopen()
sys_open()
fread()
fwrite()
sys_read()
sys_write()
サーバ側から見ると全く区別がつかない
© SIOS Technology, Inc. All rights Reserved.
サーバOS側から見ると
28
Kernel
PC/User
システムコール
fopen()
sys_open()
fread()
fwrite()
sys_read()
sys_write()
Fanotify/inotifyを使って書き込み前に
バックアップを作成
FAN_MODIFY
FAN_CLOSE_WRITE
FAN_CLOSE_NOWRITE
書き込み完了時でしか
フック出来ない
->書き込み前のバックアップが
取れない
© SIOS Technology, Inc. All rights Reserved.
サーバOS側から見ると
29
Kernel
PC/User
システムコール
fopen()
sys_open()
fread()
fwrite()
sys_read()
sys_write()
Fanotify/inotifyを使って書き込み前に
バックアップを作成
FAN_OPEN
原理的に可能 枯れていない
やはり「こまめにバックアップ」併用が今は確実
© SIOS Technology, Inc. All rights Reserved.
2. ランサムウェアの対策
2-2. やられても良いようにする
30
バックアップサーバ編
© SIOS Technology, Inc. All rights Reserved.
バックアップサーバ側で考えること
バックアップ側で対応するには
1. 複数のバックアップ
2. 日時ごとのバックアップの保管
3. バックアップ時以外は切り離す
© SIOS Technology, Inc. All rights Reserved.
バックアップサーバ側で考えること
例えば商用のストレージ(EMCなど)だと
ストレージ
Shadow
ボリューム
Mirroring
backup
Monday
backup
Tuesday
backup
Wednesday
D2D
D2D
D2D
普段はRead-Only
© SIOS Technology, Inc. All rights Reserved.
一般的な環境なら
ストレージ
Backup 1
Backup 2
Backup 3
D2D
D2D
D2D
時間が許容範囲ならバックアップを3回走らせる
© SIOS Technology, Inc. All rights Reserved.
取得時間が手短
ストレージ
Backup 1
Backup 2
Backup 3
D2D
D2D
取得したバックアップを他のボリュームにコピー
D2D
© SIOS Technology, Inc. All rights Reserved.
容量は少なく限定的だが
ストレージ
Backup 1
Backup 2
D2D
D2D
ISOファイル作って焼いてしまう
D2D
容量が限られるので
重要ファイルだけDVD
© SIOS Technology, Inc. All rights Reserved.
RISK
ストレージ
Backup 1
Backup 2
Backup 3
D2D
D2D
バックアップの一つにMalwareが混入すると
D2D
バックアップのコピーで
拡散してしまう
© SIOS Technology, Inc. All rights Reserved.
バックアップ時以外は切り離す
37
意外と忘れがち
通常は(サーバからは)マウント対象から外す
マウントしなくてもバックアップ取れる方法を
1. rsync + ssh (お手軽+定番)
2. Bacula(製品版)、NetBackupなどの商用
© SIOS Technology, Inc. All rights Reserved.
3. まとめ
38
© SIOS Technology, Inc. All rights Reserved.
3. まとめ
ランサムウェアをサーバ側で対策するには
1. 各端末は統合管理環境でAntiVirusソフトを運用
2. サーバはネットワークごみ箱などを使用
3. 3つ以上の物理的にわかれたメディアでバックアップ
4. 必要な時以外はバックアップは接続しない
が基本!!
40

ランサムウェアをサーバー側から対策する

  • 1.
    © SIOS Technology,Inc. All rights Reserved. ランサムウェアをサーバー側から対策する 1 2016/06/15 OSS/Security Evangelist 面 和毅
  • 2.
    © SIOS Technology,Inc. All rights Reserved. Agenda 2 1. ランサムウェアのおさらい 2. ランサムウェアへの対策 1. やられないようにする 2. やられても良いようにする 3. まとめ
  • 3.
    © SIOS Technology,Inc. All rights Reserved. 自己紹介 3  Linux/OSS歴18年  OSSのセキュリティにフォーカス  アクセス制御(SELinux, LIDS)  AntiVirus  SIEM  SIer, ベンダ, 顧客(管理者)の立場を経験
  • 4.
    © SIOS Technology,Inc. All rights Reserved. 1.ランサムウェアのおさらい 4
  • 5.
    © SIOS Technology,Inc. All rights Reserved. ランサムウェアとは 5 ランサムウェア 別名:身代金ウィルス,身代金ウイルス,身代金型ウィルス,身代金要求ウイルス 【英】ransomware ランサムウェアとは、マルウェア(悪意のあるソフトウェ ア)の一種で、ユーザーのデータを「人質」にとり、データの回復のために「身 代金」(ransom)を要求するソフトウェアのことである。
  • 6.
    © SIOS Technology,Inc. All rights Reserved. 結局ランサムウェアって何をやるの? ローカルHDDを 暗号化orファイル消去 繋がったUSBメモリを 暗号化orファイル消去 ネットワークマウントしている フォルダの暗号化orファイル消去 繋がっているありとあらゆるデバイス内のファイルを ・暗号化 -> 複合化でお金を取る ・ランダムに消していく -> 「今すぐお金を振り込みなさい!!」
  • 7.
    © SIOS Technology,Inc. All rights Reserved. じゃあ、対処方法は?? まずは対処方法を整理してみましょう 動きだけ見ていると、やはり「ウィルス感染」->「暗号化」に置き換えた だけで、今までのウィルス感染対策と基本姿勢は同じ。 ランサムウェアに • やられないようにする • やられても良いようにする で考えてみましょう
  • 8.
    © SIOS Technology,Inc. All rights Reserved. 2. ランサムウェアの対策 2-1. やられないようにする 8
  • 9.
    © SIOS Technology,Inc. All rights Reserved. まずはやられないようにする 1. AntiVirusソフトウェアを各端末にインストール • 既存のランサムウェアは各社のAntiVirusソフトで検知可能 • 「AntiVirusじゃ防げない!」というショッキングなトークに 騙されない 2. USBなど外部デバイスの禁止。少なくとも常時挿しておかない 3. 外部アクセスのWebブラウザもプラグインは最小にする 4. メーラーも設定を確認して、添付ファイルを開くときに気を付ける
  • 10.
    © SIOS Technology,Inc. All rights Reserved. 何か参考になるものは? 結局、標的型攻撃の対策と同じ 年金機構の再発防止策(一部)が参考になる 「プラグイン」などの 拡張機能の使用の制限 メールの 添付ファイル扱い 埋め込みコンテンツの 取り込み設定制限 年金機構事件の問題への対応
  • 11.
    © SIOS Technology,Inc. All rights Reserved. サーバ側で対策出来る? • AntiVirusを統合して、防御に漏れがないようにする • AntiVirus製品はヘテロな環境を(意図的に)作る TrendMicro製品 Sophos製品 製品を選ぶときは対応OSで選びましょう 最近はどのAntiVirusも同じようなものです
  • 12.
    © SIOS Technology,Inc. All rights Reserved. 2016年4月時点での各社の検知率 12
  • 13.
    © SIOS Technology,Inc. All rights Reserved. 的確なスキャン設計・設定 13 スキャン対象・対象外を明確にする • DBファイルとかISOファイルとかスキャン してませんか? • 圧縮ファイルのスキャンは注意が必要 • アーカイブファイルのスキャンは必要か?
  • 14.
    © SIOS Technology,Inc. All rights Reserved. とは言っても • 結局、人間がやることには漏れはあり得る • 最新のランサムウェアだとAntiVirus対応に時間がかかる • 新しい攻撃方法が出てくるかもしれない 「やられても良いようにする」対策を考えておきましょう
  • 15.
    © SIOS Technology,Inc. All rights Reserved. 2. ランサムウェアの対策 2-2. やられても良いようにする 15
  • 16.
    © SIOS Technology,Inc. All rights Reserved. サーバ側で考えること 「やられても良いようにする」とは(以下、サーバ側視点) ファイルサーバ側 • ランサムウェアが変な行動を出来ないようにする • ファイルを改変(暗号化)されても元に戻せるようにする バックアップサーバ側 • 最悪の場合、バックアップから戻せるようにする
  • 17.
    © SIOS Technology,Inc. All rights Reserved. 2. ランサムウェアの対策 2-2. やられても良いようにする 17 ファイルサーバ編
  • 18.
    © SIOS Technology,Inc. All rights Reserved. ファイルサーバ側で考えること 「やられても良いようにする」ためには。。。。 まず、ランサムウェアがどう動くかを詳しく考察しよう! ただし、「サーバ側で対応する」のが大前提。
  • 19.
    © SIOS Technology,Inc. All rights Reserved. ファイルサーバ側 ランサムウェアとファイルサーバの動き ファイルの 暗号化 暗号化ファイル 書き込み 元ファイルの 削除 端末 ファイル サーバ • 対象ファイルの 選択 • ファイルの 暗号化 • 暗号化ファイルの 書き込み • smbdなどから 共有ボリュームへの 何らかのファイルの 書き込み(位置は どこでも良い) • smbdなどから 対象ファイルへの sys_open/sys_read • 対象ファイルへの sys_close (律儀なら) • 対象ファイルの 削除要求 • smbdなどからの要求 により共有ボリュームの 何らかのファイルの削除 ファイルサーバとしては当たり前の動作
  • 20.
    © SIOS Technology,Inc. All rights Reserved. ファイルサーバ側 じゃあどうするか? ファイルの 暗号化 暗号化ファイル 書き込み 元ファイルの 削除 端末 ファイル サーバ • 対象ファイルの 選択 • ファイルの 暗号化 • 暗号化ファイルの 書き込み • smbdなどから 共有ボリュームへの 何らかのファイルの 書き込み(位置は どこでも良い) • smbdなどから 対象ファイルへの sys_open/sys_read • 対象ファイルへの sys_close (律儀なら) • 対象ファイルの 削除要求 • smbdなどからの要求 により共有ボリュームの 何らかのファイルの削除 ここを何とかしてみよう
  • 21.
    © SIOS Technology,Inc. All rights Reserved. ファイルサーバ側 ファイルが消されても良いようにするには? 復活させる方法があればいい ファイルサーバ側でゴミ箱(Recycle bin)を使う!!
  • 22.
    © SIOS Technology,Inc. All rights Reserved. Linux+Sambaの場合 Samba3/4ならRecycle binの設定ができる ファイ共有セクションで「vfs objects = recycle」を 指定することで、ごみ箱機能を有効に。 [Share] comment = Public Stuff path = /Share/ browseable = yes writable = yes printable = no vfs objects = recycle guest ok = yes read only = no recycle:repository = .recycle recycle:keeptree = yes 実際の動きはデモで!!
  • 23.
    © SIOS Technology,Inc. All rights Reserved. Windows Serverの場合 Windowsだと商用で「Undelete」がある
  • 24.
    © SIOS Technology,Inc. All rights Reserved. Windows Serverの場合 その他、VSS(Volume Shadow-copy Service) を有効にしておくのがおすすめ 定期的なスナップショット - パフォーマンス劣化は小さい - ランサムウェアにやられても、 「直前にスナップショット取ってた 時点のファイル」に戻せる
  • 25.
    © SIOS Technology,Inc. All rights Reserved. ゴミ箱のメリット・デメリット メリット • 暗号化ランサムウェアだけでなくファイル削除型にも効く • オペミスで削除したファイルでも復活できる • 直前の状態が入っているので、そこから復活すれば感染直前の 状態に復活できる • ゴミ箱もバックアップ対象にすれば直近まで戻せる デメリット • 容量が増える -> ストレージのコストとリスクの兼ね合い -> メンテナンスが必要になる(定期的にパージ) • 戻すときにサーバ側で対応が必要 -> ランサムウェア感染とか、どっちみち管理者に報告でしょ? 一昔前のNetWareの時は。。。。
  • 26.
    © SIOS Technology,Inc. All rights Reserved. でもちょっと待った 削除じゃなくて「改変」されるとどうなる? ファイルの 暗号化 暗号化ファイル 書き込み 元ファイルの 削除 改変 端末 ファイル サーバ • 対象ファイルの 選択 • ファイルの 暗号化 • 暗号化ファイルの 書き込み • smbdなどから 共有ボリュームへの 何らかのファイルの 書き込み(位置は どこでも良い) • smbdなどから 対象ファイルへの sys_open/sys_read • 対象ファイルへの sys_close (律儀なら) • 対象ファイルの 削除 改変要求 • smbdなどからの要求 により共有ボリュームの 何らかのファイルの削除 改変(write) こうなってくるとどうする?
  • 27.
    © SIOS Technology,Inc. All rights Reserved. サーバOS側から見ると 27 Kernel PC/User システムコール fopen() sys_open() fread() fwrite() sys_read() sys_write() サーバ側から見ると全く区別がつかない
  • 28.
    © SIOS Technology,Inc. All rights Reserved. サーバOS側から見ると 28 Kernel PC/User システムコール fopen() sys_open() fread() fwrite() sys_read() sys_write() Fanotify/inotifyを使って書き込み前に バックアップを作成 FAN_MODIFY FAN_CLOSE_WRITE FAN_CLOSE_NOWRITE 書き込み完了時でしか フック出来ない ->書き込み前のバックアップが 取れない
  • 29.
    © SIOS Technology,Inc. All rights Reserved. サーバOS側から見ると 29 Kernel PC/User システムコール fopen() sys_open() fread() fwrite() sys_read() sys_write() Fanotify/inotifyを使って書き込み前に バックアップを作成 FAN_OPEN 原理的に可能 枯れていない やはり「こまめにバックアップ」併用が今は確実
  • 30.
    © SIOS Technology,Inc. All rights Reserved. 2. ランサムウェアの対策 2-2. やられても良いようにする 30 バックアップサーバ編
  • 31.
    © SIOS Technology,Inc. All rights Reserved. バックアップサーバ側で考えること バックアップ側で対応するには 1. 複数のバックアップ 2. 日時ごとのバックアップの保管 3. バックアップ時以外は切り離す
  • 32.
    © SIOS Technology,Inc. All rights Reserved. バックアップサーバ側で考えること 例えば商用のストレージ(EMCなど)だと ストレージ Shadow ボリューム Mirroring backup Monday backup Tuesday backup Wednesday D2D D2D D2D 普段はRead-Only
  • 33.
    © SIOS Technology,Inc. All rights Reserved. 一般的な環境なら ストレージ Backup 1 Backup 2 Backup 3 D2D D2D D2D 時間が許容範囲ならバックアップを3回走らせる
  • 34.
    © SIOS Technology,Inc. All rights Reserved. 取得時間が手短 ストレージ Backup 1 Backup 2 Backup 3 D2D D2D 取得したバックアップを他のボリュームにコピー D2D
  • 35.
    © SIOS Technology,Inc. All rights Reserved. 容量は少なく限定的だが ストレージ Backup 1 Backup 2 D2D D2D ISOファイル作って焼いてしまう D2D 容量が限られるので 重要ファイルだけDVD
  • 36.
    © SIOS Technology,Inc. All rights Reserved. RISK ストレージ Backup 1 Backup 2 Backup 3 D2D D2D バックアップの一つにMalwareが混入すると D2D バックアップのコピーで 拡散してしまう
  • 37.
    © SIOS Technology,Inc. All rights Reserved. バックアップ時以外は切り離す 37 意外と忘れがち 通常は(サーバからは)マウント対象から外す マウントしなくてもバックアップ取れる方法を 1. rsync + ssh (お手軽+定番) 2. Bacula(製品版)、NetBackupなどの商用
  • 38.
    © SIOS Technology,Inc. All rights Reserved. 3. まとめ 38
  • 39.
    © SIOS Technology,Inc. All rights Reserved. 3. まとめ ランサムウェアをサーバ側で対策するには 1. 各端末は統合管理環境でAntiVirusソフトを運用 2. サーバはネットワークごみ箱などを使用 3. 3つ以上の物理的にわかれたメディアでバックアップ 4. 必要な時以外はバックアップは接続しない が基本!!
  • 40.