SB C&Sの最新技術情報 発信サイト

C&S ENGINEER VOICE

SB C&S

【Tanium】初めてのDiscoverモジュール解説!【入門】

セキュリティ
2025.02.18

■はじめに

本記事ではTaniumのDiscoverモジュールの機能をご紹介します。
本記事でご紹介するのは概要となりますので、詳細についてより深く理解したいなどのご要望がございましたら以下公式ドキュメントにてご確認ください。

-Discover-

=============================
もくじ

・はじめに
・機能の概要/仕様
・使用手順
・試してみた
・最後に


=============================


■機能の概要/仕様

Discoverモジュールを使用するとNW内でスキャンが実行され、管理エンドポイントと非管理エンドポイントのインターフェイス(MACアドレス単位)が可視化されTaniumの管理コンソールで可視化されます。
マニュアルによると、Trendモジュールでインターフェースの健全性を確認する際にこちらのデータを引用することConnectを使用してSIEMなど外部連携や通知(例:Eメールでインターフェースの状態変化を通知)が可能とのことです。
セキュリティ的にもTanium Clientが相互監視する状態になるので、片方が攻撃により無効化された際も気付く事が可能になりますね。

ここでいう管理/非管理とは
・管理エンドポイント = Tanium Clientが実行されている
・非管理エンドポイント = Tanium Clientが実行されていない
といった意味です。

また、スキャンには2種類あり以下のような違いがあります。


>分散スキャン

レベル別で決められた方法(ARP/NDP/Ping/nmap/OSFP)によりNW内のインターフェースを検出します。
クラウド側から直接アクセスできる環境であればこちらのスキャンがベーシックなものになるかと。
ただ、レジリエンスの観点で言えば一部分だけしっかり管理していても、可視化されていない孤立したNWなどが存在するとそこがセキュリティホールとなります。
スキャンに関しては必要に応じてサテライトスキャンと組み合わせてしっかりと全体を網羅することが推奨されます。

000.png


>サテライトスキャン(もしくは集中スキャン)

Tanium Clientがインストールされたエンドポイントをサテライト(衛星)エンドポイントとして指定し、メイン ネットワークへのブリッジ接続のみを持つサブネットなど、Taniumクラウドから直接アクセスができない環境をスキャンしインターフェースを検出します。


1.png


実際にスキャンが行われた後の画面がこちら(分散スキャンのみ)


module > Discover > Overview

画像3.png


Unmanageableが...と少し気になります。
インターフェースの画面で調べてみます。

module > Discover > Interface

画像6.png

目視するには少し情報量が多いので、画面を切り替えてみましょう。
上部のタブからUnmanageableをクリックすると...

Videotogif.gif



簡単に特定できました。
どうやらESXiのインターフェースのようです。確かにサポート外のOSですね。

FireShot Capture 012 - Interfaces - Discover - Tanium - [sbcas-tec.cloud.tanium.com].png

利用イメージでした。


■使用手順


Discoverの使用前に、準備としてまず要件を確認しましょう。

OS要件などに関してもクライアントとは異なる部分があるので、事前に詳細を確認しましょう。
また、利用できる分散スキャンのレベルもOSによって異なる部分がありますので要チェックです。
サポートされているオペレーティングシステム
(Windows 11 Armって現状サテライトに使えないのか...fmfm)

Tanium Clientからスキャンが行われる際に利用される、エンドポイントの各ポートやプロトコルです。
ポートと宛先をスキャンする

検証環境でクライアント自体が誤検知の対象となることは無かったのですが、形としてはポートスキャンを行うような機能でもあるのであらかじめしっかりと例外に登録しておくことで安全にご利用できます。
セキュリティ除外
※スキャンされる側のNWのエンドポイントでは、セキュリティ製品によってポートスキャンの検知が生成されることがありますので、その場合は該当検知のアラートを非表示にするか、検出をTaniumClientと特定できる範囲に絞っての例外設定をお勧めします。

ユーザーによって実行できるオペレーションも異なりますので事前に確認しましょう。
ユーザーロールの要件

では、実際にスキャンの設定/実行およびスキャン後の見え方を確認してみましょう!


>分散スキャン

メーカーマニュアル(公式Webマニュアル:分散スキャンの実行)を読みながら以下の流れで分散スキャンの利用を進めていきます。

①スキャンのプロファイルの作成
②スキャンの実行(スケジュール)
③スキャン結果の確認

では...、



①スキャンのプロファイルの作成

Discoverではプロファイルベースでスキャンが実行されます。
スキャンのプロファイルの中に、スキャンのレベル対象インターフェース対象NWの指定などの設定またはDiscoverで使用するNpcapのバージョン保守設定等もこちらで行えます。

Module > Discover > Profiles Create Profiles

画像8.png

画像12.png
画像13.png


②スキャンの実行(スケジュール)

プロファイルで設定したスケジュールで自動実行されます。


③スキャン結果の確認

スキャン対象とした環境の情報がインポートされているか、Overviewやインターフェース画面から適宜確認してみましょう。

画像14.png


分散スキャンの設定については以上となります。



>サテライトスキャン

次にメーカーマニュアル(公式Webマニュアル:サテライトスキャンの実行)を読みながら以下の流れでサテライトスキャンの利用を進めていきます。

①サテライトエンドポイントの設定(Direct Connect)
②スキャンのプロファイルの作成
③スキャンの実行(スケジュール)
④スキャン結果の確認

サテライトスキャンの場合は、サテライトエンドポイントを準備(設定)する必要があるのが分散スキャンとの最初の大きな違いです。
遠方などに配置する斥候のような感じですね。
Windows、macOS、または Linux のみサテライトに指定可能です。

ではサテライトの準備から始めます。






①サテライトエンドポイントの設定(Direct Connect)


