
■はじめに
Tanium Atlasについて、どんな使い方ができるか。
という活用案を考える記事になります。
参考までにご覧ください。
※あくまで弊社の環境で検証した際の結果ですので、実際の仕様とは異なる場合がございます。
その点ご留意いただけますと幸いです。
また、動作の内容がプロンプトの内容に大きく左右される機能の特性上、再現性やその結果生じたトラブルにおいては弊社やTanium社では責任を負いかねますことご留意ください。
Atlas関連の過去の記事になります。
ご参考までにどうぞ。
【Tanium】【AI】Tanium Atlasとは。Taniumを進化させるAI新機能。
【Tanium】【AI】【Tanium Atlas】活用のススメ①
=======================
もくじ
■Atlasにファイルのアップロードできないかなぁ
■やってみよう。
■その他判明したこと
■最後に
=======================
■ファイルのアップロードできないかなぁ
最近のセキュリティトピックでいうと、間違いなくフロンティアAIの話題が目立ちますよね。
こういうとき、Atlasに脆弱性対応をお願いするとパパっと対応してくれるのですが。。。
例えばどんな方法で悪用される脆弱性かわかってるのにパッチはない。
もっというとCVEが採番されてない。
みたいなものもありますよね。
もっといえばそんな脆弱性を集めたリストをAtlasにアップロード出来たら、
脆弱性がスッと来たときに、グゥーッとリストしてAtlasにガッとする。
あとはバァッと対応してくれたら便利だとは思いませんか?
私はそう思います。
そういうわけで今回は、Atlasにファイルを読んでもらおうという試みです。
※Tanium上と外部サービスとの情報連携は、他のモジュールを介したほうが簡単にできるものもたくさんあります。
今回の検証については、あくまでAtlasでの実装に限定した条件である。という点はご留意ください。
もともと多くの機能を保有するTaniumですので、AIに踊らされてしまうことのなきように...。
■やってみよう
ではどう実装するか。
という問題です。
過去の記事を読んでいただいていればわかるように、Atlasは現仕様ではAtlasへのファイルのアップロードとダウンロードに対応していません。
直接のやり取りはできない!
APIが開発されたら状況は変わりますが、今はまだできない...。
しかし、Taniumという製品はTaniumクライアントを使うことで端末の至る所を見て対応できる、業界最高水準の目と手を持つ製品です。
それなら「クライアントを経由すればいいのでは?」
ということで試みてみました。
あと、検証する中で気づいたのですが
Atlas関連でパッケージなど副産物が自動生成されるわけですが、それらをデフォルトのものと見分ける。もしくはソートしやすくするために、あらかじめ命名規則を渡してあげるとよいと思います。
まずはAtlasがどのようなファイルを読めるのか聞いてみます。
聞いてみました。
もちろん誤答という可能性もありますが、一旦は問題なさそう。
但し、最後の塩対応は少し傷つきました。![]()
次はAtlasさんとのやり取り用のフォルダを認識してもらおう。です。
結論から言いますと、これをやるためにはAssetのIndexスキャンが有用でした。
それが無くてもスクリプトなどを作りこめばできる可能性はありますが、Atlasさんが提案してきた最適解で進んでみます。
驚くほど見にくいですが、こんなフォルダ構成です。
Atlasさんから見にくいように、![]()
正直ここからが長かったです。
(難しくてという意味ではなく、Atlasさんがファイルを読み込むためのパッケージの作成処理がかなり長くなりました。)
要するに、準備したフォルダ名やファイルの中身に日本語が含まれているため、処理の中の文字列の認識やペイロードが複数回必要になり
Atlasがフォルダ名とファイル名とファイルの内容を取得するのにかなりの手間をかけさせてしまった。という事です。
その上、「Atlasさんに渡す用のフォルダ」の"ダ"も濁点の処理で右往左往させてしまいました。
日本人が使うことを考えたら日本語で読み込んでほしいのですが、まぁ仕方ないですよね。
というかむしろ「こういう時2byte文字を使うのはエンジニアとしてセンス無い。」と言われても仕方がないと思ってます。
また、HTMLでのやり取りもサイズが肥大化して失敗しやすいです。
ということで結論はtxtやcsvに落ち着きました。
その結果が以下になります。![]()
ローカル環境のファイルの読み込みは問題なくできてしまいました。
それなら次はファイルを生成してもらおう。
次に、ファイルの生成(ダウンロードの代替)です。
生成するにしても何かしら目標が欲しいところですね。
「そうだ、検証記録としてAtlasさんとの会話のログを残してもらおう。手動だと忘れちゃうから毎日定時に差分だけ拾ってくれたらいいな」
これが可能なら、実運用時の証跡を外部へエクスポートすることも可能ですね。
サイズが肥大化すると困るのでcsvで。
最終的にこんな設定になりました。![]()
Taniumならほかにもっといいやり方がありそう。ではありますが、
とりあえず検証の目的であったAtlasとのファイルのやり取りは成功です。
厳密にいえばファイルタイプごとにかなり振れ幅がありそうですが、単純な文字列のやりとりならば可能性がありますね。
■その他判明したこと
・時間ごとのトークンの使用量に上限がある。
→当たり前ですが、ガードレールはあるようです。リソースが無限に消費されたりユーザーのクレジット?を無限に消費される恐れもあるからでしょう。
・ユーザーのチャットの内容は、別のチャットで読み込んだり、指示を共有することができる。
→簡単に言えば「この設定を他のチャットやエージェントにも反映して」と言えばできます。
※あくまで弊社の環境で検証した際の結果ですので、実際の仕様とは異なる場合がございます。
その点ご留意いただけますと幸いです。
■最後に
お付き合いいただきありがとうございました!
※本ブログの内容は投稿時点での情報となります。今後アップデートが重なるにつれ
正確性、最新性、完全性は保証できませんのでご了承ください。
他のオススメ記事はこちら
著者紹介
SB C&S株式会社
技術本部 技術統括部 第4技術部 1課
宮澤 建人
