⻑期感染の実態と攻撃証跡の分析
〜サイバーレスキュー隊(J-CRAT)の活動を通じて〜
2017年10⽉12⽇
独⽴⾏政法⼈情報処理推進機構 技術本部 セキュリティセンター 情報セキュリティ技術ラボラトリー サイバーレスキュー隊 釜⾕ 誠
Copyright © 2017 独立行政法人情報処理推進機構
本⽇お話すること
• 標的型攻撃の実際
• 攻撃証跡を⾒分けるポイント
2 https://www.ipa.go.jp/security/J-CRAT/report/20170127.html
本⽇の内容は「サイバーレス キュー隊分析レポート2016」
からの記載が主となっています。
レポートからの引⽤部分は と表記しています。
レポート
標的型攻撃の実際
レスキュー活動での事例をベースに
Copyright © 2017 独立行政法人情報処理推進機構
標的型マルウェア感染 2つのポイント
4
攻撃者
標的組織
③送付
①ウイルス作成
②メール作成
・宛先・⽂⾯
④感染+永続化
⑤C2サーバ通信
⑥情報収集
・メールデータ
・PCログインID/Pass
・ファイルサーバデータ窃取
・AD管理者権限 ⑦横移動
C2サーバ
RAT(Remote Access Tool)を使い C2(Command and Controll)
サーバと通信する
攻撃拡⼤のため、攻撃者は
組織内ネットワークを横移動していく
RAT
マルウェアは感染後、
永続化(⾃動実⾏)する
標的型攻撃の実際
この
PC
は何年も前から感染していますこの
PC
は複数のマルウェアに感染しています 標的型攻撃は業界単位でもおこなわれます 標的型攻撃は個⼈単位でもおこなわれます メール乗っ取りで攻撃に加担してしまったWin10
化やPC
更新でも感染継続したまま標的型攻撃は何度もやってきます ファイルレス攻撃
が増えています
Copyright © 2017 独立行政法人情報処理推進機構
⻑期感染
6
標的型マルウェアに感染したまま、⻑期間放置されている ケースが⾮常に多い攻撃者は必ずしも活動完了 後に、その痕跡をキレイに 消していくわけではない
感染
PC
とC2
サーバの 定期通信(ビーコン)が残された状態が 継続されている
レポート
複数のマルウェア
ダウンローダー
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
ウイルス対策ソフトの有効性標的型マルウェア感染している場合 は、ツールも含めて複数のマルウェ アに感染していることが多い。
ツール類は広く出回っているものも あるため、ウイルス対策ソフトで検 知されるケースもある。
1台の
PC
に16
個 のマルウェアとツールが設置
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
特定業界を執拗に狙う攻撃キャンペーンの分析
個⼈でも感染・狙われる
• 標的型マルウェアが「個⼈利⽤PC」で発⾒され るケースが散⾒
–
背景としては•
組織メールを⾃宅メールに転送•
クラウドサービスによる⾃宅での利⽤–
個⼈利⽤メールがターゲットになっているケースも•
やり取り型のケースも•
個⼈利⽤の場合、組織利⽤に⽐べて、対策や体制が脆弱 職歴・所属団体から標的とされた可能性Copyright © 2017 独立行政法人情報処理推進機構
メール乗っ取りで攻撃に加担
• 標的メールはどんなアドレスから送信されるか
–
実在⼈物の名前+フリーメールは今もある–
メールが乗っ取られて送信されているケースも•
クラウド系サービスの乗っ取りも増加10
分析レポート2015
http://www.ipa.go.jp/security/J-CRAT/report/20160629.html
例)サイバー分析レポート2015の事案では、
94%が不正利⽤での送付だった。
フリーメールは単発送信、企業メール は⼀⻫送信と使い分けていたと思われ る。
何度もやってくる
• 最近の事案から
• 1台のPCから3つの標的型マルウェア感染が発
⾒された。
–
2013年後半にplugxに感染(ウイルス対策ソフト検出)–
2015年に別のplugxに感染–
2017年1⽉に新型マルウェアに感染plugxは2012年頃から観測されており、現在 でも多くの亜種が発⾒されている。
新型マルウェアは2016年後半から観測され たもの。
複数の攻撃者グループの活動痕跡が存在した ケースも。
plugx(初期型)
plugx(別種)
新種マルウェア
Copyright © 2017 独立行政法人情報処理推進機構
こんな感染例も
12
Windows10へアップグレード後も感染継続していたWin7 Win10
PCリプレース後も仮想マシンが感染継続していた旧PC
Win7
新PC
Win7
アップグレード
PCリプレース
仮想マシンを起動した
タイミングでC2サーバと通信 永続化した記録を⾒ると
Windows7時代に感染
Mac
+Paralles
での感染事例 もあり本当に増えている
「ファイルレス攻撃」
• ファイルレス攻撃
–
マルウェア等の実ファイルを⽣成しない攻撃。スク リプトのリモート実⾏や、攻撃コードをレジストリ に保存する等の⼿法を使うことで検知を回避。–
特にWindowsOS標準スクリプト⾔語Powershellを 使った攻撃が増加。–
PowershellベースのRATがリリース、利⽤された攻 撃事例も。今後ますます増加が予測さ れています
攻撃証跡を⾒分けるポイント
攻撃痕跡はどこに残されるか
14
初期攻撃後の共通点
マルウェアは永続化する C2 サーバと通信する
が、⾒つけにくい!
Copyright © 2017 独立行政法人情報処理推進機構
⾒つけにくい理由(1)
• ウイルス対策ソフトでの検知を回避する
–
従来⼿法では検知しにくい⼯夫がされている• ⽬⽴たないようマルウェアを永続化する
–
⽬⽴たないフォルダ名や隠し属性–
著名ソフトに似せた名前• ⽬⽴たない外部通信に紛れ込ませる
–
⼀般利⽤可能なHTTPやHTTPS通信を使う16
⾒つけにくい理由(2)
• ⽬⽴たない通信先ドメイン
–
正規サイトらしく⾒えるドメイン名•
著名なソフト名、⼀般名称を⼀部含んだものなど•
正規サイトが改ざんされるケースも–
VPS(仮想専⽤サーバ)やPaaSも• ⽬⽴たないよう正規ツールを使って攻撃する
–
Microsoft製管理ツールやWindowsOS標準機能–
強⼒な管理ツールを攻撃に悪⽤–
管理⽤ツールはウイルス対策ソフトでは検知されな いCopyright © 2017 独立行政法人情報処理推進機構
痕跡はどこに
18 Firewall
プロキシサーバ
感染PC
DNSサーバ
永続化
C2サーバ通信
•
永続化は感染PCの設定が変更される•
C2サーバ通信はプロキシサーバやFirewallといった外部通信へのインフラ のログに記録されている
痕跡を⾒分けるには
⼤量のデータ 検索と抽出 ⽂字列
SIEM
が有効な理由のひとつ(
Security Infomation and Event Management
)共通点
技法
通常時との⽐較
ポイント
狙われやすい箇所を重点的に
インディケーターを活⽤
Copyright © 2017 独立行政法人情報処理推進機構
永続化の設定箇所
• WindowsOSでの主な永続化設定
–
⾃動起動レジストリ•
スタートアップレジストリ•
サービスレジストリ–
スタートアップフォルダ–
ログオンスクリプト–
タスクスケジューラ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 独立行政法人情報処理推進機構
感染によく使われるフォルダ
22
これらのフォルダはユーザー権限で利⽤可能なフォルダ。
ただし、通常のアプリケーションでも利⽤する場合がある。
レポート
環境変数等 実フォルダ例
%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
不審な永続化を⾒つけるには
• ⼤量の設定箇所
–
永続化箇所は⼤量にあるため、初⾒で不審点を発⾒するのは⼤変困難
•
スタートアップ系レジストリ出⼒例:数⼗〜百程度•
サービス系レジストリ出⼒例:数百〜数千–
実⾏形式の記述のみ抽出しても数百は普通• ⾒つけるには「変更前情報」が現実的
–
設定出⼒結果の⽐較で、差異=意図しない設定変更 を抽出毎⽇変わるものではないので
PC
セットアップ時の出⼒が有効Copyright © 2017 独立行政法人情報処理推進機構
設定出⼒コマンド例
24
よく利⽤されるレジストリの例。
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
はアドビソフトウェアを最新の状態に保ちます。「⽂字列検索による抽出」と「変更前情報」との⽐較が現実的
取得レジストリ例
参考資料取得コマンド例とレジストリ reg query “レジストリ名” /sで取得する
スタートアップ系レジストリ
"HKLM¥SOFTWARE¥Microsoft¥Windows¥CurrentVersion¥Run" /s
"HKLM¥Software¥Microsoft¥Windows¥CurrentVersion¥RunOnce" /s
"HKLM¥Software¥Microsoft¥Windows¥CurrentVersion¥RunOnceEx" /s
"HKLM¥Software¥Microsoft¥Windows¥CurrentVersion¥policies¥Explorer¥Run" /s
"HKLM¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Winlogon¥Userinit" /s
"HKLM¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Winlogon¥Shell" /s
"HKLM¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Winlogon¥Shell" /s
"HKLM¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Windows" /v "Load"
"HKLM¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Windows" /v "Run"
"HKLM¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Windows¥Appinit_Dlls" /s
"HKLM¥Software¥Microsoft¥Command Processor¥AutoRun" /s
"HKLM¥Software¥Microsoft¥Windows¥CurrentVersion¥RunServices" /s
"HKLM¥Software¥Microsoft¥Windows¥CurrentVersion¥RunServicesOnce" /s
"HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥Run" /s
"HKCU¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Windows" /v "Load"
"HKCU¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Windows" /v "Run"
"HKCU¥Software¥Microsoft¥Windows NT¥CurrentVersion¥Windows¥Run" /s
"HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥RunOnce" /s
"HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥Explorer¥AppKey¥18¥ShellExecute" /s
"HKCU¥Software¥Microsoft¥Command Processor¥AutoRun" /s
"HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥policies¥Explorer¥Run" /s
"HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥RunServices" /s
"HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥RunServicesOnce" /s
"HKU¥.DEFAULT¥Software¥Microsoft¥Windows¥CurrentVersion¥Run" /s
"HKCU¥Software¥Microsoft¥Windows¥CurrentVersion¥Explorer¥User Shell Folders" /v "Startup"
"HKLM¥Software¥Microsoft¥Windows¥CurrentVersion¥Explorer¥User Shell Folders" /v "Common Startup"
サービスレジストリ
Copyright © 2017 独立行政法人情報処理推進機構
C2サーバ通信確⽴
• C2サーバの通信を発⾒するには
–
正常通信を記録しておく–
PCからのリクエストを捕捉できるところ• 着眼点
–
FQDN、IP、URL、通信時間、頻度などから分析26 Firewall
プロキシサーバ DNSサーバ
PC
C2サーバ通信
インディケーター
Indicator of Compromise(IOCs)
• 攻撃を⽰唆するデータのこと
• 脅威情報の情報共有として提供されることも
C2
サーバとの通信情報• FQDN
• IP
アドレス•
通信ポート 攻撃メールの要素•
件名•
送信者アドレス•
送信ホスト•
添付ファイル名•
ハッシュ値 感染時に⽣成•
永続化箇所•
ファイル名•
ハッシュ値 例)Copyright © 2017 独立行政法人情報処理推進機構
インディケーター例
28
セキュリティベンダー等の公開情報から
http://blog.jpcert.or.jp/2017/04/redleaves---malware-based-on-open-source-rat.html
※C2サーバ情報
※2017/5時点での情報です
インディケーター活⽤例(1)
攻撃・感染の確認
Firewall プロキシサーバ
PC
DNSサーバ
C2サーバ通信
メールサーバ
C2
サーバへの名前解決 がおこなわれているかC2
サーバへの通信が ないかC2
サーバへの リクエストがないか永続化・派⽣ファイル
攻撃メール
攻撃メールが 送られてないか 永続化設定や同件の
ファイルはないか
Copyright © 2017 独立行政法人情報処理推進機構
インディケーター活⽤例(2)
防御
30 Firewall
プロキシサーバ
PC
DNSサーバ
永続化・派⽣ファイル
C2サーバ通信
メールサーバ
攻撃メール
C2
サーバへの名前解 決を無害化C2
サーバへの通信を ブロック・検知攻撃メールホストを ブロック
C2
サーバをブラック リストでブロックウイルス対策ソフトの
履歴の⾒⽅知っていますか?
• 攻撃の兆候
–
標的型マルウェア感染の前後で、何らかの不審ファ イルや不審通信、不審動作をウイルス対策ソフトが 検知していたケースは多い• 対策
–
管理者通知の確実な実施–
利⽤者が履歴ログを確認する⽅法を知っておく–
危険な検知名を知っておくCopyright © 2017 独立行政法人情報処理推進機構
危険な検知名
単語 想定される内容
Trojan
トロイの木馬。略字でTROJなど。Backdoor
バックドア、RAT
。略字でBKDR
など。Downloader
マルウェアをダウンロードさせるタイプ。Rootkit
攻撃ツールのセット。Plugx
標的型攻撃利用マルウェア。別名Korplug
、Destroy
など。Poisonivy
標的型攻撃利用マルウェア。略字PIVY
など。Daserf
標的型攻撃利用マルウェア。Zacom
標的型攻撃利用マルウェア。別名Nflogなど。Emdivi
標的型攻撃利用マルウェア。Elirks
標的型攻撃利用マルウェア。別名Klurpなど。
PWDump7
ハッキングツール。パスワード奪取ツール。mimikatz
ハッキングツール。パスワード奪取ツール。WCE
ハッキングツール。パスワード奪取ツール。gsedump
ハッキングツール。パスワード奪取ツール。PsExec
リモート管理ツールだが攻撃にも利用される。同種にPsExeSvc
。Microsoft
の正規リリース。参考資料
レポート
バージョンで違うPowershellの イベントログ
•
PowerShellのバージョンによって残せるイベントログに⼤きな違いがある。
–
Windows7(PS2.0)では、Powershellが動作した程度のログし か残らないが、Windows10(PS5.0)では、PowerhShellのコ マンドレベルのログが残せる。–
デフォルトでもある程度残せるが、Windows10⽤管理⽤テンプ レート(ADMX)の適⽤でより多くを取得可能。パスやコマンドが 詳しく記録される
最後に
?
標的型攻撃メールかな? と思ったら・・・
IPAへご相談ください!
http://www.ipa.go.jp/security/tokubetsu/
情報提供が攻撃対策となります
〜サイバー空間利⽤者みんなの⼒をあわせて対抗⼒を〜
標的型サイバー攻撃特別相談窓⼝
電話 03-5978-7599
(対応は、平⽇の10:00〜12:00 および13:30〜17:00) E-mail [email protected]
※このメールアドレスに特定電⼦メールを送信しないでください。
・不審な⽇本語
・差出⼈とメールアドレスが不審
・不審な添付ファイルやリンク
組織内での情報共有に加えて