Top Banner
35

[SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

Jan 21, 2018

Download

Technology

de:code 2017
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例
Page 2: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

@JSECTEAM

https://www.facebook.com/JSECTEAM

https://blogs.technet.microsoft.com/jpsecurity/

https://blogs.technet.microsoft.com/YurikaSensei/

https://news.mynavi.jp/itsearch/article/security/1948

https://news.mynavi.jp/itsearch/article/security/1396

2

Page 3: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

3

Page 4: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

ウイルス対策

セキュリティ機能

緩和策

4

更新プログラム

検出システム

Page 5: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例
Page 6: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

6

侵入完了

マルウェア対策

起動完了

目的達成

セキュリティ機能

更新プログラム

境界領域防御

メ|ルフィルタ

サイトフィルタリング

デ|タ暗号化

インタ|ネットゾ|ン警告

Page 7: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

現実

7

侵入完了

マルウェア対策

起動完了

目的達成

セキュリティ機能

更新プログラム

境界領域防御

メ|ルフィルタ

サイトフィルタリング

デ|タ暗号化

インタ|ネットゾ|ン警告

Page 8: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

デ|タ消去

仮想化分離

ふるまい分析

自動遮断

脅威自動分析

整合性チェック

監視

発症と活動を抑える

8

侵入完了

マルウェア対策

起動完了

目的達成

セキュリティ機能

更新プログラム

境界領域防御

メ|ルフィルタ

サイトフィルタリング

デ|タ暗号化

緩和策

インタ|ネットゾ|ン警告

Page 9: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

9

SmartScreen

ユーザーアカウント制御 Bitlocker/Bitlocker to Go

AppLocker

Windows Firewall

ファイル暗号化

インターネットセキュリティ設定

VPN・DirectAccess

Windows Security Essentials

Page 10: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

10

デバイスガード

SmartScreen

Windows Defender Antimalware

Windows Defender Advanced Threat Protection

Credential Guard

悪用コード実行緩和策

UEFI Secure Boot

ユーザーアカウント制御

Virtualized Based Security

Microsoft Passport

リモートワイプ

Bitlocker/Bitlocker to Go

AppLocker

Windows Firewall

ファイル暗号化

Windows Defender クラウド保護

インターネットセキュリティ設定

VPN・DirectAccess

Page 11: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

11

74

88

65

70

75

80

85

90

Windows 10 Windows 8.1

Page 12: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

12

2016 年 11 月

STRONTIUM による 被害 防御2016 年 11 月

Henkray による韓国での標的型攻撃 被害 防御2017 年 3 月

Zirconium による標的型攻撃 被害 防御

Page 13: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

13

デバイスガード

SmartScreen

Windows Defender Antimalware

Windows Defender Advanced Threat Protection

Credential Guard

悪用コード実行緩和策

UEFI Secure Boot

ユーザーアカウント制御

Virtualized Based Security

Microsoft Passport

リモートワイプ

Bitlocker/Bitlocker to Go

AppLocker

Windows Firewall

ファイル暗号化

Windows Defender クラウド保護

インターネットセキュリティ設定

VPN・DirectAccess

Page 14: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

14

緩和策名称 Windows 7 Windows 10

Kernel Pool Hardening 〇 〇

Kernel ASLR (Images) 〇 〇

Fonts (User mode Appcontainer) × 〇

NTVDM disabled × 〇

Kernel ASLR (full) × 〇

Kernel DEP × 〇

Kernel Pool Hardening (Extended) × 〇

SMEP × 〇

Global Safe unlinking × 〇

Improved ASLR entropy × 〇

Page 15: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

脆弱性

①ドキュメント読み込み

②脆弱性悪用の実行

③任意コードへの

処理変更

④任意コード実行

15

Page 16: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

脆弱性

①ドキュメント読み込み

②脆弱性悪用の実行

③任意コードへの処理変更

④任意コード実行

16

Page 17: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

スタック領域(攻撃前)

リターンアドレス

スタック領域(攻撃前)

目的処理のアドレス

目的の処理

サイズチェック無しで格納

①上書き

②ジャンプ

③実行

17

Page 18: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

スタック領域(攻撃前)

リターンアドレス

スタック領域(攻撃前)

サイズチェック

データは

格納できない

18

Page 19: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

スタック領域(攻撃前)

リターンアドレス

スタック領域(攻撃前)

目的処理のアドレス

目的の処理

サイズチェック無しで格納

改変検知

推察防止

データ実行防止

19

Page 20: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

配置箇所の推察が外れ攻撃失敗

攻撃コード

データ領域のため実行失敗

20

Page 21: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

21

Kernel Pool Hardening

Kernel ASLR (Images)

Fonts (User mode apportioned)

NTVDM disabled

Kernel ASLR (full)

Kernel DEP

Kernel Pool Hardening (Extended)

SMEP

Global Safe unlinking

Improved ASLR entropy

DEP

SEHOP

ASLR

Certificate Pinning

Fonts (Block Untrusted)

Virtualized Based Security (Hyper Guard)

Virtualized Based Security (Kernel Code

Integrity)

Virtualized Based Security (Credential

Guard)

Virtualized Based Security (Device Guard)

Secure Boot

既定で有効 追加可能

Page 22: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

• 対策が進んでいないアプリやプラグインを標的

22

Page 23: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

23

Page 24: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

24

Heap metadata hardening

Heap metadata hardening (Extended)

Heap allocation randomization

Heap guard pages

AppContainer symbolic link

hardening

SEHOP Code Integrity Restriction

DEP Win32k system call

disable restriction

NullPage High Entropy ASLR

Force ASLR Strick Handle Checks

Bottomup ASLR Extension Point Disable

LoadLib (Image Load

Restriction)

Heap terminate on

corruption

memProt (Dynamic Code

Restriction)

ASR

Fonts (block untrusted)

Child Process Restriction

既定で有効 追加可能

Page 25: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

25

Page 26: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

26

Page 27: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

27

Page 28: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

28

https://technet.microsoft.com/en-us/itpro/powershell/windows/processmitigations/processmitigations

Page 29: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

専用のテナント

クラウドでの統計

セキュリティ業界からの情報

Microsoft 社内のセキュリティ技術者の情報

Microsoft 社内のリサーチ結果

Microsoft Threat Intelligence

29

Windows 10

Page 30: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例
Page 31: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

31

Page 32: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例
Page 33: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

緩和技術 保護内容

Structured Exception Handler Overwrite Protection (SEHOP)

Final Handler をおくことで、スタック オーバーフロー発生時の例外処理 (SEH) の際の脆弱性を緩和

Dynamic Data Execution Prevention (DEP)

メモリの一部を "コードの実行不可能" と設定することで、メモリ上から攻撃コードが実行されるのを防ぐ。バッファー オーバーフロー攻撃などを緩和

Heap Spray Allocation 攻撃に利用されやすいいくつかのメモリを先に確保しておくことでHeap spray の攻撃を緩和 (成功率を下げる)*Heap spray: シェル コードのコピーを可能な限り多くのヒープ領域上におくことで、メモリの割り当てが動的に変化しても、最終的にコード実行の確率を上げる手法

Null Page Allocation メモリの Null ページを先に確保することで、ユーザー モードにおけるNull 逆参照のリスクを緩和

Mandatory Address Space Layout Randomization (ASLR)

各モジュールがロードされるアドレスを予測不可能なようにランダム化する技術

Export Address Table AccessFiltering (EAF)

攻撃コードが Windows API を確認する際に必要となる ExportAddress Table の参照を制限することで攻撃を緩和

Bottom-up Randomization ボトムアップ型のメモリ割り当て (ヒープ、スタックなど) のベース アドレス (8 ビット) をランダム化する

33

Page 34: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

緩和技術 保護内容

Return-Oriented Programming (ROP)

Caller checks mitigation: ROP 攻撃に利用される関数が return 命令ではなく call 命令によって正しく呼び出されたかどうかをチェック

Execution flow simulation mitigation: ROP 攻撃に利用される関数のリターン アドレスから数個の命令でテストを行い ROP 攻撃がないかチェック

Stack pivot mitigation: スタックの位置が不正な位置へ変更されていないかをチェック

Special function checks: (Load library checks および Memory protection checks)) : 攻撃者がセキュリティ機能の回避で利用する手法のチェック。リモート経由の LoadLibrary 関数の呼び出しを監視、スタック領域が実行可能に変更されていないかのチェック

Advanced Mitigations Deep Hooks: 重要な上くらいの API だけではなくて関連する下くらいのAPI も監視する (例: kernel32! VirtualAlloc だけではなく Kernelbase! virtualAlloc/ntdll! NtAllocateVirtualMemory も監視)

Anti Detours: 関数監視の緩和策を回避する一般的な攻撃コードの動作をチェック。

Banned Functions: 監視対象とする API を追加で構成する

34

Page 35: [SC09] パッチ待ちはもう古い!Windows 10 最新セキュリティ技術とゼロデイ攻撃攻防の実例

© 2017 Microsoft Corporation. All rights reserved.

本情報の内容(添付文書、リンク先などを含む)は、作成日時点でのものであり、予告なく変更される場合があります。35