【Catoクラウド】新機能「自然言語によるイベント検索」レビュー:ユーザー目線で検証してみた

こんにちは、Catoクラウド担当SEの中川です。

これからCatoクラウドが新たに導入予定の「自然言語検索によるイベントフィルタリング」機能を、先行して使ってみました。
自然言語検索(EA)によるイベントのフィルタリング

この機能は、複雑なクエリやコマンドを使わずに、日常の言葉でイベントデータを検索できるというものです。

これまでの検索方法は、自分で適切なフィルタを決める必要がありました。
用意されているフィルタの数は膨大で、いったいどれを指定すればよいのか、一度は迷ったことがあるのではないでしょうか。

新機能では、検索バーに自然言語でクエリを入力すると、AIエンジンがそのクエリをフィルタに変換し、関連するイベントデータを表示します。

なお、今回利用した段階では日本語未対応でしたが、今後の機能追加が予定されています。
今回の利用では、ユーザが実際に入力しそうな日本語をDeepLで英語翻訳した結果を、そのままコピペして試しています。

それでは、この新機能の使い方や実際に試してみた結果について詳しく紹介していきます。

使い方

使い方は簡単で、フィルタを入力する欄の右端🔍虫眼鏡アイコンをクリックすると、文字が入力できるようになります。

ここで表示したいログを指示します。

試してみる

それでは、実際に試してみます。

Cato社紹介のユースケースから

まずはCato社の新機能紹介ページで説明されているユースケースの通りに入力してみて、想定通り動作するか見てみます。
今回は2パターン見てみました。

ゲームカテゴリの URL からのインターネットファイアウォールのセキュリティイベントを表示する
「Show me Internet Firewall security events from game category URLs」

【フィルタ結果】
Event Type:Security
Sub Type:Internet Firewall
Category:Games
続いて2つめ。
アプリケーションの脆弱性と脅威に関連する最近のセキュリティインシデントとアラートを表示する
「Show recent security incidents alerts related to anti-malware」

【フィルタ結果】
Event Type:Security
Sub Type:Anti Malware
結果として、Cato社が紹介している例ということもあり、問題なく2例とも想定通りのフィルタがかかりました。
また、文字を入力してから、フィルタが決定されるまで体感1秒程度でした。
手動でフィルタするよりも明らかに早く、利便性がかなり高いと言えます。

エンドユーザ目線で

ここからは、実際にいただいたお問い合わせをもとに、私自身でユースケースを考えてみました。
色々と日本語・英語をチューニングして試しています。

あるユーザが特定のサイトへアクセスできない

私(なかがわ きょうすけ)が、任天堂のサイトへアクセスしてブロックされた結果を表示できるか試してみます。

中川さんが任天堂のサイトが見られなくて困っている。見られない。
「Mr. Nakagawa is having trouble viewing Nintendo’s website.」
「Mr. Nakagawa can’t see Nintendo’s website.」

結果はフィルタできず。フィルタ指定に失敗すると以下のエラーになる。
Error – unsupported filtersThe search engine returned a response, but your request uses unsupported filters and can’t be displayed. Please check the filters and try again.」 
あまりに口語的な表現をすると、失敗してしまうようです。
次に、Cato社の紹介例のように、ログが見たいという意図を伝えてみます。
中川さんが任天堂のサイトにアクセスできなかったので、そのログが見たい。
「Mr. Nakagawa accessed Nintendo’s website and would like to see the blocked logs.」

【フィルタ結果】
Action:Block
Domain Name:nintendo.com
フィルタはかかるが、ユーザ指定するには情報が足りないのかフィルタできず。
ドメイン名はフィルタされたが、www.nintendo.comのログが見たいため不十分。
今度は、ユーザ名とドメイン名を正確に入力してみる。
中川恭介さんのwww.nintendo.comのドメインでブロックされたログが見たい。
「I would like to see the log of Kyosuke Nakagawa’s www.nintendo.com being blocked.」

【フィルタ結果】
Domain Name:www.nintendo.com
Action:Block
User Display Name:Kyosuke Nakagawa
ようやく、満足のいく結果に。
まだ正確な情報で入力する必要があり、”よしなに”フィルタをかけることは難しそうです。

日時指定でブロックされたログが見たい

今度は日時指定ができるか試してみます。

10月2日にブロックされたイベントが見たい。
「I would like to see an event blocked communication in 2nd October.」

【フィルタ結果】
Action:Block
日時指定:10/2 0:00~23:59
右上の日時指定が更新され、アクションもきちんとブロックで指定されました。
今度は、少し表現を複雑に変えてみます。
10/2の午前中にブロックされたイベントが見たい。
「I would like to see an event on the morning of 10/2 with blocked communication.」

