マルウェア解析に必要な素養~解析者編~ ==== :::success 親ページ:[マルウェア解析に必要な素養](https://hackmd.io/s/S1kLEr5x#) ::: 本章では、解析者の目線でマルウェア解析のトピックを扱う。 [ToC] 解析作業の実際 ---- [Unpacking Gootkit Malware With IDA Pro and X64dbg - Subscriber Request - YouTube](https://www.youtube.com/watch?v=242Tn0IL2jE) > - 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: かなりごちゃごちゃしてきた。章を立てて整理せねば。 要チェック: * [Japan Security Analyst Conference 2018](https://www.jpcert.or.jp/event/jsac2018.html) (2018/1/25) * JSAC 2019 * [Japan Security Analyst Conference 2019開催レポート~前編~ - JPCERT/CC Eyes | JPCERTコーディネーションセンター公式ブログ](https://blogs.jpcert.or.jp/ja/2019/01/jsac2019report1.html)(2019/01/31) * [Japan Security Analyst Conference 2019開催レポート~後編~ - JPCERT/CC Eyes | JPCERTコーディネーションセンター公式ブログ](https://blogs.jpcert.or.jp/ja/2019/02/jsac2019report2.html)(2019/02/07) ### 公的機関からの情報を得る [JPCERT コーディネーションセンター](https://www.jpcert.or.jp/) > 注意喚起、Weekly Report、脆弱性情報(JVN)、JPCERT/CCからのお知らせやイベントの新着情報をまとめて提供 [警察庁セキュリティポータルサイト@police](https://www.npa.go.jp/cyberpolice/) > 警察庁によるセキュリティ情報提供サイト。サイバー犯罪・サイバーテロの未然防止及び被害の拡大防止を図るべく、ネットワークセキュリティに関する様々な情報を提供します。 [警察庁セキュリティポータルサイト@police-インターネット定点観測](https://www.npa.go.jp/cyberpolice/detect/observation.html) 「全国の警察施設のインターネット接続点に設置されたセンサーで観測したアクセス(件数)の平均を集計」したものが表示される。 ### セキュリティベンダーからの情報を得る #### Twitterアカウント TODO #### トレンドマイクロ * [トレンドマイクロ セキュリティブログ](http://blog.trendmicro.co.jp/) * [TrendLabs Security Intelligence BlogTrendLabs Security Intelligence Blog](http://blog.trendmicro.com/trendlabs-security-intelligence/) TrendLabsが情報発信して、トレンドマイクロの日本語ブログに掲載されるときは3日~1週間の遅延がある。Twitterの日本アカウントは記事掲載後の翌日にツイートするので、掲載されてからすぐに読みたい場合はRSSを使うのがおすすめ。 <!-- ##### Threat Encycropedia https://www.trendmicro.com/vinfo/us/threat-encyclopedia/ * 検出名から感染経路の予想はつく * ぼかしが多くて役に立たない? --> #### シマンテック #### Kaspersky #### ESET #### Intel Security #### Cisco * [Cisco's Talos Intelligence Group Blog](https://blog.talosintelligence.com/) ### SOCレポートを読む SOCは定期的にレポートを発行している。日々アップデートされる情報を追っかけていられない人には有用な情報源である。SOCごとに特色があるので読み分けると面白い。 以下に筆者おすすめのSOCレポートを紹介する。 * ラック:[JSOC INSIGHT](https://www.lac.co.jp/lacwatch/jsoc_insight/) * 更新頻度:2〜3ヶ月に1回 * 既知情報のサマリーと(深い)解析がメイン。解析テクの話もあって新参には読んでておもしろい * NTT Security:[What We Think](https://www.nttsecurity.com/ja-jp/what-we-think/) * 更新頻度:不定期 * ピンポイントなトピックを扱う。本当に解析が好きな人が書いたんだろうなって感じ * IBM:[Tokyo SOC Report](https://www.ibm.com/blogs/tokyo-soc/) * 更新頻度:半年に1回 * 他にはない毛色。データ量で殴った分析が得意って感じ ### 日本のSecurity Researcherからの情報を得る ???「いつまでもあると思うな二次情報」 * [piyolog](http://d.hatena.ne.jp/Kango/) ※情報セキュリティインシデントにまつわる圧倒的情報量のインテリジェンスに特化 * [辻 伸弘(nobuhiro tsuji)](https://twitter.com/ntsuji)さん * 一人CSIRTこと[(n)inja csirt](http://csirt.ninja/)もよろしく * [nao_sec](https://twitter.com/nao_sec) * [PR] 友利奈緒たちも頑張ってます! ### 世界のSecurity Researcherからの情報を得る TODO * [Malware-Traffic-Analysis.net](http://www.malware-traffic-analysis.net/) * 悪性通信を見てみたかったらここからpcapを取ってくるといいかも * [MalwareMustDie! · MMD Malware Research Blog](http://blog.malwaremustdie.org/) * [MDNC | Malware don't need Coffee](https://malware.dontneedcoffee.com/blog/) 手元の走り書きメモ: ``` zerophazemalware TMMalAnalyst ``` #### 雑多な情報 * [InfoSec Community Forums - SANS Internet Storm Center](https://isc.sans.edu/forums/) * ハニーポットのログ解析/パケット解析でタレコミ情報が集まる便利なサイト ### フォレンジック 覚えておくとよいキーワード: * アーティファクト(Artifact) 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/ #### DFIR 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. #### SANSチートシート * [SANS - Information Security Resources](https://www.sans.org/security-resources/posters) * [Digital Forensics Training | Incident Response Training | SANS](https://digital-forensics.sans.org/community/posters) * [Poster11_2018_Find_Evil.indd - SANS_Poster_2018_Hunt_Evil_FINAL.pdf](https://digital-forensics.sans.org/media/SANS_Poster_2018_Hunt_Evil_FINAL.pdf) (2018/5) * New Normal … Windowsの正規の通常プロセスについて * Hunt Evil: Lateral Movement … Lateral Movementでのテクニックとログの対応 #### アーティファクト [アーティファクトができるまで - Speaker Deck](https://speakerdeck.com/rtechkouhou/ateihuakutogadekirumade)(2019/10/18) 新種のアーティファクトが自分で見つけて認知されるまでのお話 #### ツール [10 Free Forensic Tools I Can't Live Without](https://www.stark4n6.com/2019/10/10-free-forensic-tools-i-cant-live.html) (2019/11/8) * Arsenal Image Mounter * Autopsy * DB Browser for SQLite * EZ Tools/KAPE * ExifTool * FTK Imager * Hindsight * SRUM-DUMP * USB Detective * Volatility [Choose your weapon well. Calculate the impact. ~ Un minion curioso](https://unminioncurioso.blogspot.com/2019/02/dfir-choose-your-weapon-well-calculate.html) (2019/2/10) * DumpIT * Magnet RAM Capture * Belkasoft Live RAM Capturer * Memorize * Winpmem * FTK Imager Lite #### トレーニング [Home : DFIR CTF - Email took my money (Exchange forensics training scenario) - Mellivora, the CTF engine](https://ctf.unizar.es/estafa_CEO/home) (2019) [学習向けのフォレンジックデータ / Where can I get the images to learn DFIR - Speaker Deck](https://speakerdeck.com/soji256/where-can-i-get-the-images-to-learn-dfir) 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](http://sectanlab.sakura.ne.jp/sendaictf/fyi.html) (2017) メモリーフォレンジックとタイムライン解析のハンズオンの解説資料と問題ファイル [フォレンジック学習向けのイメージデータ - setodaNote](https://soji256.hatenablog.jp/entry/2019/06/12/073049) (2019/06/12) ### ニュースフィード * [This Week In 4n6 – Your weekly roundup of Digital Forensics and Incident Response news](https://thisweekin4n6.com/) * > Your weekly roundup of Digital Forensics and Incident Response news ### ログ解析 各種ログから何から起きたのかを知るための解析。ログは改ざんや消去に弱い。HTTPプロキシサーバーなど別の観点から証拠を集めるのもお忘れなく。 Windowsの広義のログ: * Sysmon … イベントログ。レジストリ操作、RDPログイン、Active Directory認証、Powershellの起動履歴(Process Creation Events)・実行コマンド(Audit Log)など * レジストリ … TODO:Windowsはレジストリになにかログを残してなかったっけ? * Prefetch … ファイル実行形跡(Last Run Time) * NTFS … ファイルシステム * Timestamp … ファイルの作成日時、変更日時 * Alternate data streams (ADS) … インターネットからダウンロードしたことを示すマーキングなど * Windows search index … Indexingのログにファイルの存在形式が残っているかも * ブラウザのヒストリー Linuxのログ: * /var/log … 大体のアプリはこのディレクトリにログを吐いている印象 [セキュリティのためのログ分析入門 サイバー攻撃の痕跡を見つける技術 (Software Design plusシリーズ)](https://www.amazon.co.jp/dp/429710041X/) (2018/9/7) サーバー管理をやっているログ分析入門者向け。分析のための操作を徹底して解説。攻撃検出のテクニックは少なめ。ログ解析者から見たセキュリティ事故のお話は面白かった。 [セキュリティログ分析基盤の設計ポイント、アーキテクチャはどうあるべきか (1/2):セキュリティログ分析基盤活用入門(2) - @IT](https://www.atmarkit.co.jp/ait/articles/1911/29/news011.html)(2019/12/3) > 今回は、ログ分析基盤の設計ポイントを、アーキテクチャの観点から紹介します。 [セキュリティ業務における「ログ」の基礎知識――なぜ分析基盤が必要なのか (1/2):セキュリティログ分析基盤活用入門(1) - @IT](https://www.atmarkit.co.jp/ait/articles/1911/14/news006.html)(2019/11/14) どのような目的を持ってログ解析するか、SIEMの限界について解説している #### Windowsのイベントログ [Sysmonログを可視化して端末の不審な挙動を調査\~SysmonSearch\~(2018-09-06)](http://www.jpcert.or.jp/magazine/acreport-SysmonSearch.html) (2018/9/6) > そこでJPCERT/CCではSysmonのログを一元管理し、ログ分析を迅速かつより正確に行うことのできるツール「SysmonSearch」を開発し、公開しました。今回は、この「SysmonSearch」について紹介します。 #### ログイン [LogonTracerを用いた不正ログオンの調査(2018-01-24)](https://www.jpcert.or.jp/magazine/acreport-logontracer2.html) (2018/1/24) Windowsのアカウントログインにおける一連のイベントとイベント番号の対応など [Tweet](https://twitter.com/rimpq/status/1204042679866331137), [PDF](https://speakerd.s3.amazonaws.com/presentations/1c1196d9f4d647b7bcfb9c25cdc28388/windows_account_logon_flow_v0.1.pdf) #### Lateral Movement 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感染の調査](https://unit42.paloaltonetworks.jp/wireshark-tutorial-examining-ursnif-infections/) Wireshark(pcap)による解析を入門者向けに易しく解説している。 [Threat hunting using DNS firewalls and data enrichment | blog.redteam.pl](https://blog.redteam.pl/2019/08/threat-hunting-dns-firewall.html) (2019/08/15) DNSの悪性通信を分析する観点が並んでいる。 [Analysing PCAPs with Bro/Zeek - darkdefender - Medium](https://medium.com/@melanijan93/https-medium-com-melanijan93-analysing-pcaps-with-bro-zeek-33340e710012) (2019/6/13) #### (トレーニング用の)実際のデータ * [Malware-Traffic-Analysis.net](http://www.malware-traffic-analysis.net/) * 形式:pcap * cf. [Malware-Traffic-Analysis.net - 2018 Traffic Analysis Workshop for DEFCON's Blue Team Village](http://www.malware-traffic-analysis.net/2018/workshop/BlueTeamVillage/) (2018) * [Malicious Traffic Collection - @nao_sec](https://traffic.moe/) * nao_sec提供のマルウェアのトラフィックデータ * 形式:sazファイル(Fiddlerで開いてね) #### ツール 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](https://www.giac.org/certification/certified-incident-handler-gcih)がある。業務でやってる人は取ってるっぽい。 #### 方法論 NIST SP 800-83: Guide to Malware Incident Prevention and Handling for Desktops and Laptops [本家](https://csrc.nist.gov/publications/detail/sp/800-83/rev-1/final) [邦訳](https://www.ipa.go.jp/files/000025349.pdf) NIST SP 800-61: Computer Security Incident Handling Guide [本家](https://csrc.nist.gov/publications/detail/sp/800-61/rev-2/final) (Rev. 2; 2012) [邦訳](https://www.ipa.go.jp/files/000025341.pdf) ※ Rev. 1時点 事前準備からインシデントの処理までインシデント対応を効率化するための手引きになっている。 [インシデントハンドリングマニュアル](https://www.jpcert.or.jp/csirt_material/files/manual_ver1.0_20151126.pdf) by JPCERT/CC #### 実際 * [サイバーレスキュー隊(J-CRAT)分析レポート2016(IPA)](https://www.ipa.go.jp/files/000057175.pdf) (2017/1/27) * [2017 InternetWeek ショーケース (Day 2): 実践インシデント対応 -侵入された痕跡を発見せよ-](https://internetweek.jp/sc-program/day2-takeda.pdf) (2017/6/2) * [インシデント調査のための攻撃ツール等の実行痕跡調査に関する報告書(by JPCERT/CC)](http://www.jpcert.or.jp/research/ir_research.html)/[English Ver.](https://www.jpcert.or.jp/english/pub/sr/ir_research.html) (2017/6/12) #### 参考)CSIRT [サイバーセキュリティにおけるインシデント対応コミュニティの発展](https://www.jstage.jst.go.jp/article/jsicr/37/1/37_13/_article/-char/ja)(2019/7) > 本研究はサイバーセキュリティガバナンスの数々のレジームを目的と機能と文化という3つのレンズを通して眺めれば、CSIRTは被害者救済とシステムの復旧を目的にかかげ、機能としてインシデント対応能力を持ち、互恵主義の文化を信条とする組織群のことであると主張する。 ### タイムライン解析(Timeline Aalaysis) [Timeline Analysis (by IIJ)](https://sect.iij.ad.jp/d/2018/05/044132/training_material_sample_for_timeline_analysis.pdf) * Analyzing Filesystem Timelines * 続きは [IIJ Security Diary: Black Hat USA 2018 でのトレーニング提供](https://sect.iij.ad.jp/d/2018/05/044132.html) で Windowsで言うと、タイムライン解析で登場する主なアーティファクトは以下の通り。 * ファイルのAccess, Create, Modifyイベント … ドロップされたファイルなど * レジストリのAccess, Modify … Persistent(自動起動設定)、ミューテックスなど * PrefetchのLast Run … 実行形跡 #### NTFS timestamp https://sans-japan.jp/sans_tokyo_autumn2018/Time_Lords.pdf * 意図的にタイムスタンプが操作されたとき、ミリ秒以下がゼロになっていて分かりやすいときがある→ミリ秒以下の時間も表示できる解析ソフトを使いたいところ ### 情報共有の強化 [活動成果|ISOG-J:セキュリティ対応組織(SOC,CSIRT)強化に向けたサイバーセキュリティ情報共有の「5W1H」 v1.0](http://isog-j.org/output/2017/5W1H-Cyber_Threat_Information_Sharing_v1.html) (2017/10/27) > ISOG-JのWG6では情報共有についての課題について議論をし、そもそも情報共有とは何を目的としたもので、最終的にどのように活用されるべきなのかという基本に立ち返り、情報共有の基礎的な概念として「サイバーセキュリティ情報共有における5W1H」という形で整理しなおしました。 #### STIX 脅威情報のデータフォーマット [Introduction to STIX](https://oasis-open.github.io/cti-documentation/stix/intro) > ### 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. #### MISP [MISP - Malware Information Sharing Platform and Threat Sharing - The Open Source Threat Intelligence Platform](http://www.misp-project.org/) (使ったことがあるが、なかなか癖の強いプラットフォームだった…) ### 侵入痕跡調査 ▼必読 [インシデント調査のための攻撃ツール等の実行痕跡調査に関する報告書](https://www.jpcert.or.jp/research/ir_research.html) (2017/11/9) > 本報告書は、実際の攻撃に使われることが多いツールの実行時にどのようなログが残るのか、またどのような設定をすれば十分な情報を含むログを取得できるようになるのかを調査し、まとめています。 > なお、ツール実行時に作成される痕跡(イベントログやフォレンジックアーキテクチャ)の詳細に関しては、「ツール分析結果シート」としてGitHubで公開しています。 > > ツール分析結果シート > https://jpcertcc.github.io/ToolAnalysisResultSheet_jp/ (上の続き) https://twitter.com/jpcert/status/928451244309413888 > インシデント調査のための攻撃ツール等の実行痕跡調査に関する報告書第2版を公開。調査対象の攻撃ツールを49種類に増やし、フォレンジックアーキテクチャやパケットキャプチャの調査も実施しました。^YK #### Mimikatz [IIJ Technical WEEK2017 Mimikatz実行痕跡の発見手法 - 171108_02.pdf](https://www.iij.ad.jp/company/development/tech/techweek/pdf/171108_02.pdf) (2017/11/8) #### イベントログ Windowsの標準機能 [training_material_sample_for_eventlog_analysis.pdf](https://sect.iij.ad.jp/d/2018/05/044132/training_material_sample_for_eventlog_analysis.pdf) (2018/5) 続きは[IIJ Security Diary: Black Hat USA 2018 でのトレーニング提供](https://sect.iij.ad.jp/d/2018/05/044132.html)で ### 分析者用ツール 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. > > ![](https://i.imgur.com/KVPWIeX.png) ### マルウェアのクラスタリング マルウェアをファミリー/亜種で分類する話。 クラスタリングに役立つ情報: * コンパイル日時 * ビットマップの特徴(ファイルのエントロピー) * n-gram上の特徴 * APIコールトレース クラスタリングツールと使用例: * [impfuzzy for Neo4jを利用したマルウエア分析(2017-07-03)](https://www.jpcert.or.jp/magazine/acreport-impfuzzy_neo4j-2.html) (2017/7/3) ### 名前をつける 攻撃者グループ名をつけてみよう! by Akira Miyata(seraph) https://speakerdeck.com/seraph/gong-ji-zhe-gurupuming-wotuketemiyou > AVTOKYO2016での講演資料です。 > 攻撃者に迫るために、どう言った分析を行っているのか、攻撃者グループ名やキャンペーン名を名付けるまでの過程をマルウェア解析等で得た特徴の具体例を交えて紹介します。 > http://ja.avtokyo.org/avtokyo2016/speakers#seraph ### OSINT OSINT = Open Source Inteligence [OSINT 2019 Guide | translation](https://scientia-security.github.io/translation/2019-OSINT-Guide.html) (原文2019/1/5;邦訳2019/10?) OSINTについての全体概要 #### OSINTの活用 [IIJ内製調査システム CHAGE のご紹介 | IIJ Engineers Blog](https://eng-blog.iij.ad.jp/archives/3841)(2019/09/27) ### ドメイン、IPアドレスのトラッキング #### Passive Total https://www.passivetotal.org/ 登録が必要。無料アカウント(Community Edition)でも利用可。 <span style="color: gray">Company Mail Addressはgmail.comでも通る。</span> 機能と分かること: * __OSINT:__ あるドメインから特定ドメインへの参照(ブログエントリーからのreferlal linkとか) * __Resolusions:__ 特定のIPアドレスに紐付いていたドメイン * __WHOIS:__ whois情報 * __Subdomains:__ サブドメイン * タグ検索: * System Tag(e.g. Blacklist)は検索できない? Community Edision のクォーター設定: * Web Searches: 200 ←連続1時間も使えない厳しめの設定 * API Searches: 15 * Public Projects: 1000 * Private Projects: 1 ### URL Reputation / Web Reputation #### VirusTotal 先の説明通り。 Malicious/PhishingなURLはユーザーのコメントを収集すると集められる。マルウェアが降ってくることが多かったのでおすすめ。 #### urlquery https://urlquery.net/ Reputationと言うほどではないが、関連として。デマ情報が多い?公開APIは無い? BASIC認証が必要なはずのURLをcompromised siteと報告する怪しさもある。(もしかしてクラックした?) <!-- #### Site Safety Center (Trend Micro) https://global.sitesafety.trendmicro.com/ トレンドマイクロの見解を得るには役立つが、機能が少ない。URLを入れて「今すぐ確認」すると、「トレンドマイクロによるWebサイトの安全性の評価」と「トレンドマイクロによるWebサイトのカテゴリ」が表示される。 トップページに掲載されているTop Malicous URLsは一部が伏せられててURLを収集するには役に立たない。 --> #### zone-h http://www.zone-h.org ### URL検査/サイト検査 #### urlscan https://urlscan.io/ 機能: * サイトのスクリーンショット * Server Locations(サーバーの地理的位置) * HTTPリクエストの一覧 * Outgoing Ling(発リンク) * ブラウザークッキー * 広告を検査するのに便利? Recent scans(<https://urlscan.io/result/>)を眺めるのも面白い。 [ネタ提供]悪性サイトへの短縮URLに関する調査(n週遅れ) ### ドメイン調査 * [NCC Domain Typo Discovery Tool](https://labs.nccgroup.trust/typofinder/) * (証明書のエラーなんとかしてくれ… * [Domain Name Search - Lexical Analysis](https://dnpedia.com/tlds/search.php) * [DomainBigData.com - Online investigation tools](https://domainbigdata.com/) * [Whois Lookup, Domain Availability & IP Search - DomainTools](https://research.domaintools.com/) #### whois ドメインを誰が持っているのかを確認する。過去に遡って調査するには次節を参照されたし。 [余談]誰も所有していないなら自分たちで買って、飛んでくるトラフィックを見てみるのも面白い。 ### プロキシ系 C2サーバーにアクセスすることは、攻撃者に解析者の存在を教えることになることに留意せよ。 #### aguse(アグス) https://www.aguse.jp/ > あやしいサイトや知らないサイトを訪れる前に、URLを入力するだけでサイト背景情報を調査したり、迷惑メールの送付経路を表示したりすることが出来ます。 機能: * 対象のWebページをスクリーンショット(画像)で見られる * マルウェアの検出情報(カスペルスキーを使用) * whois情報とサーバーの位置情報 * サーバー証明書の内容を表形式で表示 ### トリアージツール データ保全ツール。インシデントハンドラー向けのツール。 [フォレンジックアーティファクト収集ツール / Forensic Artifacts Collecting Tools - Speaker Deck](https://speakerdeck.com/soji256/forensic-artifacts-collecting-tools)(2019/11/4) CDIR Collector, CyLR, Live Response Collection で取得できる情報、生成されたファイルの比較 #### 初動対応用データ保全ツール CDIR Collector https://github.com/CyberDefenseInstitute/CDIR 特徴: * 国産のフリーソフト(国産OSS) * 揮発しやすい(書き換わりやすい)データを素早く保全することを目的とする。そのためディスクのフルコピー機能は提供しない * __専門的なツールと英語に疎い日本人でも簡便に扱える__ ようなツールを提供 * 保全されていることを保証するために、ファイルのハッシュ値も残す 参考: * [初動対応用データ保全ツール「CDIR Collector」解説(前編):セキュリティ事故対応における“オープンソース”活用法指南 (1/3) - @IT](http://www.atmarkit.co.jp/ait/articles/1609/15/news006.html) * [初動対応用データ保全ツール「CDIR Collector」解説(後編):セキュリティ事故対応における“オープンソース”活用法指南(応用・解析編) (1/3) - @IT](http://www.atmarkit.co.jp/ait/articles/1609/30/news005.html) #### KAPE [Zimmerman ToolsのKAPEを試してみた - ごちゃごちゃしたIT勉強記録](https://motojiroxx.hatenablog.com/entry/2019/04/28/125851) (2019/4/29) > デジタルフォレンジックの分野で色々ツールを作ってくださるEric Zimmerman先生が、KAPEという便利ツールを作ってくださったので、どんな感じかを簡単にまとめてみる。 ### メモリフォレンジック #### Volatility TODO: Volatilityとその使い方を紹介し、「周辺領域」にあるVolatilityの項を消す メモリフォレンジックツールは色々あるが、Volatilityが情報が多いのでまずVolatilityから触り始めるといいかもしれない。 [既知のマルウエアをメモリイメージから簡易に検知できるツールを開発 ~impfuzzy for Volatility~(2016-11-01)](https://www.jpcert.or.jp/magazine/acreport-impfuzzy_volatility.html) [Volatility Labs: Announcing the Volatility 3 Public Beta!](https://volatility-labs.blogspot.com/2019/10/announcing-volatility-3-public-beta.html) (2019/10/29) Volatility 3 が出るそうです #### Comae Stardust [Comae Stardustで、ゼロから学ぶメモリフォレンジック - セキュリティごった煮ブログ|ネットエージェント](http://www.netagent.co.jp/study/blog/hard/2017727.html) #### Redline [Redline | FireEye](https://www.fireeye.jp/services/freeware/redline.html) #### Rekall Web Site: http://www.rekall-forensic.com/ GitHub: https://github.com/google/rekall ### DNS偽装 TODO:何を書こうとしたっけ? ### C2通信の観測 感染端末の通信で使っていたドメインのうち、失効したドメインを買って(←そう書いてないけど)通信を観測するテクニック。 過去の実施例: * [Avalancheボットネット解体により明らかになった国内マルウエア感染端末の現状(2017-06-12)](http://www.jpcert.or.jp/magazine/irreport-avalanche.html) * > オペレーションアバランチでは、オペレーションに協力する組織がAvalancheボットネットに関わるドメインを取得して、そのドメイン情報をもとにマルウエア感染端末からの通信を観測しています。 ### パケットのキャプチャー Wirehsark, tcpdumpなどを利用する。 ### 可視化 [イベントログを可視化して不正使用されたアカウントを調査 \~LogonTracer\~(2017-11-28)](https://www.jpcert.or.jp/magazine/acreport-logontracer.html) Active Directoryネタ アンチ解析 ---- ### anti-VM, anti-sandbox * anti-QEMU * e.g. https://github.com/ntddk/blue (だでぃこ先生作) * ### 独自暗号 #### 独自S-Box [Himawariの異常な暗号 または私は如何にして心配するのを止めて暗号を解読するようになったか](https://www.jpcert.or.jp/present/2018/JSAC2018_01_nakatsuru.pdf) (2018/1/25) > https://www.jpcert.or.jp/magazine/acreport-jsac2018report1.html > APT10で使用されたHimawariの暗号化機能について詳細な解説が行われました。Himawariの設定と通信データの暗号化に利用される暗号化アルゴリズムは、FindCryptスクリプトを使ってDESであることが分かるものの標準のDESでは正しく復号できないものになっています。中津留氏の分析の結果、この暗号化方式は標準と異なる「異常なDES」となっており、一般的な値とは異なる値がSBox1, SBox8で使われること、また、処理途中でSubkeyをリセットするため8バイト目以降は入力した暗号鍵が使用されないことが明らかになりました。 ### Server-side Anti-Analysis 解析環境での自動解析を阻止するテクニック。攻撃者のサーバーで解析環境の検知を行いつつ、動的にマルウェアのモジュールを配信する。 [流行マルウェア「EMOTET」の内部構造を紐解く | MBSD Blog](https://www.mbsd.jp/blog/20181225_2.html)(2018/12/25) > ![](https://www.mbsd.jp/blog/img/20181225_2_19.png) > > 解析の結果、EMOTETは以下の動作を持つことがわかりました。 > * 自身が古いEMOTETの場合:最新のEMOTETをダウンロードしてアップデート > * 自身が最新のEMOTETの場合:主な目的となる機能を持った部品(モジュール)をダウンロード > * ダウンロードしたその部品をファイルとして保存せず、メモリ上で利用するファイルレスな仕組みを取り入れている > > これらの特徴は、攻撃者側に以下のようなメリットをもたらします。 > * 目立った不正コードを本体に持たないため、ウイルス対策製品に検知されづらい > * モジュールがファイルとして保存されないため、セキュリティ調査者から解析されづらい > * 主な不正機能を常に最新の内容に置き換えることができる ### Anti Forensics > 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* すること: * セキュリティログの消去 例: * PETYA (2017年) [Anti-forensic and File-less Malware - Malware - 0x00sec - The Home of the Hacker](https://0x00sec.org/t/anti-forensic-and-file-less-malware/10008)(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 解析環境 ---- ### デジタル・フォレンジック、インシデントレスポンス向け * [Tsurugi Linux | Digital Forensics and Osint Linux Distribution](https://tsurugi-linux.org/) * AVTOKYO 2018のバッチに同梱されていたやつ * [CAINE 10.0 - GNU/Linux Live Distribution For Digital Forensics Project, Windows Side Forensics And Incident Response - KitPloit - PenTest & Hacking Tools for your CyberSecurity Kit ☣](https://www.kitploit.com/2018/11/caine-100-gnulinux-live-distribution.html)(2018/11/20) マルウェアデータベースの構築 ---- :::warning __※注意※__:関係法律の解釈次第では単純所持であっても違法になりうるため、運用には細心の注意を払うこと(データベースサーバーが外部にマルウェアを放流しているなんて状況は、リサーチャーとして以ての外) ::: やらかし その1: [ニュース - ウイルス保管容疑でセキュリティ企業ディアイティの社員逮捕、同社は反論:ITpro](http://itpro.nikkeibp.co.jp/atcl/news/17/110102576/) (2017/11/1) > 京都府警サイバー犯罪対策課などは2017年10月31日、ファイル共有ソフト「Share」の利用者から情報を流出させるウイルスを業務用PCに保管したとして、セキュリティ企業ディアイティの社員を不正指令電磁的記録(ウイルス)保管容疑で逮捕した。容疑者は顧客の依頼を受けてShareに情報が流出していないかを監視するサービスの担当者だった。 > 事件に対するプレス > 2017.11.01 > お知らせ:当社社員の不正指令電磁的記録(ウイルス)保管容疑で逮捕された件について > > 当社ではP2Pネットワークの監視サービスを行なっております。 > > この業務の中で、不正プログラムを取得することがあり、取得した不正プログラムは内部のサーバに保管するシステムになっております。 > この度の警察の嫌疑は不正プログラムの保管です。 > > 当社としては、この取得と保管はファイル流出監視サービスを行うという正当な理由に基づくもので、取得・保管したファイルを他人のコンピュータにおいて実行の用に供する目的はありません。 > したがいまして、不正指令電磁的記録(ウイルス)保管では無いと考えておりますが、警察と協力して事実関係を明らかにしてまいります。 > > 株式会社ディアイティ > 代表取締役社長 三橋 薫 > http://www.dit.co.jp/ (魚拓:https://archive.is/BSNde) [ウイルスで情報流出被害…社員逮捕の会社 : 地域 : 読売新聞(YOMIURI ONLINE)](http://www.yomiuri.co.jp/local/kyoto/news/20171115-OYTNT50263.html) (2017/11/16) > 府警の調べでは、同社は専用ソフトなどを使って外部と遮断する措置を取っていなかった。 - - - 収集方法は、大きく分けて3つある。 ### 金で解決する 企業向けの解決策。非常にお高い。 * [VirusTotal Intelligence](https://www.virustotal.com/#/intelligence-overview) ### 誰かに期待する マルウェアは有志により以下のサイトで収集&保管されている。ここでは利用方法の説明は一切せず、紹介に留める。 * Open Malawre: http://www.offensivecomputing.net/, http://openmalware.org/ * [VirusShare](https://virusshare.com) ※招待制 * [malware.lu](https://avcaesar.malware.lu/) * [theZoo](https://github.com/ytisf/theZoo) <!-- [Got a Virus site ? Post it here (Page 1) — Virus eXchange — VX Heaven](http://vxheaven.org/forum/viewtopic.php?id=155) --> ほか: * 「malware dataset」でググる * https://zeltser.com/malware-sample-sources/ * [マルウェア検体を入手する方法について](http://www.japan-secure.com/entry/blog-entry-198.html) #### hashes https://virusshare.com/hashes/ ### 自分で集める #### オンラインサンドボックスの添付ファイルを収集する 手動・半自動でちまちま集めることをいとわない場合は、オンラインサンドボックスの結果に添付されている検体を集めるのも方法の一つである。 特定のファミリーの検体を集めたい場合は、アンチウイルスベンダーのインテリジェンスブログのエントリーの下部に記載されているIOC(Indicator of Compromise)をもとに当該検体を検索エンジンで見つけられるときがある。 #### ハニーポットを使う :::info サーバーが国内にある場合は、平成23年度時点では __過失__ により他者へのマルウェア感染を引き起こした場合は罪(168条の2)に問われないが、最新の動向に注意すること。 ::: おとりのやられサーバーのこと。 TODO:概要(以降はよく知らなくもないが、調べながらまとめることになり時間がかかるので後回し)。個人だけででなく、ハニーポットを運用している企業もある。 [閑話休題]ハニーポットを運用している人は自らを「ハニーポッター」と名乗るため見つけやすい。ハニーポットの略称はハニポ。 実際はサービス運用中のサーバーのログでも攻撃を見れるので、ハニポを立ててない人は気張らずにそれをログ解析してみるといいかもしれない。 ハニーポットの情報源: * 総本山:[The Honeynet Project](https://www.honeynet.org/) * まとめ:[paralax/awesome-honeypots](https://github.com/paralax/awesome-honeypots/blob/master/README.md) * 個人ブログ:[www.morihi-soc.net](http://www.morihi-soc.net/) * 『[サイバー攻撃の足跡を分析するハニーポット観察記録](https://www.amazon.co.jp/gp/product/4798049085/)』(森久和昭・著;2017/1/27) * 『[WOWHoneypotの遊びかた “おもてなし"機能でサイバー攻撃を観察する!](https://www.amazon.co.jp/dp/4844398393)』(森久和昭・著;2018/8/24) ハニーポット運用に必要なもの: * どんな攻撃を集めたいのかという目的 * そもそもハニーポットを立てる必要があるのか? * サービス提供目的で立ててあるApacheにも攻撃が来てるので、まずはそれを解析してみても良いのでは? * ハニーポットによって集められる攻撃の種類が異なる * 攻撃者になった気持ちでShodanやCensysを眺めて、今後きそうなネタを探すのもいいかも(絶対ポート叩くなよ) * 以下ヒント * 筆者注目:ELKスタック(Elastic Search, Logstash, Kibana), S3バケット * 2015か2016年頃から世界的な空前のログ可視化ブームが来ている。セキュリティ設定はあまり言及されていない(ように見える) * 周回遅れ:Wordpress\*, Joomla!\*, Drupal\*, Apache Struts 2\*\*, SCADA\*\*\*, SMB(今からやる人はこの辺がいいかも。成果報告待ってるよ) * \* CMS御三家で、The脆弱性の塊。Wordpressは個人ブログでもよく使われ、Drupalは政府機関も使っているという感じ。攻撃の影響が残るので、Dockerなどの仮想化により破棄&初期化が容易な環境が望ましい * [PR] 筆者の[vuln-wordpress](https://github.com/K-atc/vuln-wordpress)ようにDockerizeするのが1つの方法 * \*\* StrutsはSIerが使いがち。PoCが公開されると攻撃が来るみたい * \*\*\* トレンドマイクロがやってる * n周遅れ:SSH, Telnet(この辺の攻撃情報はみんな集めてるから、発表したところで面白くない) * ありふれているので情報が多く、立てやすい点ではおすすめ * グローバルIPアドレス * VPSやクラウドサービスだとIPアドレスから契約先の事業者とローケーションが分かる * 例)AWSのIPアドレスの範囲:https://docs.aws.amazon.com/ja_jp/general/latest/gr/aws-ip-ranges.html * 1つのグローバルアドレスに公開ポートがたくさんぶら下がっているのは怪しいですよ。数も要検討 * OS * Windows Server + Active Directoryハニポも面白そう * 任意コード実行脆弱性に備えて、セキュリティパッチを必ず当てよう! * 自宅サーバー/VPS/クラウドサーバー * DMZまたはVLAN ※家の中に設置する場合 * ドメイン(※できれば) * 最近失効した有名なドメインが狙い目? * Pastebinなどの不特定多数のアクセスが期待できる情報公開サービス(※あるとよい) * 既存の脆弱性の知識 * 低インタラクティブのハニポでは設置時に必要ない知識かも? * Webアプリ系のハニポでは必須。ログ解析でも大いに役立つ * ログと解析能力 * ハニポを動かす前にログが取れているのかをちゃんと確認 * ログを保存するストレージの空き容量は大丈夫? * 特にEC2インスタンスとラズパイ * クラウドに立てているときはダウンロード容量に注意 * 静的データをS3バケットなどに移動させるなどの対策も考えよう。S3は速度の面でも有利! * フォレンジックの知識の出番か~? IoT機器をターゲットにした攻撃をログするための「IoTPOT」が横浜国立大の情報・物理セキュリティ研究拠点で開発され、論文化している。読んでみたが、試みとして面白い(筆者は、Telnetを想定していることと環境再現方法にさらなる検討の余地があると感じた)。 [IoTPOT: Analysing the Rise of IoT Compromises](https://www.usenix.org/conference/woot15/workshop-program/presentation/pa) (USENIX, WOOT'15) __※注意※__ 利用規約により、ハニーポットなどの脆弱なサーバーをVPS、クラウドサービスで運用することを禁止されている場合があるため、外部サービスでの運用を考えている場合はよく確認し、不明ならば問い合わせること。また、学内のサーバーで運用する場合も、特別な申請が必要な場合があるため識者に相談すること。 * Amazon Web Services (AWS):ハニポOK * [3] 「AWSの適正利用規約及びカスタマーアグリーメントの範囲内における利用であればハニーポットの運用は問題ない。」 * ※許可のないペネトレーションテストは明示的に禁止されているので注意→[侵入テスト - AWS クラウドセキュリティ | AWS](https://aws.amazon.com/jp/security/penetration-testing/) * Microsoft Azure:ハニポOK * [3] 「特定のアプリケーションやサービスに対して個別に許諾や禁止はしていない。 」等。他項目は引用元を参照されたし * Google Cloud Computing * TODO * DigitalOcean:ハニポOK * [Terms of Service Agreement on DigitalOcean](https://www.digitalocean.com/legal/terms/) * 根拠:公式のコミュニティーのチュートリアルにKippoのインストール方法を掲載している(掲載したままにしている) * [How To Install Kippo, an SSH Honeypot, on an Ubuntu Cloud Server | DigitalOcean](https://www.digitalocean.com/community/tutorials/how-to-install-kippo-an-ssh-honeypot-on-an-ubuntu-cloud-server) * 問い合わせ結果(情報Thanks!): * [1] 「セキュアにハニーポットを運用している限りは問題ないけど、十分気をつけろ」(意訳)※原文は引用元に掲載済み * このは(ConoHa):ハニポNG * [ConoHa会員規約](https://www.conoha.jp/agreement/) * [ハニーポットの可否に関する美雲このはのTwitterの発言](https://twitter.com/MikumoConoHa/status/512116623918907392) * > や・・・やめて!くまのプーさんが、寄ってくるじゃないの!!!RT @TwitterID: ConoHaでハニーポットって立ててもいいのかな? * 問い合わせ結果(情報Thanks!): * [1] 「規約違反ではないが、他のお客様に影響する可能性があるので控えてほしい」 * さくらインターネット:ハニポOK * [2] 「利用規約や制限事項には該当しないので問題ない。他のお客様に迷惑がかかる状況(大量のトラフィックが発生する、利用しているサーバが原因で外部の不正サーバのリストに登録される、等)があれば、個別に制限を実施す場合がある。」 * [基本約款](https://www.sakura.ad.jp/agreement/[a]yakkan0_kihon.pdf) あとサーバーを日本国内・国外のどちらに立てるのかという問題がある。法的な問題を起こした場合、サーバーが設置された国の法律にもとづいて判断される。お気をつけいただきたい。 参照: [1] [あなたは、ハニーポットがお好きですか?! // Speaker Deck](https://speakerdeck.com/blackle0pard/anataha-hanipotutogaohao-kidesuka) (2017/8/9) [2] [ハニーポットの運用が規約違反でないか調べてみた](https://blackle0pard.net/v9bnm7/) (2018/8/10) [3] [くろひょうのぶろぐ - ハニーポットの運用が規約違反でないか調べてみた#2](https://blackle0pard.net/wxn7jq/) (2017/10/30, 2017/11/9) #### ハニポ構築参考情報 * [初心者向けハニーポット WOWHoneypot の紹介 // Speaker Deck](https://speakerdeck.com/morihi_soc/chu-xin-zhe-xiang-kehanihotuto-wowhoneypot-falseshao-jie) (2017/11/25) ### ハニポ分析お役立ち情報 https://github.com/nict-csl/exist NICT製攻撃分析フレームワーク。攻撃の分析に便利そう Threat Hunting ---- [Finding drive-by rookies using an automated active observation platform - VB2019-KoikeChubachi.pdf](https://www.virusbulletin.com/uploads/pdf/conference_slides/2019/VB2019-KoikeChubachi.pdf) 資格 ---- [【12/13】SANS GIAC 試験合格の秘訣](https://insight-jp.nttsecurity.com/post/102fvwd/12-13sans-giac) by NTT Security Japan