CloudflareのData Loss Prevention(DLP)ソリューションの最新のイノベーションを発表できることを嬉しく思います。お客様固有のトラフィックパターンに適応して誤検知を減らす、AIを活用した自己改善型アルゴリズムです。
多くのお客様は、自社の内外を移動する機密データを識別して保護するという「目まぐるしい」タスクに頭を悩ませています。正規表現などの決定性手段による機密データ検出は、個人特定情報(PII)や知的財産(IP)として分類される詳細を識別できないために失敗することが多々あります。そのため誤検知率が高くなり、アラートが頻発してレビュー疲れにつながる可能性があります。さらに重要なのは、このような理想的でない体験がDLP製品離れにつながり、セキュリティポスチャ全般が弱体化する可能性があるということです。
CloudflareのDLPエンジンに組み込まれたAIによって、ドキュメントやHTTPリクエストのコンテンツをお客様の履歴レポートと並行してインテリジェントに評価し、コンテキストの類似性を判断して、データの機密性に関する結論をより正確に導き出すことができます。
このブログ記事では、DLP AIコンテキスト分析と、Workers AIとVectorizeを使用した実装、当社が開発している今後の改善点について紹介します。
誤検知とそれがユーザーの信頼に与える影響を理解
CloudflareのData Loss Prevention(DLP)は、Web、クラウド、メール、SaaSアプリケーションなどさまざまなチャネルにわたって潜在的なデータ漏洩源をスキャンすることにより、機密情報を検出します。当社はいくつかの検出方法を使っていますが、正規表現のようなパターンベースの方法が重要な役割を果たしています。この方法は多くのタイプの機密データに効果的です。しかし、特定の情報はパターンだけで分類するのは困難です。例えば、米国の社会保障番号(SSN)はAAA-GG-SSSSという構成になっており(ダッシュが省略される場合もあります)、納税者番号、銀行口座番号、電話番号など類似書式の他のデータと混同されることがよくあります。
当社はDLP製品を発表して以来、ユーザーが受け取る誤検知の数を減らすために、信頼度のしきい値などの新機能を導入してきました。この機能は、パターン一致の周辺のコンテキストを調べ、パターンマッチングの精度に関するCloudflareの信頼度を評価するものです。ユーザーは信頼度のしきい値(低、中、高)を設定して、誤検知の許容レベルを指定することができます。DLPは選択されたしきい値を下限とし、信頼度が指定のしきい値以上の検出のみを表面化します。
しかし、コンテキスト分析の実装も簡単な作業ではありません。簡単な方法は、パターン一致の近くに特定のキーワードがないか調べることです。例えば、マッチングでSSNの可能性があるとされる箇所の近くに「SSN」という言葉がないか探すわけですが、この方法には限界があります。キーワードリストが不完全なことも多く、ユーザーが入力ミスをする可能性もあります。また、識別の鍵となるキーワードが近くに(例:銀行コードの近くに銀行口座、名前の近くにSSNなど)ない真陽性も珍しくありません。
AI/MLを活用して検出精度を向上
当社は、コンテキスト分析の戦略をハードコード化する方法の限界を克服するために、お客様のフィードバックから学習して将来のエクスペリエンスをさらに改善する、動的な自己改善型アルゴリズムを開発しました。お客様からペイロード復号化ログを介して誤検知が報告されると、このシステムが類似コンテキストにおける将来のヒットの信頼度を低下させます。逆に、真陽性の報告があれば、システムが類似コンテキストにおけるヒットの信頼度を高めます。
コンテキストの類似性の判断には、Workers AIを活用しています。具体的には、テキストを高次元ベクトル(テキスト埋め込み)に変換する事前トレーニング済み言語モデルを使っています。こうした埋め込みはテキストの意味を把握し、同じ意味だが表現が異なる2つの文が互いに近接するベクトルにマッピングされるようにします。
パターンの一致が検出されると、システムはAIモデルを使用して周辺のコンテキストの埋め込みを計算します。次に、最近傍検索を実行して、以前記録された類義の偽陽性または真陽性を探します。これによって、表現がまったく同じでなくても意味が同じであれば、システムは文脈の類似性を識別することができます。
Cloudflare従業員のトラフィックを使って実験したところ、このアプローチはそれまで見られなかった新しいパターン一致を効果的に処理しており、その堅牢性が証明されています。DLP管理者がCloudflareのダッシュボードでポリシー一致のペイロードログを見ながら誤検知と真陽性を報告すれば、DLPの継続的改善ができ、時間の経過とともに誤検知が大幅に減っていきます。
Workers AIやVectorizeとシームレスに統合
この新機能の開発では、Cloudflareの開発者向けプラットフォームであるWorkers AIとVectorizeのコンポーネントを使用しました。基礎となるインフラを自社で管理するのではなく、Cloudflare Workersを基盤として活用し、テキストの埋め込みにはWorkers AIを、ベクターデータベースとしてVectorizeを使用しました。このセットアップにより、基盤となるリソースのプロビジョニングにオーバーヘッドをかけずに、アルゴリズム自体に集中することができます。
Workers AIのおかげで、テキスト埋め込みへの変換が極めて簡単になりました。たった1行のコードで、どんなテキストでも対応するベクトル表現に変換できます。
const result = await env.AI.run(model, {text: [text]}).data;
トークン化からGPUによる推論まで、あらゆる処理が可能で、プロセスがシンプルかつスケーラブルになります。
最近傍検索も同様に簡単です。Workers AIからベクトルを取得した後、Vectorizeを使って、過去のレポートから類似コンテキストをすばやく検索します。同時に、現在のパターン一致のベクトルをVectorizeに保存し、将来のフィードバックから学習できるようにします。
リソースの使用を最適化するために、いくつかの巧妙なテクニックを取り入れました。例えば、パターンがヒットしたらそのすべてのベクトルを保存するのではなく、オンラインクラスタリングによってベクトルをクラスターにグループ化し、クラスターの重心だけを、ヒットを追跡するカウンター、レポートとともに保存します。これにより、ストレージの必要性が減り、検索が高速化されます。さらに、Cloudflare Queuesを統合して、インデックス作成プロセスをDLPスキャンのホットパスから分離することで、堅牢で応答性の高いシステムを実現しました。
プライバシーは最優先事項です。当社では、一致したテキストはすべて埋め込み変換する前に墨消しし、すべてのベクトルとレポートをVectorize、D1、Workers KVのお客様固有のプライベートな名前空間に保存します。つまり、お客様の学習プロセスはそれぞれ独立しており、セキュアだということです。さらに、データ保持ポリシーを実装し、60日間アクセスも参照もなかったベクトルは当社のシステムから自動的に削除されるようにしています。
制約と継続的改善
AIを活用したコンテキスト分析により検出精度が大幅に向上します。ただし、これを行うとエンドユーザーエクスペリエンスに遅延が多少増します。有効化されたDLPエントリのいずれとも一致しないリクエストの場合は、遅延増加はありません。しかし、AIコンテキスト分析が有効になっているプロファイルの有効エントリと一致するリクエストでは、通常約400ミリ秒の遅延増加が発生します。複数のエントリに一致するリクエストなど稀にある極端なケースでは、1.5秒もの遅延増加が起こり得ます。当社は遅延低減に積極的に取り組んでおり、通常で250ミリ秒以内に抑えるのが理想です。
もう1つの制約は、当社の言語モデル選択上、現在の実装は英語しかサポートしていないということです。しかし、Workers AIは、DLPのサポートを他の地域や言語に広げられる多言語モデルを開発中です。
将来的には、AIコンテキスト分析の透明性の向上も目指しています。現在、ユーザーは、過去の誤検知や真陽性の報告に基づいてどのように判定が行われるかについて可視性が得られません。当社では、信頼度スコアの計算方法についてより多くのインサイトを提供し、説明可能性が高くユーザーフレンドリーなシステムにするツールやインターフェースを開発する予定です。
今回のローンチでは、AIコンテキスト分析が利用できるのはGatewayのHTTPトラフィックのみです。2025年末までにはCASBとメールセキュリティの両方で利用可能になり、お客様はデータ環境全体にわたって同じAI機能強化を受けることができます。
メリットを実現:AIを活用した検出機能の使用を今すぐ始めましょう
DLPのAIコンテキスト分析はクローズドベータ版です。こちらから早期アクセス登録して、DLP HTTPトラフィックのマッチの即時改善をご体験ください。一般公開に向けてさらなるアップデートが行われる予定です!
Cloudflare OneからDLPにアクセスする場合は、アカウントマネージャーまでお問い合わせください。