[SC09] パッチ待ちはもう古い!Windows 10...

35

Transcript of [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

3

ウイルス対策

セキュリティ機能

緩和策

4

更新プログラム

検出システム

6

侵入完了

マルウェア対策

起動完了

目的達成

セキュリティ機能

更新プログラム

境界領域防御

メ|ルフィルタ

サイトフィルタリング

デ|タ暗号化

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

現実

7

侵入完了

マルウェア対策

起動完了

目的達成

セキュリティ機能

更新プログラム

境界領域防御

メ|ルフィルタ

サイトフィルタリング

デ|タ暗号化

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

デ|タ消去

仮想化分離

ふるまい分析

自動遮断

脅威自動分析

整合性チェック

監視

発症と活動を抑える

8

侵入完了

マルウェア対策

起動完了

目的達成

セキュリティ機能

更新プログラム

境界領域防御

メ|ルフィルタ

サイトフィルタリング

デ|タ暗号化

緩和策

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

9

SmartScreen

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

AppLocker

Windows Firewall

ファイル暗号化

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

VPN・DirectAccess

Windows Security Essentials

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

11

74

88

65

70

75

80

85

90

Windows 10 Windows 8.1

12

2016 年 11 月

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

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

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

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

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 × 〇

脆弱性

①ドキュメント読み込み

②脆弱性悪用の実行

③任意コードへの

処理変更

④任意コード実行

15

脆弱性

①ドキュメント読み込み

②脆弱性悪用の実行

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

④任意コード実行

16

スタック領域(攻撃前)

リターンアドレス

スタック領域(攻撃前)

目的処理のアドレス

目的の処理

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

①上書き

②ジャンプ

③実行

17

スタック領域(攻撃前)

リターンアドレス

スタック領域(攻撃前)

サイズチェック

データは

格納できない

18

スタック領域(攻撃前)

リターンアドレス

スタック領域(攻撃前)

目的処理のアドレス

目的の処理

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

改変検知

推察防止

データ実行防止

19

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

攻撃コード

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

20

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

既定で有効 追加可能

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

22

23

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

既定で有効 追加可能

25

26

27

28

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

専用のテナント

クラウドでの統計

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

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

Microsoft 社内のリサーチ結果

Microsoft Threat Intelligence

29

Windows 10

31

緩和技術 保護内容

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

緩和技術 保護内容

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

© 2017 Microsoft Corporation. All rights reserved.

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