親ページ:マルウェア解析に必要な素養
本章では、解析者の目線でマルウェア解析のトピックを扱う。
Unpacking Gootkit Malware With IDA Pro and X64dbg - Subscriber Request - YouTube
- Deobfuscating strings with IDA Python 5:15
- Identify anti-analysis tricks after string deobfuscation 9:03
- Mutex trick 14:40
- CreateFile ShareMode trick 17:33
- Fully unpacking with x64dbg 20:25
- Searching for PE in memory using x64dbg 23:24
- Carving PE files from a memory dump with a hex editor 26:24
- Final overview of the whole process 27:59
TODO: かなりごちゃごちゃしてきた。章を立てて整理せねば。
要チェック:
注意喚起、Weekly Report、脆弱性情報(JVN)、JPCERT/CCからのお知らせやイベントの新着情報をまとめて提供
警察庁によるセキュリティ情報提供サイト。サイバー犯罪・サイバーテロの未然防止及び被害の拡大防止を図るべく、ネットワークセキュリティに関する様々な情報を提供します。
警察庁セキュリティポータルサイト@police-インターネット定点観測
「全国の警察施設のインターネット接続点に設置されたセンサーで観測したアクセス(件数)の平均を集計」したものが表示される。
TODO
TrendLabsが情報発信して、トレンドマイクロの日本語ブログに掲載されるときは3日~1週間の遅延がある。Twitterの日本アカウントは記事掲載後の翌日にツイートするので、掲載されてからすぐに読みたい場合はRSSを使うのがおすすめ。
SOCは定期的にレポートを発行している。日々アップデートされる情報を追っかけていられない人には有用な情報源である。SOCごとに特色があるので読み分けると面白い。
以下に筆者おすすめのSOCレポートを紹介する。
???「いつまでもあると思うな二次情報」
TODO
手元の走り書きメモ:
zerophazemalware
TMMalAnalyst
覚えておくとよいキーワード:
https://twitter.com/soji256/status/1149813898112933888?s=12
@soji256
フォレンジックの解説動画。複数のアーティファクトの紐づけや、Win10 で登場/退場したアーティファクトの話などがされていて面白い。内容はすべて文字起こしされていて翻訳も楽。 / Finding Insider Threats: Digging Deeper - 2019 - Webinars | http://ForensicFocus.com
https://forensicfocus.com/c/aid=321/webinars/2019/finding-insider-threats-digging-deeper/
TODO。フォレンジック分野での重要なキーワードの一つ。
DFIR = Digital Forensics & Incident Response
Twitterの #DFIR タグも参考になると思います。
https://github.com/meirwah/awesome-incident-response
A curated list of tools and resources for security incident response, aimed to help security analysts and DFIR teams.
アーティファクトができるまで - Speaker Deck(2019/10/18)
新種のアーティファクトが自分で見つけて認知されるまでのお話
10 Free Forensic Tools I Can't Live Without (2019/11/8)
Choose your weapon well. Calculate the impact. ~ Un minion curioso (2019/2/10)
学習向けのフォレンジックデータ / Where can I get the images to learn DFIR - Speaker Deck by @soji256 (2019/08/15)
https://twitter.com/soji256/status/1153817931265896448?s=12
@soji256
HackTale:Windows のフォレンジック調査を体験できるゲーム。ちょっと試したところ Autopsy が出てきたり EventLog の見方を聞かれたりと凝った作りのよう。リンク先の「Start Playing」からブラウザでそのままさくっと楽しめます。 / Cyber Simulation | HackTale
link: https://www.hacktale.com/
情報セキュリティ技術のスキルアップ・イベント 仙台CTF 2017 (2017)
メモリーフォレンジックとタイムライン解析のハンズオンの解説資料と問題ファイル
フォレンジック学習向けのイメージデータ - setodaNote (2019/06/12)
Your weekly roundup of Digital Forensics and Incident Response news
各種ログから何から起きたのかを知るための解析。ログは改ざんや消去に弱い。HTTPプロキシサーバーなど別の観点から証拠を集めるのもお忘れなく。
Windowsの広義のログ:
Linuxのログ:
セキュリティのためのログ分析入門 サイバー攻撃の痕跡を見つける技術 (Software Design plusシリーズ) (2018/9/7)
サーバー管理をやっているログ分析入門者向け。分析のための操作を徹底して解説。攻撃検出のテクニックは少なめ。ログ解析者から見たセキュリティ事故のお話は面白かった。
セキュリティログ分析基盤の設計ポイント、アーキテクチャはどうあるべきか (1/2):セキュリティログ分析基盤活用入門(2) - @IT(2019/12/3)
今回は、ログ分析基盤の設計ポイントを、アーキテクチャの観点から紹介します。
セキュリティ業務における「ログ」の基礎知識――なぜ分析基盤が必要なのか (1/2):セキュリティログ分析基盤活用入門(1) - @IT(2019/11/14)
どのような目的を持ってログ解析するか、SIEMの限界について解説している
Sysmonログを可視化して端末の不審な挙動を調査~SysmonSearch~(2018-09-06) (2018/9/6)
そこでJPCERT/CCではSysmonのログを一元管理し、ログ分析を迅速かつより正確に行うことのできるツール「SysmonSearch」を開発し、公開しました。今回は、この「SysmonSearch」について紹介します。
LogonTracerを用いた不正ログオンの調査(2018-01-24) (2018/1/24)
Windowsのアカウントログインにおける一連のイベントとイベント番号の対応など Tweet, PDF
Detecting Lateral Movements in Windows Infrastructure (2017/2/27)
http://cert.europa.eu/static/WhitePapers/CERT-EU_SWP_17-002_Lateral_Movements.pdf
Wireshark パケット解析講座 6: Ursnif感染の調査
Wireshark(pcap)による解析を入門者向けに易しく解説している。
Threat hunting using DNS firewalls and data enrichment | blog.redteam.pl (2019/08/15)
DNSの悪性通信を分析する観点が並んでいる。
Analysing PCAPs with Bro/Zeek - darkdefender - Medium (2019/6/13)
https://github.com/malwareinfosec/EKFiddle
A framework based on the Fiddler web debugger to study Exploit Kits, malvertising and malicious traffic in general.
インシデントレスポンス = インシデントに対応すること。IRと略される。
インシデントハンドラー = インデントに対応する人
[余談]丁寧なマルウェア解析はウン百万円を積めば外部機関がやってくれる。インシデントハンドラー向けの資格にGCIHがある。業務でやってる人は取ってるっぽい。
NIST SP 800-83: Guide to Malware Incident Prevention and Handling for Desktops and Laptops
本家 邦訳
NIST SP 800-61: Computer Security Incident Handling Guide
本家 (Rev. 2; 2012)
邦訳 ※ Rev. 1時点
事前準備からインシデントの処理までインシデント対応を効率化するための手引きになっている。
インシデントハンドリングマニュアル by JPCERT/CC
サイバーセキュリティにおけるインシデント対応コミュニティの発展(2019/7)
本研究はサイバーセキュリティガバナンスの数々のレジームを目的と機能と文化という3つのレンズを通して眺めれば、CSIRTは被害者救済とシステムの復旧を目的にかかげ、機能としてインシデント対応能力を持ち、互恵主義の文化を信条とする組織群のことであると主張する。
Windowsで言うと、タイムライン解析で登場する主なアーティファクトは以下の通り。
https://sans-japan.jp/sans_tokyo_autumn2018/Time_Lords.pdf
活動成果|ISOG-J:セキュリティ対応組織(SOC,CSIRT)強化に向けたサイバーセキュリティ情報共有の「5W1H」 v1.0 (2017/10/27)
ISOG-JのWG6では情報共有についての課題について議論をし、そもそも情報共有とは何を目的としたもので、最終的にどのように活用されるべきなのかという基本に立ち返り、情報共有の基礎的な概念として「サイバーセキュリティ情報共有における5W1H」という形で整理しなおしました。
脅威情報のデータフォーマット
Introduction to STIX
What is STIX?
Structured Threat Information Expression (STIX™) is a language and serialization format used to exchange cyber threat intelligence (CTI). STIX is open source and free allowing those interested to contribute and ask questions freely.
(使ったことがあるが、なかなか癖の強いプラットフォームだった…)
▼必読
インシデント調査のための攻撃ツール等の実行痕跡調査に関する報告書 (2017/11/9)
本報告書は、実際の攻撃に使われることが多いツールの実行時にどのようなログが残るのか、またどのような設定をすれば十分な情報を含むログを取得できるようになるのかを調査し、まとめています。
なお、ツール実行時に作成される痕跡(イベントログやフォレンジックアーキテクチャ)の詳細に関しては、「ツール分析結果シート」としてGitHubで公開しています。ツール分析結果シート
https://jpcertcc.github.io/ToolAnalysisResultSheet_jp/
(上の続き) https://twitter.com/jpcert/status/928451244309413888
インシデント調査のための攻撃ツール等の実行痕跡調査に関する報告書第2版を公開。調査対象の攻撃ツールを49種類に増やし、フォレンジックアーキテクチャやパケットキャプチャの調査も実施しました。^YK
IIJ Technical WEEK2017 Mimikatz実行痕跡の発見手法 - 171108_02.pdf (2017/11/8)
Windowsの標準機能
training_material_sample_for_eventlog_analysis.pdf (2018/5)
続きはIIJ Security Diary: Black Hat USA 2018 でのトレーニング提供で
FAME
https://certsocietegenerale.github.io/fame/
FAME Automates Malware Evaluation
Meet the open-source malware analysis framework and its user-friendly > web interface. Made by and for incident responders.
マルウェアをファミリー/亜種で分類する話。
クラスタリングに役立つ情報:
クラスタリングツールと使用例:
攻撃者グループ名をつけてみよう! by Akira Miyata(seraph)
https://speakerdeck.com/seraph/gong-ji-zhe-gurupuming-wotuketemiyou
AVTOKYO2016での講演資料です。
攻撃者に迫るために、どう言った分析を行っているのか、攻撃者グループ名やキャンペーン名を名付けるまでの過程をマルウェア解析等で得た特徴の具体例を交えて紹介します。
http://ja.avtokyo.org/avtokyo2016/speakers#seraph
OSINT = Open Source Inteligence
OSINT 2019 Guide | translation (原文2019/1/5;邦訳2019/10?)
OSINTについての全体概要
IIJ内製調査システム CHAGE のご紹介 | IIJ Engineers Blog(2019/09/27)
登録が必要。無料アカウント(Community Edition)でも利用可。 Company Mail Addressはgmail.comでも通る。
機能と分かること:
Community Edision のクォーター設定:
先の説明通り。
Malicious/PhishingなURLはユーザーのコメントを収集すると集められる。マルウェアが降ってくることが多かったのでおすすめ。
Reputationと言うほどではないが、関連として。デマ情報が多い?公開APIは無い?
BASIC認証が必要なはずのURLをcompromised siteと報告する怪しさもある。(もしかしてクラックした?)
機能:
Recent scans(https://urlscan.io/result/)を眺めるのも面白い。
[ネタ提供]悪性サイトへの短縮URLに関する調査(n週遅れ)
ドメインを誰が持っているのかを確認する。過去に遡って調査するには次節を参照されたし。
[余談]誰も所有していないなら自分たちで買って、飛んでくるトラフィックを見てみるのも面白い。
C2サーバーにアクセスすることは、攻撃者に解析者の存在を教えることになることに留意せよ。
あやしいサイトや知らないサイトを訪れる前に、URLを入力するだけでサイト背景情報を調査したり、迷惑メールの送付経路を表示したりすることが出来ます。
機能:
データ保全ツール。インシデントハンドラー向けのツール。
フォレンジックアーティファクト収集ツール / Forensic Artifacts Collecting Tools - Speaker Deck(2019/11/4)
CDIR Collector, CyLR, Live Response Collection で取得できる情報、生成されたファイルの比較
https://github.com/CyberDefenseInstitute/CDIR
特徴:
参考:
Zimmerman ToolsのKAPEを試してみた - ごちゃごちゃしたIT勉強記録 (2019/4/29)
デジタルフォレンジックの分野で色々ツールを作ってくださるEric Zimmerman先生が、KAPEという便利ツールを作ってくださったので、どんな感じかを簡単にまとめてみる。
TODO: Volatilityとその使い方を紹介し、「周辺領域」にあるVolatilityの項を消す
メモリフォレンジックツールは色々あるが、Volatilityが情報が多いのでまずVolatilityから触り始めるといいかもしれない。
既知のマルウエアをメモリイメージから簡易に検知できるツールを開発 ~impfuzzy for Volatility~(2016-11-01)
Volatility Labs: Announcing the Volatility 3 Public Beta! (2019/10/29)
Volatility 3 が出るそうです
Comae Stardustで、ゼロから学ぶメモリフォレンジック - セキュリティごった煮ブログ|ネットエージェント
Web Site: http://www.rekall-forensic.com/
GitHub: https://github.com/google/rekall
TODO:何を書こうとしたっけ?
感染端末の通信で使っていたドメインのうち、失効したドメインを買って(←そう書いてないけど)通信を観測するテクニック。
過去の実施例:
オペレーションアバランチでは、オペレーションに協力する組織がAvalancheボットネットに関わるドメインを取得して、そのドメイン情報をもとにマルウエア感染端末からの通信を観測しています。
Wirehsark, tcpdumpなどを利用する。
イベントログを可視化して不正使用されたアカウントを調査 ~LogonTracer~(2017-11-28)
Active Directoryネタ
Himawariの異常な暗号 または私は如何にして心配するのを止めて暗号を解読するようになったか
(2018/1/25)
https://www.jpcert.or.jp/magazine/acreport-jsac2018report1.html
APT10で使用されたHimawariの暗号化機能について詳細な解説が行われました。Himawariの設定と通信データの暗号化に利用される暗号化アルゴリズムは、FindCryptスクリプトを使ってDESであることが分かるものの標準のDESでは正しく復号できないものになっています。中津留氏の分析の結果、この暗号化方式は標準と異なる「異常なDES」となっており、一般的な値とは異なる値がSBox1, SBox8で使われること、また、処理途中でSubkeyをリセットするため8バイト目以降は入力した暗号鍵が使用されないことが明らかになりました。
解析環境での自動解析を阻止するテクニック。攻撃者のサーバーで解析環境の検知を行いつつ、動的にマルウェアのモジュールを配信する。
流行マルウェア「EMOTET」の内部構造を紐解く | MBSD Blog(2018/12/25)
解析の結果、EMOTETは以下の動作を持つことがわかりました。
- 自身が古いEMOTETの場合:最新のEMOTETをダウンロードしてアップデート
- 自身が最新のEMOTETの場合:主な目的となる機能を持った部品(モジュール)をダウンロード
- ダウンロードしたその部品をファイルとして保存せず、メモリ上で利用するファイルレスな仕組みを取り入れている
これらの特徴は、攻撃者側に以下のようなメリットをもたらします。
- 目立った不正コードを本体に持たないため、ウイルス対策製品に検知されづらい
- モジュールがファイルとして保存されないため、セキュリティ調査者から解析されづらい
- 主な不正機能を常に最新の内容に置き換えることができる
Attempts to negatively affect the existence, amount and/or quality of evidence from a crime scene, or make the analysis and examination of evidence difficult or impossible to conduct
Rogers, D. M. (2005). Anti-Forensic Presentation given to Lockheed Martin. San Diego.
https://en.wikipedia.org/wiki/Anti-computer_forensics
すること:
例:
Anti-forensic and File-less Malware - Malware - 0x00sec - The Home of the Hacker(2018/12/6)
- Disabling Event Logging
- Suspending Event Logging Threads
- Patching the Event Logging Module
- Forensic Analysis Prevention
- Uninstalling Persistence
- Wiping Event Logs
- Removing Memory Artefacts
※注意※:関係法律の解釈次第では単純所持であっても違法になりうるため、運用には細心の注意を払うこと(データベースサーバーが外部にマルウェアを放流しているなんて状況は、リサーチャーとして以ての外)
やらかし その1:
ニュース - ウイルス保管容疑でセキュリティ企業ディアイティの社員逮捕、同社は反論:ITpro (2017/11/1)
京都府警サイバー犯罪対策課などは2017年10月31日、ファイル共有ソフト「Share」の利用者から情報を流出させるウイルスを業務用PCに保管したとして、セキュリティ企業ディアイティの社員を不正指令電磁的記録(ウイルス)保管容疑で逮捕した。容疑者は顧客の依頼を受けてShareに情報が流出していないかを監視するサービスの担当者だった。
事件に対するプレス
2017.11.01
お知らせ:当社社員の不正指令電磁的記録(ウイルス)保管容疑で逮捕された件について当社ではP2Pネットワークの監視サービスを行なっております。
この業務の中で、不正プログラムを取得することがあり、取得した不正プログラムは内部のサーバに保管するシステムになっております。
この度の警察の嫌疑は不正プログラムの保管です。当社としては、この取得と保管はファイル流出監視サービスを行うという正当な理由に基づくもので、取得・保管したファイルを他人のコンピュータにおいて実行の用に供する目的はありません。
したがいまして、不正指令電磁的記録(ウイルス)保管では無いと考えておりますが、警察と協力して事実関係を明らかにしてまいります。株式会社ディアイティ
代表取締役社長 三橋 薫
http://www.dit.co.jp/
ウイルスで情報流出被害…社員逮捕の会社 : 地域 : 読売新聞(YOMIURI ONLINE) (2017/11/16)
府警の調べでは、同社は専用ソフトなどを使って外部と遮断する措置を取っていなかった。
収集方法は、大きく分けて3つある。
企業向けの解決策。非常にお高い。
マルウェアは有志により以下のサイトで収集&保管されている。ここでは利用方法の説明は一切せず、紹介に留める。
ほか:
https://virusshare.com/hashes/
手動・半自動でちまちま集めることをいとわない場合は、オンラインサンドボックスの結果に添付されている検体を集めるのも方法の一つである。
特定のファミリーの検体を集めたい場合は、アンチウイルスベンダーのインテリジェンスブログのエントリーの下部に記載されているIOC(Indicator of Compromise)をもとに当該検体を検索エンジンで見つけられるときがある。
サーバーが国内にある場合は、平成23年度時点では 過失 により他者へのマルウェア感染を引き起こした場合は罪(168条の2)に問われないが、最新の動向に注意すること。
おとりのやられサーバーのこと。
TODO:概要(以降はよく知らなくもないが、調べながらまとめることになり時間がかかるので後回し)。個人だけででなく、ハニーポットを運用している企業もある。
[閑話休題]ハニーポットを運用している人は自らを「ハニーポッター」と名乗るため見つけやすい。ハニーポットの略称はハニポ。
実際はサービス運用中のサーバーのログでも攻撃を見れるので、ハニポを立ててない人は気張らずにそれをログ解析してみるといいかもしれない。
ハニーポットの情報源:
ハニーポット運用に必要なもの:
IoT機器をターゲットにした攻撃をログするための「IoTPOT」が横浜国立大の情報・物理セキュリティ研究拠点で開発され、論文化している。読んでみたが、試みとして面白い(筆者は、Telnetを想定していることと環境再現方法にさらなる検討の余地があると感じた)。
IoTPOT: Analysing the Rise of IoT Compromises (USENIX, WOOT'15)
※注意※ 利用規約により、ハニーポットなどの脆弱なサーバーをVPS、クラウドサービスで運用することを禁止されている場合があるため、外部サービスでの運用を考えている場合はよく確認し、不明ならば問い合わせること。また、学内のサーバーで運用する場合も、特別な申請が必要な場合があるため識者に相談すること。
や・・・やめて!くまのプーさんが、寄ってくるじゃないの!!!RT @TwitterID: ConoHaでハニーポットって立ててもいいのかな?
あとサーバーを日本国内・国外のどちらに立てるのかという問題がある。法的な問題を起こした場合、サーバーが設置された国の法律にもとづいて判断される。お気をつけいただきたい。
参照:
[1] あなたは、ハニーポットがお好きですか?! // Speaker Deck (2017/8/9)
[2] ハニーポットの運用が規約違反でないか調べてみた (2018/8/10)
[3] くろひょうのぶろぐ - ハニーポットの運用が規約違反でないか調べてみた#2 (2017/10/30, 2017/11/9)
https://github.com/nict-csl/exist
NICT製攻撃分析フレームワーク。攻撃の分析に便利そう
Finding drive-by rookies using an automated active observation platform - VB2019-KoikeChubachi.pdf
【12/13】SANS GIAC 試験合格の秘訣 by NTT Security Japan