Splunk BOSS of the SOC ver 2について(User Agent Strings)

[Boss of the SOC (BOTS) Advanced APT Hunting Companion App for Splunk](https://splunkbase.splunk.com/app/4430/)
Hunting an APT with Splunk Workshop
Welcome to the Hunting an APT with Splunk Workshop based on the Boss of the SOC 2017 data set.

こちらを元に、手順を追ってみる。データセットは[ここ](https://github.com/splunk/botsv2)
なお、ログの時間を合わせるためユーザの時間帯を**(GMT -08:00)**にする必要がある。

全１３回

1. [概要とPowerShell Empire](https://qiita.com/toshikawa/items/511af1a3054ab81cd475)
2. [FTP Exfiltration](https://qiita.com/toshikawa/items/ca6483e4c0ef7f3bb9d3)
3. [DNS Exfiltration](https://qiita.com/toshikawa/items/93a57d9ac0e06bab0bde)
4. [Adversary Infrastructure](https://qiita.com/toshikawa/items/75cbfa0b522735bc5228)
5. [Spearphishing Attachment](https://qiita.com/toshikawa/items/b9bc3527c0f9787d6be1)
6. [User Execution](https://qiita.com/toshikawa/items/945e271b05c1ea55ef34/)
7. [Account Persistence](https://qiita.com/toshikawa/items/df27a896ab71bafb512d)
8. [Scheduled Task](https://qiita.com/toshikawa/items/b203eb78c699192cfc6d/)
9. [Indicator Removal](https://qiita.com/toshikawa/items/8e0c730280e051a3ed4e/)
10. [User Agent Strings](https://qiita.com/toshikawa/items/bb0055bf74af461824a9/)
11. [OSINT Gathering](https://qiita.com/toshikawa/items/4cad2830289bc83ca330/edit)
12. [Lateral Movement](https://qiita.com/toshikawa/items/054c8c358c79758dec25/)
13. [Data Staging](https://qiita.com/toshikawa/items/886df42faf744c299985/)

#User Agent Strings
##Reconaissance - Hypothesis
>仮説
ユーザーエージェント文字列は、攻撃者に見せることを意図していないかもしれない敵に対する洞察を提供する
説明
私たちは狩りの間に多くの指標とアーティファクトを収集しましたが、この攻撃につながった手がかりを提供する可能性のある偵察活動を探すのにあまり時間を費やしていません。 攻撃者は、情報を収集するWebサイトなどの外部に面する資産を調査し、標準のブラウザーを使用してこの作業を実行する場合があります。 これらのイベントを分析すれば、おそらく敵についてもう少し推測するか、少なくとも彼らが情報を収集した場所を知ることができます。

####How Might We Confirm or Refute Our Hypothesis?
- ユーザーエージェント文字列を表示するには、どのデータソース（sourcetypes）が必要ですか？
- 特定のユーザーエージェント文字列はいつ見られましたか？
- ユーザーエージェント文字列が表示されるIPアドレスは何ですか？
- ユーザーエージェント文字列のいずれかが異常ですか？ それは、過度に短いまたは長い、または予期しないシステムからのものがありますか？

##Reconnaissance - User Agent Strings
>ユーザーエージェントとコンテンツタイプ

>httpイベントの内部では、user_agentやhttp_content_typeなどのフィールドを使用して、攻撃者が使用しているブラウザーとアクセスされているメディアの詳細をそれぞれ取得できます。

####User Agent Strings
>
482/5000
まず、ストリームから取得したWebデータであるstream：http sourcetypeを検索し、参照されているサイトが企業Webサイトwww.froth.lyであるすべてのWebトラフィックを検索します。 次に、statsコマンドを使用して、http_user_agentでグループ化されたカウント、ユーザーエージェント文字列のフィールド名を生成し、その出力をカウントで最大から最小に並べ替えます。 ああ、狩りに時間範囲を設定しましたか？ はい、開始点として2017年8月をターゲットにしています。

####Research the User Agent Strings
>ユーザーエージェント文字列の調査を始めましょう。 whatismybrowser.comのようなサイトを使用して、ユーザーエージェントを貼り付けると、システムはユーザーエージェントに関する情報を提供します。 または、Splunkでワークフローアクションを作成して、これを自動化することもできます。 最大量のデータは、システムがMac OSX 10でChrome 60に変換するエージェント文字列から取得されました。UA文字列を使用してOSとブラウザのタイプとバージョンを取得する方法を確認できます。 クール！

####And Repeat
>リストをすすいで繰り返すことができ、リストのほとんどすべてがこのリストに到達するまで予想どおりに応答します。 この文字列は、他の文字列と少し異なります。 翻訳を見ると、Fedora Linuxは大した問題ではありませんが、Naenaraという用語は、誰があなたのWebサイトにナビゲートしているかによって、あなたにとって異質かもしれません。 これについてもう少し詳しく見ていきましょう。 Naenara 3のソフトウェアをクリックすると、より大きな特異性を得ることができます。

####Oddities in User Agent String
>Naenaraという名前のソフトウェアを見ると、提供されているユーザーエージェントはすべてLinux上で実行されていることを示していますが、多くのユーザーエージェントがko-KPの値を持っていることに気付くでしょう。 さらに、UAの1つには、明らかに西ヨーロッパ人ではないキャラクターもいます。 あなたがあなたのウェブサイトに来ることを期待する人によっては、これは完全に普通に見えるかもしれませんが、この方法での狩りはいくつかの興味深い異常を発見するかもしれません。 そのため、この時点で、西ヨーロッパ以外の文字、ko-KPのコード、馴染みのないブラウザがあります。 掘り始めましょう。

####Oddities in User Agent String
>UAであまり馴染みのない値を検索すると、ko-KPが北朝鮮のブラウザ言語コードであり、NaenaraBrowserを検索すると、北朝鮮のWebブラウザであることがわかります。

####Drill Down Into User Agent String
>そのコンテキストを念頭に置いて、Splunkに戻り、このユーザーエージェントに関連付けられたイベントを検索できます。 stream：http以外にも他のデータがあります。これは法案に合うかもしれませんが、今のところは、企業サイトwww.froth.lyに行くWebイベントを見てみましょう。

##Reconaissance - Targeting
>ユーザーエージェントをさらに活用する

>疑わしいユーザーエージェントができたので、ソースと宛先のペアを識別して、インフラストラクチャの他の部分がターゲットにされているかどうかを判断できます。

####What Systems Did This User Agent Touch Directly?
>不審なユーザーエージェントを特定したので、statsコマンドを使用して、この文字列を参照しているソースと宛先のペアを検索できます。 Frothlyの2つのシステムをターゲットとするこのユーザーエージェント文字列を使用する3つの外部IPがあります。

>Frothlyにはシステムをターゲットとする2つのIPが追加されているため、追加のハントの送信元と宛先の両方にフラグを立てることができます。

####Asset Center
>資産をコンテキスト化するため、Enterprise Securityにピボットして資産センターを表示できます。 前に説明したように、資産データのルックアップがあれば、それも機能します。 172.31.4.249はgacruxという名前のサーバーであり、brewertalkシステムとmysqlおよびwebを実行しているように見えることがわかります。 これらの通信パスを調べ始めると、これは良いコンテキストです。

>残念ながら、他の宛先がAsset Centerにあるようには見えませんが、トラフィックに基づいて、これが当社のWebサイトであると推測できます。 理想的には、今後の参考のためにこの情報をAsset Centerにキャプチャします。

####No Additional Activity In Splunk
>このソース/デスティネーションペアがどちらの方向に進むかについての情報はもうないので、終わりに達しているようです。 次のステップは、外部IPアドレスに関連付けられたOSINTがあるかどうかを確認することです。

##Reconaissance - OSINT
>調査結果へのオープンソースインテリジェンスの適用

>イベントで疑わしいIPアドレスを特定しましたが、それらのアドレスについて詳しく知るために、イベントを超えて移動し、他のデータソースを使用して、IPアドレスの所有者、発信元、およびIPアドレスが属するより大きなアドレスブロックをよりよく理解する必要があります。

####OSINT for IP Addresses
>IPアドレスでwhoisを実行すると、次の情報が取得されます。 連絡先名などの通常の詳細に加えて、whoisにはASNが含まれますが、IPブロックの連絡先名やその他の関連情報などの重要な情報も含まれます。 この情報はすべて嘘である可能性があります（そして、Poison IvyでBOTSまたはSplunkを使用したInvestigatingワークショップに参加した場合、これを見たことがあるでしょう） 同じ個人によるインフラストラクチャ。

>確認できるもう1つの情報は、このIPアドレスのwhoisサーバーがripe.netによってホストされていることです。 RIPEはIPアドレスを配布するための欧州調整センターであり、おそらくオランダのアドレスを持っているが、IP、ASN、連絡先は香港に拠点を置いている人と仕事をしている理由を説明しています。

>ASN（自律システム番号）に慣れていない場合のために、ここに非常に簡単な入門書があります。

####Determining the ASN
- ASNは自律システム番号の略で、各ISPにはネットワークとその所有権を識別する方法を提供する1つ以上のASNがあります
 - ASNを特定することは帰属表示に役立ちます（ただし、それを当てにしないでください）
 - ネットワークに着信するトラフィックをフィルタリングする方法としても機能します

>世界の特定の地域でビジネスを行わない場合、なぜそれらのネットワークやIPがシステムと通信する必要があるのでしょうか？

####RIPE.WHOIS.NET
>最初の検索では、IPが存在する大きなネットブロックと、VPN-Servicesと呼ばれる小さなクラスCネットワークを取得します。 大きなネットブロックのASNは表示できますが、小さなネットブロックのASNは表示されません。 さらに見てみましょう。

####More RIPE Info
>さらにスクロールすると、このIPアドレスが含まれているクラスCネットワークのより洗練された情報を見ることができます。ASNは複数のネットワークに割り当てられているため、より大きなネットワーク内にASNがあることは驚くことではありません。 ASN 133752は、このネットワークがルーティングされて通過を提供したASNであることがわかります。

####Final Confirmation
>Cymruは、インターネットをマッピングし、IPアドレスをASNに関連付ける膨大な量の作業を行ってきました。 彼らのOSINTツールは、IPアドレスがASN 133752に関連付けられていることをRIPEとDomainToolsが伝えていることを確認します。

####ExpressVPN
>RIPE出力では、ExpressVPNという用語を見ました。 簡単なGoogle検索を行うと、ExpressVPNがソリューションであることがわかります。 それは他の場所の中で香港で存在感を持っています。 敵は、偵察を隠すためにサードパーティのvpnサービスを活用しているようです。

##Reconaissance - Findings
####Were We Able To Confirm Our Hypothesis?
- Frothlyが経験した攻撃の前に偵察が行われた
- ユーザーエージェント文字列は、この攻撃の背後にいる可能性のある人に関する手がかりを提供しました
- 使用されたインフラストラクチャも特定されました

####What We Learned
- - 北朝鮮起源のユーザーエージェント文字列がfroth.lyにアクセスしました
 - Mozilla / 5.0（X11; U; Linux i686; ko-KP; rv：19.1br）Gecko / 20130508 Fedora / 1.9.1-2.5.rs3.0 NaenaraBrowser / 3.5b4
 - これは帰属を確立しません!!!
- ブラウザの元のIPアドレスは85.203.47.86でした
- ASNはこのIPアドレスを所有する133752です
- 訪問者は香港のExpressVPNを使用してfroth.lyに接続しました
- 2つの追加IPアドレス、136.0.0.125および136.0.2.138は、www.brewertalk.comに接続するこの同じユーザーエージェント文字列を使用しました

####What should we operationalize?
>各ハントの終わりに、私たちは何を取り、インシデント対応チームにフィードバックできるかについて考えたいと思います。 これは、ボックスを引っ張ってフォレンジックアクティビティを実行するなどの追加アクティビティであるか、インジケータを取得してSIEMまたはログ管理システムにフィードするか、発見したことに基づいて新しい分析とアラートを構築することができます。 一日の終わりには、先ほど言ったように、狩りから何かを学ぶ必要があります！

- 後続のユーザーエージェント文字列アクティビティを監視する
 - これは、米国のWebサイトで見つかるランダムなユーザーエージェント文字列です。
-  世界の特定の地域でこの文字列を監視すると、誤検知が発生する可能性があります
 - これは敵による粗雑なトレードクラフトである可能性がありますが、常に発生することを期待しないでください
 - いくつかの興味深いインテリジェンスが得られる
- IPアドレス/ネットブロックの監視
 - 攻撃者がIPを簡単に変更できるため、有効性が低い
 - より広いネットブロックをブロックすることはより良い戦略かもしれません
- 特定のASNからのトラフィックを監視する
 - これは、単一のネットブロックを超える広範なトラフィックセットをカバーします。
 - 組織が協力していない世界の国境またはISPの部分でフィルタリングする

##まとめ
AS番号からVPNを特定できるのね。