あゝ素晴らしきHunting Life

Threat Hunting・マルウェア解析・フォレンジック・CTFなどを発信予定

IoTSecJPで話したこと〜その1

今回の話は先日行われたIoTJPSecで話した内容です。

0からIoTセキュリティをどう勉強したかを当日は話ました。

 

iotsecjp.connpass.com

 

 

話した内容

Google検索

・実際にやってみた←改めて記事にします。

 

Google検索

はじめにGoogle検索のテクを紹介します。

下記ワードはIoTセキュリティに関わらず、初めて勉強する分野を調べるときに役に立つと思います。あと基本的にすべて英語で調べます。(Google翻訳は友達!)

 

101

これは基礎を表すネットスラングです。

検索すると図のような感じで結果が出てきます。

f:id:momomomopas93:20180916224519p:plain

 

 

 How to ~

方法が知りたい時の使います。

ここではペネトレーションの方法などを調べる時に活用しました。

  

How to ~ works

仕組みを知りたい場合は、これと画像検索を組み合わせて使います。

初めて知るものは文字だけではなかなか理解できません。(俺が頭悪いだけ?)

なので、画像検索も使いイメージできるようにします。

 

例 IoTプロトコル

How to Zigbee works

f:id:momomomopas93:20180916224731p:plain

 

Github

Githubでは「awesome ~」で検索します。~は調べたいキーワードを入力

awesomeネットスラングでイケてる・かっこいいなどの意味があり、

これで検索するとサイトをまとめたものがでてきます。

 

f:id:momomomopas93:20180916224639p:plain

おすすめサイト

Web系

www.hacksplaining.com

ハードウェア系

https://www.owasp.org/images/2/2d/Iot_testing_methodology.JPG

 

www.ipa.go.jp

Slides for "Hardsploit: A Metasploit-like tool for hardware hacking"

協議会・研究会公開資料 CCDS

www.cse.wustl.edu

/dev/ttyS0 – Embedded Device Hacking

https://www.defcon.org/images/defcon-12/dc-12-presentations/Fullam/dc-12-fullam.pdf

hardwarehacking.com

www.juliahgrace.com

hardware hacking | Hackaday

 

youtube

記事だけではなかなかイメージしずらかったりするので、動画サイトでもいいものがないか調べます。

おすすめ動画紹介

ペネトレーション全般

www.youtube.com

www.youtube.com

www.youtube.com

www.youtube.com

www.youtube.com

www.youtube.com

ハードウェア系

www.youtube.com

バイナリ系

 

www.youtube.com

www.youtube.com

脆弱性情報系について備忘録

脆弱性情報データベース一覧

Vulnerability Notes Database

CERTが管理している脆弱性情報データベース

www.kb.cert.org

 

National Vulnerability Database

NISTが管理している脆弱性情報データベース

nvd.nist.gov

 

Common Vulnerabilities and Exposures

MITRE社が管理している脆弱性情報データベース

cve.mitre.org

 

securitytracker

母体はよくわかんないけどみっけた

https://securitytracker.com/

Japan Vulnerability Notes

JPCERT/CC情報処理推進機構IPA)が共同で管理している脆弱性情報データベースhttps://jvn.jp/

 

脆弱性情報関連サイト

vulmon

脆弱性情報検索サイト

vulmon.com

 

saucs

脆弱性情報管理サイト(無料)

Saucs

 

 

続Threat Hunting

フレームワーク

Threat Huntingで使用するフレームワークは、主に下記の4つがあります。

  1. The Hunting Loop
  2. The Hunting Maturity Model
  3. Cyber​​ KillChain
  4. Endgame Hunt Cycle

今回はThe Hunting Loopを紹介します。

 1.The Hunting Loop

Sqrrl社が作成したThreat Huntingを効率的に行うためのフレームワーク

f:id:momomomopas93:20180831201101p:plain

引用:A Framework for Cyber Threat Hunting より

  • Hypothesis Generation

Threat Huntingは仮説を立てるところからスタートします。

例:マルウェアC2を示す可能性があるHTTPビーコンがあるのではないか?

  • Tool and Technique Enabled Investigation

リンクされたデータ解析や視覚化などのさまざまなツールや手法を使って仮説を調べます。

例:HTTPプロキシログを視覚化してHTTPビーコンがあるか調査する。

  • Pattern and TTP Discovery

新しい悪意のある行動パターンや敵対的なTTPを明らかにする。

例:同じソースIPによる同じリソースへのリクエスト間のリクエスト内のリクエスト時間を調べ、結果を視覚化することで、通常のアクティビティのパターンを探す。

  • Analytics