【フィルタ結果】
Action:Block
日時指定:10/2 0:00~12:00
「2nd October」を「10/2」に変更し、午前中という表現も加えてみましたが、きちんとフィルタされました。
日時指定の表現はいくらか融通が利きそうです。

あるアプリの操作をブロックしているログを見たい

最後に、セキュリティオプションのCASB機能でブロックされたログが見られるか、確かめてみたいと思います。
今回は、Gmailにてファイル添付をブロックしているログを見てみたいと思います。

結果として、一筋縄ではフィルタされず、色々と表現を変えながら試すこととなりました。
まずは、以下に失敗したスクリプトをご紹介します。

ファイル添付がブロックされた / できなかったログが見たい
「I would like to see a log of blocked file attachments in Gmail.」
「I would like to see a log of files that could not be attached in Gmail.」               

Gmailアプリのファイル添付に関するログが見たい
「I want to see logs about file attachments in the application “Gmail”.」

Gmailに関するログが見たい
「I want to see logs about Gmail.」
「I want to see logs with application name Gmail.」

ここで、「Gmailに関するログが見たい」という単純な表現に変えても出力されず。
Gmailという表現をここであきらめて、Googleに広げて聞いてみました。

Googleに関連するアプリケーションのログが見たい。
「I would like to see logs of google related applications.」

【フィルタ結果】
Application:Google Drive、Google

ようやくフィルタがかかりましたが、Google DriveとGoogleのみで、なぜかGmailは含まれませんでした。
英語の表現が適切でないと感じ、Gmailに関する(about,with)ではなく、Gmail上(on)のログという表現に変えてみました。

Gmailアプリ上でブロックされたログが見たい
「I would like to see the blocked logs on the gmail application.」

【フィルタ結果】
Action:Block
Application:Gmail
すると、ようやく、Gmailでブロックされたログにフィルタされました。
続いて、ファイル添付がブロックされたログが見られないか、スクリプトを考えていきます。
Gmailアプリ上で、ファイル添付がブロックされたログが見たい
「I would like to see a log of blocked file attachments on the gmail application.」

【フィルタ結果】
Action:Block
Application:Gmail
ファイル添付はくみ取ってもらえず、「Gmailでブロック」のフィルタのみとなりました。
次に、Gmailは一旦あきらめて、イベントフィールドの値を「ファイル添付」で指定するようなスクリプトにしてみます。
アプリケーションアクティビティがファイル追加のログが見たい
I would like to see a log of the application activity add attachment.×

残念ながらエラーの結果に。。
他にも色々と表現を変えながら試しましたが、「ファイル添付」でフィルタしてもらうことは出来ませんでした。。

諦めようとしたその時、気づきました。
新機能紹介ページによると、そもそもApp Activityが今後追加予定のフィールドになっていることに。。

想定していた全てのフィルタを設定することはできず、残念でしたが、
自然言語では未対応のフィルタとわかったため、気持ちよくあきらめることができました。

また、その他の注意点として、同じスクリプトを入力しても、時間を空けるとフィルタの結果が変わったり、場合によってはフィルタ出来なくなったりすることがあります。

【補足】単語のみでフィルタ可能か?

ちなみにですが、以下のように、文ではなく単語の列挙に近い記載でフィルタできるかも試してみましたが、結果はあまり芳しくありませんでした。
最低限、所有の’s や前置詞は記載する必要があるようです。

検索ワード フィルタ結果
Block ×
block event
Action:Block
IPS
sub-type:IPS
sub-typeに登録されているキーワードであれば、単語のみの検索でも比較的表示されました。
today ips block
日時:当日午前0時から現在時刻
Event-Type:Security
sub-type:IPS
Action:Block
today nakagawa block× ×
today’s nakagawa block event ×
today’s block event of Nakagawa
日時:当日午前0時から現在時刻
User Name:Nakagawa
Action:Block
Kyosuke Nakagawa www.nintendo.com Block ×
Kyosuke Nakagawa’s Block event to www.nintendo.com
User Name:Kyosuke Nakagawa
Action:Block
Domain Name:www.nintendo.com

 

まとめ

率直に、予想していたよりもフィルタを効かせることはできるな、という感想を持ちました。

ただし、生成AIのチャットボットを利用する際も同様ですが、スクリプトにはコツが要ります。
慣れるまでは、今まで通り手動でフィルタする方が早いかと思います。

今後、Cato内のAIが学習を進め、ラフな自然言語でも読み解いてくれて、
上手くフィルタしてくれるようになるまで成長してくれるといいです。

タイトルとURLをコピーしました