Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Observe_C2Servers_Phorpiex_Avaddon_-20200630.pdf
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
hiro
June 30, 2020
Technology
1.5k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Observe_C2Servers_Phorpiex_Avaddon_-20200630.pdf
hiro
June 30, 2020
More Decks by hiro
See All by hiro
Observe_C2Servers_via_MonitoringService-20200330.pdf
ctrl_z3r0
2
1.2k
Remove_obfuscation_in_Emotet_PowershellScript-20200129.pdf
ctrl_z3r0
2
2.7k
Honeypot-on-GCP-20191201.pdf
ctrl_z3r0
0
910
HackingDojo_De-Ice_1.110_-20191203.pdf
ctrl_z3r0
5
1.5k
Investigating-Malware-20191030
ctrl_z3r0
4
1.6k
Honeypot_on_GCP-20191006.pdf
ctrl_z3r0
4
1.6k
AntiPortscan-20190925
ctrl_z3r0
2
1.3k
Honeypot on GCE (Google Compute Engine)
ctrl_z3r0
1
1.1k
Authentication-and-7pay-case.pdf
ctrl_z3r0
6
1.4k
Other Decks in Technology
See All in Technology
LayerX コーポレートエンジニアリング室におけるサプライチェーンセキュリティへの取り組み / Supply Chain Security at LayerX Corporate Engineering
yuyatakeyama
2
690
Agent Skills設計で柔軟性と硬さのバランスが難しい話
nassy20
0
150
AI時代のコスト管理を考えよう〜明日から使える実践AWSノウハウ~
yoshimi0227
0
320
Lightning近況報告
kozy4324
0
200
【2026年版】 ベクトル検索とEmbedding最前線
mocobeta
20
5.4k
2026TECHFRESH畢業分享會 - 原生還是跨平台? App 開發踩坑實錄
line_developers_tw
PRO
0
1.3k
Chainlitで作るお手軽チャットUI
ynt0485
0
280
マルチアカウント環境での コーディングエージェントを使った障害調査が大変なので AIエージェントにReadOnly権限を付与してみた / ReadOnly AI Agents for Multi-Account AWS Incident Response
yamaguchitk333
2
110
LayerXにおけるセキュリティ管理の現在地と次の一手
tosho
0
250
Kubernetesにおける学習基盤とLLMOpsの概要
ry
1
320
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.6k
FPGAの開発コンペでZephyrを使ってみた
iotengineer22
0
150
Featured
See All Featured
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
1
260
Optimising Largest Contentful Paint
csswizardry
37
3.7k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Color Theory Basics | Prateek | Gurzu
gurzu
0
370
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
140
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
Facilitating Awesome Meetings
lara
57
7k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.3k
Rails Girls Zürich Keynote
gr2m
96
14k
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Transcript
稼働監視サービスを活用した C2サーバ(Phorpiex/Avaddon)の観測 第29回セキュリティ共有勉強会 2020/06/30 hiro(@ctrl_z3r0) a.k.a ねこさん⚡(@catnap707)
自己紹介
アジェンダ 1 はじめに 2 稼働監視について 3 無料のサーバ監視サービス 4 観測対象のC2サーバ選定 5 監視サービスを利用したC2サーバの観測 6 その他の情報源 ▪参考情報 UptimeRobot.com - https://uptimerobot.com
StatusCake.com - https://app.statuscake.com Freshping.io - https://app.freshping.io HowFast.tech - https://www.howfast.tech/ httpstatus.io - https://httpstatus.io Censys.io - https://censys.io Shodan.io - https://shodan.io Hybrid-Analysis.com - https://hybrid-analysis.com JoeSandbox.com - https://joesandbox.com ※C2サーバの観測は、 公開情報へのアクセスであり、 不正アクセスには当たりません。
4 1 はじめに
こんなことありませんか? 5 ”ハニーポットが落ちてることに気付けない” ”クラウドの監視どうしたらいいの?” ”ログが更新されていなかった” ”SSHでログインできなくなった” ”VPSの監視では機能が貧弱” ”マルウェア配布サイトや、C2の 監視を楽にしたい” 本日は、無料の稼働監視サービスの紹介と
それを活用したC2サーバの観測をご説明!
2 稼働監視について 6
7 稼働監視と運用監視 稼働監視 運用監視 目的 主にサーバ機器やネットワーク機器が 正常に動作していることを監視。 主にシステムが正常に処理できている ことを監視。
範囲 システムの稼働に必要なサーバ機器と ネットワーク機器を監視範囲とする。 個々のシステムを監視範囲とする。 (バッチジョブ、バックアップ運用等) レベル L1(リソース:メモリ、ディスク) L3~L4レベル(IPとポート) L7レベル(アプリケーション) L7レベル(アプリケーション) 監視方法 SNMP(MIB)、ICMP(ping)、 TCPコネクション、HTTP/HTTPS、 監視エージェント ログ監視(SIEM)、API 監視エージェント、ジョブスケジューラ 通報 しきい値監視 (しきい値を超えたら通報) ステータス監視 (異常終了時に通報)
8 クラウド オンプレミス HW障害 障害が発生したホスト上のVMは別ホス トに移動されるので、障害を意識しな い。 クラスタを組んでいない場合は、当該ホ ストがダウンすると、システムもダウン
する。 NW障害 障害が発生したNWは別経路に切り替 わるので、障害を意識しない。 NWを冗長化していない場合は、通信断 が発生する。 ファームウェア 不具合 クラウド事業者がファームウェアのパッ チ更新を行うので意識しない。 運用保守業者が更新したファームウェ アに問題があると不具合が発生する。 更新のためにシステム停止が必要な場 合がある。 ドライバ 不具合 クラウド事業者がドライバのパッチ更新 を行うので意識しない。 運用保守業者が更新したドライバに問 題があると不具合が発生する。更新の ためにシステム停止が必要な場合があ る。 空調の 不具合 大規模な障害を除けば、意識しない。 (AWSで大規模障害はあったが・・・) 空調機器の不具合はよく発生する。 (空調をお客さんが切っちゃうとかね ) クラウドとオンプレミスにおける障害影響範囲
エージェント監視 エージェントレス監視 ×エージェントのインストールが必要。 ×即死の場合、通知されない。 •CPU使用率、メモリ使用率、ディスク空き 容量等のステータスや、バッチジョブの 状態などが分かる。
※主な製品 JP1、SystemWalker、WebSAM、Tivoli Netcool、 Zabbix、Nagios、MRTG、Cacti、mackerl、 Munin、Datadog など •エージェントのインストール不要。 ×ポーリングなので監視タイミンング抜けがある。 ×ネットワークの導通、サービスの死活しか 分からない(リソース状態は分からない)。 ※SNMPエージェント以外のエージェントは不要という 製品や、SSH/TELNETでログインして監視対象から 情報を収集する方式をエージェントレスと呼ぶ場合も ある。 ここでは、ICMPやTCPコネクション、HTTPリクエスト のみで監視することをエージェントレス と呼ぶ。 9 エージェント監視とエージェントレス監視 監視システム (マネージャ) 監視対象 (エージェント) 監視対象 (エージェント) 監視対象 (エージェント) 監視システム 監視対象 監視対象 監視対象
3 無料のサーバ監視サービス 10
※UptimeRobotがおススメ(RSSフィードあり。DM飛ばないことも) ※類似のサービスとして、Pingdom.com、Site24x7.com などがある が、いずれも 30 Days Trial だった。 ※類似のサービスを探すのに便利なサイト「AlternativeTo.net」 https://alternativeto.net/software/uptimerobot/
11 監視サービス 国 間隔 (分) 監視 上限 スマホ アプリ Eメー ル SMS Slack Twitter UptimeRobot.com アメリカ 5 50 〇 〇 △ 〇 DM StatusCake.com イギリス 5 10 〇 〇 △ 〇 Tweet Freshping.io フランス 1 50 × 〇 × 〇 × HowFast.tech フランス 1 30 × 〇 × 〇 × SavaMoni.com 日本 5 5 × 〇 × ◦ × 無料のサーバ監視サービス
12 監視サービス HTTP HTTPS キーワード ※ DNS FTP SMTP TCP
Port UDP Port ICMP Ping UptimeRobot.com 〇 〇 × × × 〇 × 〇 StatusCake.com 〇 × × × × 〇 × 〇 Freshping.io 〇 × 〇 × × 〇 〇 〇 HowFast.tech 〇 × × × × × × × SavaMoni.com 〇 〇 〇 〇 〇 一部 のみ NTP 〇 サーバ監視サービスごとの対応プロトコル インターネット・プロトコル ・スイート(TCP/IP) プロトコル 7 アプリケーション HTTP/HTTPS、DNS、 FTP、SMTP 6 5 4 トランスポート TCP、UDP 3 インターネット IP(IPv4/IPv6)、ICMP PPP、 PPPoE 2 ARP、RARP 1 リンク Ethernet、Wi-Fi HTTP/HTTPS、TCP Portの 監視ができれば、C2サー バの観測には十分
13 4 観測対象のC2サーバ調査
ダウンローダーのアクセス先C2サーバを観測することで、いち早くペ イロードのデプロイを知ることができる。 14 マルウェア感染に関わるC2サーバ 現在主流のマルウェア感染手法では、VBAマクロや PowerShell スクリ プトが仕込まれたOfficeドキュメントがダウンローダ(ドロッパー)として 添付されている。(6月9日に確認されたAvaddonではJavaScript) C2サーバ
ペイロード (マルウェア本体) ▪参考情報 ・防ぎきれない攻撃を検知するため利用が広がるIoC、課題や限界を踏まえた上での利用が不可欠 https://www.cybernet.co.jp/carbonblack/tips/06.html 監視サービス 定期的に観測
15 どうやってC2サーバを知るのか(1/2) ▪Twitter で流行りのマルウェアを知るのがおススメ(海外アカウント) 投影のみ
16 どうやってC2サーバを知るのか(2/2) ▪Twitter で流行りのマルウェアを知るのがおススメ(国内アカウント) 投影のみ
17 Any.Run の Public submissions ◆EmotetのPowerShell難読化解除~Any.RunとCyberChefの使い方~ https://speakerdeck.com/ctrl_z3r0/remove-obfuscation-in-emotet-powershellscript-20200129 Phorpiex(フォルピエックス)で検索。 ※2020-02-08~2020-03-23ごろまで活動。 件名は、顔文字
⇒ :-) ;) :-D :) Nemtyランサムウェア、コインマイナーに感染 ▪Any.Runの解析結果から検索(Phorpiexの例)
18 Any.Run の Public submissions Avaddon(アバドン)で検索。 ※2020-06-09 06:00~22:00ごろ活動。 本文は、顔文字 ⇒
;) Avaddonランサムウェアに感染 ※ホンダのEKANSランサムウェアに持ち切り で、ほとんど報道されなかった。 ▪Any.Runの解析結果から検索(Avaddonの例) 添付ファイルは、 IMGnnnnnn.jpg.zip (IMGnnnnnn.jpg.js)で あった。
19 Any.Run の Public submissions ▪HTTP REQUESTS でURLを確認 ドメイン名だけでなくIPアドレスでも アクセスしなおしているのは、DNS
のブロックリスト回避の目的と推測さ れる。(Cisco Umbrellaとか…) 現時点では、404エラーの場合でも、 後日デプロイされる場合があるの で、合わせて観測対象とする。
20 VirusTotal の Passive DNS(1/2) 攻撃者は、IPアドレスやドメイン名を使いまわす傾向にある。 Passive DNSは、他のドメインやIPアドレスがどのような関連を持っているか 履歴として保存したもの。RISKIQ(PassiveTotal)が有名。 ▪参考情報
・What is Passive DNS? A beginner's guide https://www.deteque.com/news/passive-dns/ ・RiskIQ Community Edition https://community.riskiq.com/login ▪VTで、DNS関連の情報を収集
21 VirusTotal の Passive DNS(2/2) ▪COMMUNITYに有用な情報がある場合も・・・
22 VirusTotal の URLs ▪IP⇒RELATIONS⇒URLs (IPに関連したURL情報) Phorpiexの場合、数字.exeや、数字.txt、n.txtなど 数字.exe:ダウンローダー? 数字:コインマイナー、RATモジュールなど 数字.txt:送信リスト、n.txt:リストの最大値
#!/bin/sh for i in $(seq 1 9135);do wget -b http://??????.net/ amm/$i.txt -U "Mozilla/6.0" done 例えば、こんなスクリプトで、送信リストをダウンロード。 Sextortion向けSPAMリスト、182,700,000 件! #!/bin/sh for i in $(seq 1 1653);do wget -b http://??????.net/ jps/$i.txt -U "Mozilla/6.0" done 6/9のAvaddonのリストは古く、2018-12-07のもの。 33,060,000 件(go.jp:235,866件、lg.jp:66,142件)
23 Hybrid-Analysisの検索結果 ▪右上の検索窓から、ドメイン名やIPアドレスで検索 Hybrid-Analysisでは、ドメイン名やIPアドレ スでの検索が可能。Any.Runよりはサンプ ルが少ないが、参考になる。
24 JoeSandboxの検索結果 ▪右上の検索窓から、ドメイン名やIPアドレスで検索 さらにサンプルが少ないが、 JoeSandboxでも、ドメイン名や IPアドレスでの検索が可能。
25 Censys.io と Shodan.io ▪攻撃者は、同じSSH FingerprintでC2サーバを用意することが多い 別IPのHTTP/HTTPSや、 SSH、FTPも観測対象に!
5 監視サービスを利用したC2サーバの観測 26
27 C2サーバ観測までの流れ アクション 参考情報・入手元 不審メールの検知 ツイート、ブログへのポスト、注意喚起情報など マルウェアの入手・解析 または マルウェアの解析結果の入手 Any.RunやHybrid-Analysisの最近の解析結果
ツイート中のハッシュ値、スクリプトの難読化解除 C2サーバのIPアドレス、URL調査 Any.Run、Hybrid-Analysis、VirusTotalの情報 ツイートなど C2サーバのIPアドレス、URL導通確認 check-host.netによる導通確認 httpstatus.ioによるHTTPヘッダー確認 C2サーバのコンテンツ調査 DIRB(コンテンツスキャナー)によるコンテンツス キャン 監視サービスへのモニター設定 (HTTP/HTTPS、TCPポート、ICMP) UptimeRobot.com、StatusCake.com Freshping.ioなど 追加IPアドレスの調査 IoT検索エンジン(Censys.io、Shodan.io) ▪検知から監視サービスへの登録までの大まかな流れ ◆EmotetのPowerShell難読化解除~Any.RunとCyberChedの使い方~ https://speakerdeck.com/ctrl_z3r0/remove-obfuscation-in-emotet-powershellscript-20200129
28 C2サーバを観測して何を知るのか ▪これまでの観測結果から、以下の癖が判明 ◆稼働監視サービスでのHTTPレスポンス監視に向いている ・攻撃者が新しいファイルに入れ替える場合、 一旦404になったり、httpdがDOWNしたりする。 ・IPアドレスを変えた場合、外部からhttpdが不安定 (DOWN/UP繰り返し)になったように見える。 ◆スクリプトによる手動監視で対応 ・アルファベット1文字のフォルダ名やexeファイル名。
・配布リストは、n.txtの中にファイル数が数字で記 載。配信の停止は、n.txtにゼロが書き込まれる。 ステータスの更新
29 UptimeRobotのDashboard ▪UptimeRobotのDashboard イメージ 現在のステータス 過去のイベント
30 UptimeRobotのモニター設定 ▪UptimeRobotのモニター設定 HTTP(s)の設定 TCPポートの設定
31 UptimeRobotの通知設定 ▪UptimeRobotの通知設定 SlackのWebHookURLを指定する と、Slackに通知ができる。
32 StatusCakeのDashboard ▪StatusCakeのDashboardイメージ 現在のステータス 時系列の状態を知る には個別の詳細画面
33 StatusCakeのモニター設定 ▪StatusCakeのモニター設定 複数の海外拠点からポーリング することが可能。
34 StatusCakeの通知設定 ▪StatusCakeの通知設定 Public Tweetとしてツイート することが可能(DM不可) Slack連携も可能
35 FreshpingのDashboard ▪FreshpingのDashboardイメージ 現在のステータス
36 Freshpingのモニター設定 ▪Freshpingのモニター設定 1分間隔のポーリングが可能 (他サービスでは有償オプション)
37 Freshpingの通知設定 ▪Freshpingの通知設定 SlackのWebHookURLを指定する と、Slackに通知ができる。
38 HowFastのDashboard ▪HowFastのDashboardイメージ 現在のステータス
39 HowFastのモニター設定 ▪HowFastのモニター設定 Slack連携可
40 HowFastの通知設定 ▪HowFastの通知設定 SlackのWebHookURLとChannelを指定 すると、Slackに通知ができる。
41 スマホアプリ通知やSlack連携 ▪アプリ通知やSlack連携が便利 Freshpingは1分間隔なので、5分間隔 のUptime Robotより通知が早い。 Uptime Robotは、スマホアプリへの 通知ができる。
42 User-Agent: Mozilla/5.0+(compatible; UptimeRobot/2.0; http://www.uptimerobot.com/) User-Agent: StatusCake/Pretest (Statuscake.com) User-Agent: FreshpingBot/1.0
(+https://freshping.io/) User-Agent: HowFastBot/1.3 (howfast.tech) User-Agentを把握しておこう ▪PhorpiexのC2サーバで、User-Agentの対策がされた Uptime Robotだと 404 Not Found ptime Robotだと 200 OK 2020/04/06以降、Uptime Robotの対策は解除された が、05/31再び対策された。
43 5 その他の情報源
44 DIRB(Web Content Scanner) $ dirb http://??????.top/ phorpiex.txt ----------------- DIRB
v2.22 By The Dark Raver ----------------- START_TIME: Mon Apr 6 10:56:05 2020 URL_BASE: http://tldrbox.top/ WORDLIST_FILES: /usr/share/dirb/wordlists/vulns/phorpiex.txt ----------------- GENERATED WORDS: 133 ---- Scanning URL: http://tldrbox.top/ ---- + http://??????.top/2 (CODE:200|SIZE:129032) + http://??????.top/3 (CODE:200|SIZE:129032) + http://??????.top/1.exe (CODE:200|SIZE:128512) + http://??????.top/11.exe (CODE:200|SIZE:128512) + http://??????.top/a.exe (CODE:200|SIZE:128512) + http://??????.top/o.exe (CODE:200|SIZE:128512) + http://??????.top/t.exe (CODE:200|SIZE:128512) + http://??????.top/xxx/ (CODE:403|SIZE:306) ----------------- END_TIME: Mon Apr 6 10:56:38 2020 DOWNLOADED: 133 - FOUND: 8 ◆DIRB | Penetration Testing Tools https://tools.kali.org/web-applications/dirb ▪dirbコマンド(Webコンテンツスキャナー) ---- Scanning URL: http://tldrbox.top/ ---- + http://??????.top/2 (CODE:200|SIZE:129032) + http://??????.top/3 (CODE:200|SIZE:129032) + http://??????.top/1.exe (CODE:200|SIZE:128512) + http://??????.top/11.exe (CODE:200|SIZE:128512) + http://??????.top/a.exe (CODE:200|SIZE:128512) + http://??????.top/o.exe (CODE:200|SIZE:128512) + http://??????.top/t.exe (CODE:200|SIZE:128512) + http://??????.top/xxx/ (CODE:403|SIZE:306) sava.exe up.exe upla.exe vget.exe xup.exe 1.txt 2.txt 3.txt 4.txt URLのパスをWordList(辞書)と して指定。カスタマイズすると 効率よくスキャンできる。
$ dirb http://??????.top/ phorpiex.txt ----------------- DIRB v2.22 By The Dark
Raver ----------------- START_TIME: Fri Jun 26 13:31:06 2020 URL_BASE: http://??????.top/ WORDLIST_FILES: phorpiex.txt ----------------- GENERATED WORDS: 228 ---- Scanning URL: http://??????.top/ ---- ----------------- END_TIME: Fri Jun 26 13:31:06 2020 DOWNLOADED: 228 - FOUND: 0 45 torifyコマンド ▪torifyコマンド(Wrapper for Torsocks and Tor) socks5プロキシを指定できない dirbやwget等のコマンドは・・・ →torifyコマンド経由でラッピングして実行するとTor経由に! $ sudo torify dirb http://??????.top/ phorpiex.txt ----------------- DIRB v2.22 By The Dark Raver ----------------- START_TIME: Fri Jun 26 13:32:01 2020 URL_BASE: http://??????.top/ WORDLIST_FILES: phorpiex.txt ----------------- GENERATED WORDS: 228 ---- Scanning URL: http://??????.top/ ---- + http://??????.top/2 (CODE:200|SIZE:91048) + http://??????.top/1.exe (CODE:200|SIZE:230400) + http://??????.top/2.exe (CODE:200|SIZE:230400) + http://??????.top/11.exe (CODE:200|SIZE:230400) + http://??????.top/32.exe (CODE:200|SIZE:195584) + http://??????.top/64.exe (CODE:200|SIZE:195584) <中略> + http://??????.top/pe/ (CODE:200|SIZE:1) + http://??????.top/pe/1 (CODE:200|SIZE:196104) + http://??????.top/pe/2 (CODE:200|SIZE:230920) ----------------- END_TIME: Fri Jun 26 13:34:12 2020 DOWNLOADED: 228 - FOUND: 15
46 httpstatus.io ▪Last-Modified などのヘッダを確認 こちらのIPは先方にはバレないが、 User-Agentはバレるので注意。 200 OKか、404 NotFoundか。 Connection
Timeoutか。
47 Last-Modified の観測 ▪Last-Modified を観測することで、攻撃者の動きが分かる ペイロードが置かれた時刻が、 Last-Modifiedに反映される。
48 まとめ ◆用途に合ったサービスを選ぼう! ◆C2サーバやマルウェア配付サイトを観測できるぞ! ◆知り得た情報を基に、新たな観測をしてみよう!
ご清聴ありがとうございました。 49 質問はお気軽にDMでどうぞ @catnap707
50