脅威を発見するためのテクニックを見つけたら、アナリティクスを使用して自動化し、チームが次の新しい狩猟に引き続き集中できるようにします。

参考

Detecting malware beacons using Splunk | geekery

 

 

ひと狩り行こうぜ!Threat Hunting

アジェンダ

・What is Threat Hunting?

・How to do?

    ・基礎編

    ・実施編

 

What is Threat Hunting?

・Threat Huntingとは

    すでに企業の内で攻撃活動が行われているという仮定の下、企業のIT環境にある脅威を探し対処するというもの。個人的にThreat Huntingは能動的なSOCとCSIRTを足した様なイメージ。

 

How to do?

基礎編

- 必要な知識はざっと7つあります。

  1. 己を知る
  2. 相手を知る
  3. マルウェア解析
  4. フォレンジック
  5. ログ解析
  6. パケット解析
  7. ペネトレーションテスト
1. 己を知る

兵法を書いた孫武の有名な言葉の「彼を知り己を知れば百戦殆からず」がありますね。これはセキュリティにも当てはまります。Threat Huntingではまず自分の環境を知ることから始めます。

例:下記のような情報を収集します

    ・自社のネットワーク構成はどうなっているのか?

    ・サーバやエンドポイントはどういったOSで、どのバージョンなのか?

 ・どんなソフトウェアがあり、それはどのバージョンなのか?

    ・どういった資産があるのか?

 

2. 相手を知る

 例えば野球ではピッチャーの配球だったり、ゲームのFPSだったら相手の立ち回りなどを知ることは勝利を左右する重要なポイントです。このことはセキュリティにも当てはめることができます。

セキュリティ場合相手を知るのに必要な情報は下記のようなものがあります。

 

1.ATT&CK

https://attack.mitre.org/wiki/Main_Page

敵対者のライフサイクルの様々なフェーズや目標とするプラットフォームを反映した、サイバー敵対行動のための知識ベースとモデル化したものです。 具体例にはネットワーク内で操作しながらアクセスし、目標を実行するために使用する戦術、技術、手順(TTP)を詳述したもので、各OSごとにまとめられています。

 

2.セキュリティベンダーのホワイトペーパーなど

各ベンダーが出しているホワイトペーパーやブログなどで、紹介している最新動向を知ることを重要!

 3.マルウェア解析

マルウェア解析は追々解説しますがオススメサイトは下記のサイトです。

malwareunicorn.org - Reverse Engineering

4.フォレンジック

フォレンジックも追々解説しますが、オススメは下記動画です。

www.youtube.com

5.ログ解析

オススメ記事

Web攻撃のログ解析

https://resources.infosecinstitute.com/log-analysis-web-attacks-beginners-guide/

Snortログ分析

https://resources.infosecinstitute.com/snort-logs/

Modセキュリティログ

https://resources.infosecinstitute.com/analyzing-mod-security-logs/

 

6.パケット解析

オススメ記事

大きなキャプチャファイルの分析第1回 - Wiresharkでの会話の色付け

https://chrissanders.org/2018/05/large-captures1-colorizing-wireshark/

 

7.ペネトレーションテスト

ペネトレーションテストは実践あるのみ。下記サイトはロシアのペネトレーションラボサイトです。各自の責任でやってみてください。

https://lab.pentestit.ru/

 

実践編
Threat Huntingは下記のステップで実施するのが一般的です。

  1. 仮説を立てる
  2. 情報を収集する
  3. 情報を整理・分析する

・参考になる記事
- Foundstoneがまとめガイド(https://github.com/Foundstone/ExpertInvestigationGuides/tree/master/ThreatHunting)
- ThreatHuntingProjectがまとめたコレクション集[(https://github.com/ThreatHuntingProject/ThreatHunting)


例:ファイルレスマルウェア
1.仮説を立てる

・ファイルレスマルウェアに感染しているのではないか?

2.情報を収集する

・ファイルレスマルウェアを探すにはPowerShellのパワーシェルのプロセス
ネットワークログと、データベースログ、サーバーログまたはWindowsイベントログにあるエンドポイントデータを確認することで得られるネットワーク情報が必要になります。また、特定の環境でPowerShellの使用状況を把握するために、プロセス名、コマンドラインファイル、DNSクエリ、宛先IPアドレス、デジタル署名などのデータを収集します。

3.情報を整理・分析する

・各ログはSEIMなどで分析したり、エンドポイントはEDRなどを使用して分析します。

 

次回

ツール。環境構築、フレームワークの3つをご紹介予定