サテライトの設定は、共通サービス > 直接接続(Direct Connect) から実施します。

画像15.png

遷移先の画面で最下部にスクロールします。

画像16.png

Satelites 項目には、登録されたサテライトエンドポイントが表示されています。
今回は新規に登録するので、右側にある Create Satelites をクリックします。

画像17.png

Designate Endpoints でサテライトにするTanium Clientインストール済みデバイスのIPを入力します。

画像18.png

IPを入力すると、該当する端末が下部のリストに表示されます。

画像19.png

リストに表示された端末の右端にある Create Satelite をクリックすると、Pending Verification に変わります。
要するに、この段階ではまだサテライトにする端末にマークした。くらいの状態です。

画像20.png

(一旦寄り道)
IPを入力せずに、画面右の Filter Builder タブをクリックすると、複数の端末を同時に表示するのに便利なビルダー表示に切り替わります。
サテライト化したい端末が複数ある場合は、事前にタグを追加するなどしていればそれを利用して一括で抽出できますね。

画像21.png

画像22.png

(戻ります)
Pending Verification になったことを確認したら、Continue をクリックして進みます。

画像23.png

画面が遷移すると、Verify Satelites 画面になります。
誤った端末をサテライト化することの無いように検証する画面です。

画面にはスクリプトの実行コマンドが表示されていますが、ひとまず下へスクロールしてみましょう。

画像24.png

画面下部に行くと、先ほどPending Verification にした端末と、Unique Identifier という空欄が見えてきます。
ここに、「サテライトにしたいエンドポイント端末で、先ほどのスクリプトを実行して検証のためのキーを取得する」ということですね。
これにより指定している端末が間違いないよ。という確認を行えます。

画像25.png

実行分をコピペして、サテライト化する端末上で実行してみます。
画像26.png
画像27.png

画像28.png

(また寄り道です)
仮に対象のエンドポイントにログインすることが難しい。という場合でも心配ありません。

下部の Visually verify satellites instead. のチェックボックスにチェックすると...。

スクリーンショット 2025-02-17 14.49.54.png

自動でキーが入ります。
この状態で検証を完了できます。
※誤ったエンドポイントが指定されてしまった場合、その端末に機密となる情報が送信されるなどセキュリティリスクが生じる可能性があります。
 特段の理由がない限りは、しっかりと該当端末上でも確認ができる手順を踏みましょう。

スクリーンショット 2025-02-17 14.50.08.png

(戻ります)
検証キーを入力したら、画面最下部の Save をクリックして検証を完了させましょう。

画像29.png

問題なく検証できていれば、遷移先画面のSatellitesの一覧に対象のデバイスが追加されているはずです。

画像30.png

以上がサテライトエンドポイントの追加手順です。


②スキャンのプロファイルの作成

以下の二つについては内容が重複するため、適宜ご確認いただけますと幸いです。
③スキャンの実行(スケジュール)
④スキャン結果の確認


ここまでが、スキャンを行うまでの手順でした。

次の項目では、機能の慣らし運転として少し気になってる部分を確認してみます。


■試してみた

複数のNWアダプター搭載の端末からはちゃんと複数のセグメントスキャンができるのか?
という疑問が同僚より寄せられたので、忙しい彼に代わり確認してみます。

↓のようなイメージです。

3.png

やってみましょう!


このような形でデバイスを準備いたしまして..とりあえず分散スキャンで様子を見ます。

>分散スキャン


クライアントインストールされた管理エンドポイントに関しては、別セグメントNWに面したインターフェース情報をレポートしましたが、やはりこの状態では対向のNWに属するインターフェースは検出できません。
プロファイル内で明示的にNWを指定したりも試しましたが、検出は出来ませんでした。

 ↓末尾112の別NWは検出されていません↓
スクリーンショット 2025-02-17 18.19.01.png

>サテライトスキャン

つづいて、サテライトスキャンで別NWをスキャンするという試みです。
マニュアルを確認した限りではこの検証ではこちらが本命かと思われます。

Profileの作成画面のProfile Typeでサテライトを選択し、本記事で登録したサテライトエンドポイントを指定します。。

スクリーンショット 2025-02-17 20.27.09.png

Included Networksで、スキャンしたいNWを指定します。
今回の対象は111.111.111.x/24のNWですので、それを含んだリストを選んでいます。
※リストの作成は「+」アイコンから実施可能です。
できるだけすぐ確認できるように直近の時間にスキャンが行われるようにスケジュールを設定します。

スクリーンショット 2025-02-17 20.28.03 (1).png

問題なく作成できたようです。

スクリーンショット 2025-02-17 20.28.30.png

時間をおいて確認してみると...

サテライトエンドポイントの対向にあるIP末尾112をしっかりと検出できています。
ちなみにIP末尾111は分散スキャンを試してみたエンドポイントで、今回サテライトにしたのはIP末尾113です。

スクリーンショット 2025-02-17 20.49.14.png


というわけで、

複数のNWアダプター搭載の端末からはちゃんと複数のセグメントスキャンができるのか?

という疑問については

アダプタごとの対向NWの環境に適したスキャンを利用すれば可能。

という事になりました。
分散スキャンだけだとレベルを上げても難しいですね。



■最後に

今回ご紹介した機能以外にも、Labelの付与やそれを活かした運用であったり端末の位置を定義するLocation等の機能もございます。
本来であればそれらについてもご紹介したかったのですが、尺の都合により一旦本記事ではここまでとさせていただきます。

ご一読いただき、ありがとうございました。


※本ブログの内容は投稿時点での情報となります。今後アップデートが重なるにつれ
 正確性、最新性、完全性は保証できませんのでご了承ください。

他のオススメ記事はこちら

著者紹介

SB C&S株式会社
技術統括部 第2技術部 2課
宮澤 建人