⻑期感染の実態と攻撃証跡の分析
〜サイバーレスキュー隊(J-CRAT)の活動を通じて〜
2017年5⽉10⽇・11⽇・12⽇
独⽴⾏政法⼈情報処理推進機構
技術本部 セキュリティセンター
情報セキュリティ技術ラボラトリー
サイバーレスキュー隊 釜⾕ 誠
Copyright © 2017 独立行政法人情報処理推進機構
本⽇お話すること
• 標的型攻撃の実際
• 攻撃証跡の⾒分け⽅
2 https://www.ipa.go.jp/security/J-CRAT/report/20170127.html
本⽇の内容は「サイバーレス キュー隊分析レポート2016」
からの記載が主となっています。
レポートからの引⽤部分は と表記しています。
レポート
標的型攻撃の実際
レスキュー活動での事例をベースに
Copyright © 2017 独立行政法人情報処理推進機構
攻撃の進み⽅⼀例 3つのポイント
4
攻撃者
標的組織
③送付
①ウイルス作成
②メール作成
・宛先・⽂⾯
④感染+永続化
⑤C2サーバ通信
⑥情報収集
・メールデータ
・PCログインID/Pass
・ファイルサーバデータ窃取
・AD管理者権限 ⑦横移動
C2サーバ
RAT(Remote Access Tool)を使い C2(Command and Controll)
サーバと通信する
攻撃拡⼤のため、攻撃者は 組織内ネットワークを横移動する
RAT
マルウェアは感染後、
永続化(⾃動実⾏)する
Copyright © 2017 独立行政法人情報処理推進機構
標的型攻撃の実際
5
この PC は何年も前から感染しています
この PC は複数のマルウェアに感染しています 標的型攻撃は業界単位でもおこなわれます 標的型攻撃は個⼈単位でもおこなわれます メール乗っ取りで攻撃に加担してしまった
Win10 化や PC 更新でも感染継続したまま
標的型攻撃は何度もやってきます
Copyright © 2017 独立行政法人情報処理推進機構
⻑期感染
6
標的型マルウェアに感染したまま、⻑期間放置されている ことが多い
必ずしも活動完了後に、
跡形もなく消えるわけで はない
感染
PC
とC2
サーバの 定期通信(ビーコン)が残された状態
レポート
Copyright © 2017 独立行政法人情報処理推進機構
複数のマルウェア
7
ダウンローダー
RAT
権限奪取ツール(複数)
カスタマイズツール(複数)
カスタマイススクリプト(複数)
Microsoft管理ツールレポート
フォルダ名 ファイル名
¥ProgramData taskeng.exe
¥ProgramData¥F3 googleUpdate.exe goopdate.dll goopdate.dll.map NVSmart.hlp
¥ProgramData¥SxS bug.log
¥Users¥Public¥Videos wce.EXE gsecdump.exe TIOR64.exe
Win7Elevate64.exe Win7ElevateDll64.dll tior.exe
domain.exe ss.vbs u.bat ss.bat server.vbs h.bat
¥Users¥<ユーザー名>
¥AppData¥Local¥Temp 1.exe
¥Windows PSEXESVC.EXE
ウイルス対策ソフトの有効性
標的型マルウェア感染している場合 は、ツールも含めて複数のマルウェ アに感染していることが多い。
ツール類は広く出回っているものも あるため、ウイルス対策ソフトで検 知されるケースもある。
Copyright © 2017 独立行政法人情報処理推進機構
:オペレーション
同⼀の攻撃者と思われる標的型攻撃を追跡し、2015年11⽉〜2016年3⽉までに137件の攻撃メールを収集(まとまった攻撃をキャンペーンと呼ぶ)
共通点を有する業界団体(8団体)を介して、執拗に攻撃を⾏っている
企業等の正規アカウントを乗っ取り、踏み台にして送るケースが殆どである
本⽂の類似性の他、ウイルスの添付⽅法、ウイルスの挙動などが同⼀であるこのキャンペーンは、16の オペレーションに分割でき、
攻撃者の挙動分析を実施。
http://www.ipa.go.jp/security/J-CRAT/report/20160629.html
本キャンペーンで悪⽤された業界団体は主に
製造業に関わるは8団体、⼀般企業を狙った40通の 内37通は同⼀業界で、ある特定の製造業を
狙った攻撃であることが分かった。
宛先 メール件数 組織数
業界団体 86 8
企業・製造業 37 27
企業・卸売業 2 1
企業・ソフトウェア業 1 1
個人・フリーメール 9 7
不明 2 -
総計 137 44
分析レポート2015
特定業界を執拗に狙う攻撃キャンペーンの分析
Copyright © 2017 独立行政法人情報処理推進機構
個⼈でも感染・狙われる
• 標的型マルウェアが「個⼈利⽤PC」で発⾒され るケースが散⾒
– 組織メールを⾃宅メールに転送
– クラウドサービスによる⾃宅での利⽤
– 個⼈利⽤メールがターゲットになっているケースも
9
職歴・所属団体から標的とされた可能性
Copyright © 2017 独立行政法人情報処理推進機構
メール乗っ取りで攻撃に加担
• 標的メールはどんなアドレスから送信されるか
– 実在⼈物の名前+フリーメールは今もある
– メールが乗っ取られて送信されているケースも
•
クラウド系サービスの乗っ取りも増加10
分析レポート2015
http://www.ipa.go.jp/security/J-CRAT/report/20160629.html
例)サイバー分析レポート2015の事案では、
94%が不正利⽤での送付だった。
フリーメールは単発送信、企業メール は⼀⻫送信と使い分けていたと思われ る。
Copyright © 2017 独立行政法人情報処理推進機構
何度もやってくる
• 最近の事案から
• 1台のPCから3つの標的型マルウェア感染が発
⾒された。
– 2013年後半にplugxに感染
(ウイルス対策ソフト検出)– 2015年に別のplugxに感染
– 2017年1⽉に新型マルウェアに感染
11
plugxは2012年頃から観測されており、
現在でも多くの亜種が発⾒されている。
新型マルウェアは2016年後半から観測さ れたもの。
このように⼤きく時間をあけて攻撃される ケースも。
plugx(初期型)
plugx(別種)
新種マルウェア
Copyright © 2017 独立行政法人情報処理推進機構
こんな感染例も
12
Windows10へアップグレード後も感染継続していたWin7 Win10
PCリプレース後も仮想マシンが感染継続していた旧PC
Win7
新PC
Win7
アップグレード
PCリプレース
仮想マシンを起動した
タイミングでC2サーバと通信 永続化した記録を⾒ると
Windows7時代に感染
Mac
+Paralles
での感染事例 もあり攻撃証跡の⾒分け⽅
攻撃痕跡はどこに残されるか
13
Copyright © 2017 独立行政法人情報処理推進機構
感染成功後の共通点
14
マルウェアは永続化する C2 サーバと通信する
攻撃者は横移動する
が、⾒つけにくい
Copyright © 2017 独立行政法人情報処理推進機構
⾒つけにくい理由(1)
• ウイルス対策ソフトでの検知を回避する
– 従来⼿法では検知しにくい⼯夫がされている
• ⽬⽴たないようマルウェアを永続化する
– ⽬⽴たないフォルダ名や隠し属性 – 著名ソフトに似せた名前
• ⽬⽴たない外部通信に紛れ込ませる
– ⼀般利⽤可能なHTTPやHTTPS通信を使う
15
Copyright © 2017 独立行政法人情報処理推進機構
⾒つけにくい理由(2)
• ⽬⽴たない通信先ドメイン
– 正規サイトらしく⾒えるドメイン名
•
著名なソフト名、⼀般名称を⼀部含んだものなど•
正規サイトが改ざんされるケースも– VPS(仮想専⽤サーバ)やPaaSも
• ⽬⽴たないよう正規ツールを使って攻撃する
– Microsoft製管理ツールやWindows標準機能 – 特にPowerShellを使った攻撃が増加
•
PowerShellはWindows標準搭載•
PowerShellで構成された権限奪取ツールやRAT作成も16
Copyright © 2017 独立行政法人情報処理推進機構
痕跡はどこに
17 Firewall
Active Directory ドメインコントローラ プロキシサーバ
近隣PC 感染PC
DNSサーバ
永続化
C2サーバ通信
横移動
Copyright © 2017 独立行政法人情報処理推進機構
痕跡を⾒分けるポイント
⼤量のデータ
検索と抽出 ⽂字列
SIEM
が有効な理由のひとつ(
Security Infomation and Event Management
) 共通点技法
通常時との⽐較
Copyright © 2017 独立行政法人情報処理推進機構
永続化の設定箇所
• WindowsOSでの主な永続化設定
– ⾃動起動レジストリ
•
スタートアップレジストリ•
サービスレジストリ– スタートアップフォルダ – ログオンスクリプト
– タスクスケジューラ
19
コンピュータ単位 ユーザー単位
Copyright © 2017 独立行政法人情報処理推進機構
マルウェア永続化の例
20
永続化設定された3つのプログラムはすべてマルウェア。
配置されたフォルダは、ファイル名があらわすアプリケーション では通常、利⽤されない。
配置されているフォルダと ファイル名に注⽬する
レポート
HKEY_CURRENT_USER¥Software¥Microsoft¥Windows¥CurrentVersion¥Run taskeng REG_SZ "C:¥ProgramData¥taskeng.exe"
F3 REG_SZ "C:¥ProgramData¥F3¥googleUpdate.exe" 200 0
AYCais REG_SZ C:¥ProgramData¥AYCai¥AYCRunSC.exe
Copyright © 2017 独立行政法人情報処理推進機構
感染によく使われるフォルダ
21
これらのフォルダはユーザー権限で利⽤可能なフォルダ。
ただし、通常のアプリケーションでも利⽤する場合がある。
レポート
環境変数等 実フォルダ例
%TEMP% C:¥Users¥
ユーザー名¥AppData¥Local¥Temp
%PROGRAMDATA%
%ALLUSERPROFILE% C:¥ProgramData
%PUBLIC% C:¥Users¥Public
%APPDATA% C:¥Users¥
ユーザー名¥AppData¥Roaming
%LOCALAPPDATA% C:¥Users¥
ユーザー名¥AppData¥Local
%USERPROFILE%¥Appdata C:¥Users¥
ユーザー名¥Appdata
スタートアップフォルダ(ユーザー)
C:¥Users¥
ユーザー名¥AppData¥Roaming¥Microsoft¥Windows¥Start Menu¥Programs¥Startup
スタートアップフォルダ
C:¥ProgramData¥Microsoft¥Windows¥Start
Menu¥Programs¥Startup
Copyright © 2017 独立行政法人情報処理推進機構
不審な永続化を⾒つけるには
• ⼤量の設定箇所
– 永続化箇所は⼤量にあるため、初⾒で不審点を発⾒
するのは⼤変困難
•
スタートアップ系レジストリ出⼒例:数⼗〜百程度•
サービス系レジストリ出⼒例:数百〜数千–
実⾏形式の記述のみ抽出しても数百は普通• ⾒つけるには「変更前情報」が現実的
– 設定出⼒結果の⽐較で、差異=意図しない設定変更 を抽出
22
毎⽇変わるものではないので
PC
セットアップ時の出⼒が有効Copyright © 2017 独立行政法人情報処理推進機構
設定出⼒コマンド例
23
よく利⽤されるレジストリの例。
Windows標準コマンドで出⼒することができる。
レポート
取得コマンド例とレジストリ reg query “レジストリ名” /sで取得する
スタートアップ系レジストリ
"HKLM¥SOFTWARE¥Microsoft¥Windows¥CurrentVersion¥Run" /s
"HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥Run" /s
サービスレジストリ"HKLM¥SYSTEM¥currentControlSet¥services"
HKEY_LOCAL_MACHINE¥SYSTEM¥currentcontrolset¥services¥AdobeARMservice Type REG_DWORD 0x10
Start REG_DWORD 0x2
ErrorControl REG_DWORD 0x0
ImagePath REG_EXPAND_SZ "C:¥Program Files¥Common Files¥Adobe¥ARM¥1.0¥armsvc.exe"
DisplayName REG_SZ Adobe Acrobat Update Service ObjectName REG_SZ LocalSystem
Description REG_SZ Adobe Acrobat Updater
はアドビソフトウェアを最新の状態に保ちます。「⽂字列検索による抽出」と「変更前情報」との⽐較が現実的
Copyright © 2017 独立行政法人情報処理推進機構
C2サーバ通信確⽴
• C2サーバの通信を発⾒するには
– 正常通信を記録しておく
– PCからのリクエストを捕捉できるところ
• 着眼点
– FQDN、IP、URL、通信時間、頻度などから分析
24 Firewall
プロキシサーバ DNSサーバ
PC
C2サーバ通信
Copyright © 2017 独立行政法人情報処理推進機構
インディケーター
Indicator of Compromise(IOCs)
• 攻撃を⽰唆するデータのこと
• 脅威情報の情報共有として提供されることも
25
C2
サーバとの通信情報• FQDN
• IP
アドレス•
通信ポート 攻撃メールの要素•
件名•
送信者アドレス•
送信ホスト•
添付ファイル名•
ハッシュ値 感染時に⽣成•
永続化箇所•
ファイル名•
ハッシュ値 例)Copyright © 2017 独立行政法人情報処理推進機構
インディケーター例
26
セキュリティベンダー等の公開情報から
http://blog.jpcert.or.jp/2017/04/redleaves---malware-based-on-open-source-rat.html
※C2サーバ情報
※2017/5時点での情報です
Copyright © 2017 独立行政法人情報処理推進機構
インディケーター活⽤例(1)
攻撃・感染の確認
27 Firewall
プロキシサーバ
PC
DNSサーバ
C2サーバ通信
メールサーバ
C2
サーバへの名前解決 がおこなわれているかC2
サーバへの通信が ないかC2
サーバへの リクエストがないか永続化・派⽣ファイル
攻撃メール
攻撃メールが 送られてないか 永続化設定や同件の
ファイルはないか
Copyright © 2017 独立行政法人情報処理推進機構
プロキシログを⽂字列検索・抽出
28
Windowsでログから⽂字列検索(findstr)
C:¥Users¥test0¥tmp¥squid_sample>findstr "ipa.go.jp" access.log
::1 - - [20/Apr/2017:17:22:19 +0900] "GET http://www.ipa.go.jp/ HTTP/1.1" 301 423 TCP_MISS:FIRSTUP_PARENT ::1 - - [20/Apr/2017:17:22:52 +0900] "CONNECT securemetrics.ipa.go.jp:443 HTTP/1.1" 200 2871
TCP_TUNNEL:FIRSTUP_PARENT
::1 - - [20/Apr/2017:17:24:20 +0900] "CONNECT www.ipa.go.jp:443 HTTP/1.1" 200 3672 TCP_TUNNEL:FIRSTUP_PARENT ::1 - - [20/Apr/2017:17:24:20 +0900] "CONNECT www.ipa.go.jp:443 HTTP/1.1" 200 10849 TCP_TUNNEL:FIRSTUP_PARENT ::1 - - [20/Apr/2017:17:24:21 +0900] "CONNECT www.ipa.go.jp:443 HTTP/1.1" 200 46130 TCP_TUNNEL:FIRSTUP_PARENT ::1 - - [20/Apr/2017:17:24:24 +0900] "CONNECT images.ipa.go.jp:443 HTTP/1.1" 200 150223
TCP_TUNNEL:FIRSTUP_PARENT
例)プロキシログからipa.go.jpへのリクエストがあったかを確認する
Linuxでログから通信先と通信回数を集計(awk)
root@test01:/var/log/squid# cat access.log |awk '{print $7}' |sort |uniq -c |sort -rn 24 www.apple.com:443
20 images.apple.com:443
14 store.storeimages.cdn-apple.com:443 12 yj.adnxs.com:443
12 http://ocsp.digicert.com/
10 image.shopping.srv.yimg.jp:443 10 asia-live.inside-graph.com:443
タイムリーに⾏え ば攻撃・感染を キャッチできる
Copyright © 2017 独立行政法人情報処理推進機構
インディケーター活⽤例(2)
防御
29 Firewall
プロキシサーバ
PC
DNSサーバ
永続化・派⽣ファイル
C2サーバ通信
メールサーバ
攻撃メール
C2
サーバへの名前解 決を無害化C2
サーバへの通信を ブロック・検知攻撃メールホストを ブロック
C2
サーバをブラック リストでブロックCopyright © 2017 独立行政法人情報処理推進機構
横移動
• Windowsイベントログから発⾒する
– 認証に関するイベントに注⽬
– リモート接続を中⼼に
– 取得イベントのチューニングは必要
• 着眼点
– どこから、どのアカウントで、時間、頻度など
30 Active Directory
ドメインコントローラ
感染PC
認証試⾏
近隣PC
Copyright © 2017 独立行政法人情報処理推進機構
イベントログ抽出例(1)
–
これらの動作が「正規」かどうか•
あの端末からリモートログインする必要あるか?•
この時間帯に接続って必要あるか?•
これだけの回数必要あるか?31
PS C:¥Windows¥system32> Get-WinEvent |Where-Object{$_.ID -eq '21'}TimeCreated ProviderName Id Message
--- --- -- ---
2017/04/24 12:05:49 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
2017/04/24 11:58:11 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
2017/04/24 11:52:24 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
2017/04/24 11:51:25 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
2017/04/24 11:46:51 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
2017/04/24 11:44:51 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
2017/04/24 11:36:04 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
2017/04/20 19:38:54 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
2017/04/14 16:16:15 Microsoft-Windows-Terminal... 21 リモート デスクトップ サー...
例)PowershellでイベントログからID21(リモートデス クトップ接続の成功)を抽出
通常の利⽤⽅法と⽐べて 不審点を洗い出す
Copyright © 2017 独立行政法人情報処理推進機構
イベントログ抽出例(2)
• カスタムビュー
– イベントビューアの標準機能
32
ログオン成功(4624)ログオン失敗(4625)の例
通常の利⽤⽅法と⽐べて 不審点を洗い出す
最後に
Copyright © 2017 独立行政法人情報処理推進機構
?
標的型攻撃メールかな? と思ったら・・・
IPAへご相談ください!
http://www.ipa.go.jp/security/tokubetsu/
情報提供が攻撃対策となります
〜サイバー空間利⽤者みんなの⼒をあわせて対抗⼒を〜
34
標的型サイバー攻撃特別相談窓⼝
電話 03-5978-7599
(対応は、平⽇の10:00〜12:00 および13:30〜17:00) E-mail [email protected]
※このメールアドレスに特定電⼦メールを送信しないでください。
・不審な⽇本語
・差出⼈とメールアドレスが不審
・不審な添付ファイルやリンク
組織内での情報共有に加えて