適切に管理されたあらゆる組織は、既知のデータ出口をすでに管理しています。コピー&ペーストは監視され、ファイルダウンロードは記録され、メールはスキャンされ、印刷は制限されています。これらの管理は、偶発的なデータ露出の大部分を止めています。
残るのは、そのいずれも見ることのできない唯一の経路:スクリーンショットです。閲覧権限しか持たないユーザーが画面を撮影します — 手元の電話で、OSのスクリーンショットショートカットで、あるいは別のデバイスで行う画面録画で。画像はピクセルとして組織から出ていきます。ピクセルはコピー&ペーストイベントでもなく、ファイルダウンロードでもなく、メールでもありません — 既存のツールのいずれもそれをデータ出口として認識しません。
この画像でできることは、ここ数年で劇的に変わりました。古典的なOCRエンジン(TesseractやAWS Textractなど)は画像から実用品質のテキストを抽出できます。最新のAIビジョンモデル — GPT-4V、Claude Vision、Geminiなど — はさらに進んでいます:画像を全体的に見て、表構造、契約セクション、フォームフィールドを推論し、ときには十分に訓練された人間以上を読み取ります。
この問題に対してよく提案される防御 — 可視ウォーターマーク、コピー不可のDOM、画面録画検出、モバイルデバイス管理によるクリップボード制御 — はもはや成り立たない前提に依存しています。可視ウォーターマークはその周囲のテキストが読まれることを妨げません。コピー不可のDOMは携帯電話のカメラを止めません。画面録画検出は別のデバイスで行われた録画を見ません。
この経路を本当に閉じる唯一の場所は、画面に表示されるピクセルそのものです — ユーザーの画面に映るものを、撮影された画像から意味のあるテキストを抽出できないように調整するのです。
ZeroLeakは保護対象のWebアプリケーションをサーバー上のブラウザで実行し、生成されたフレームをユーザーに届く前にピクセルレベルの処理を通します。ユーザーのブラウザが受け取るのはピクセルストリームです — HTML、DOM、JavaScriptではありません — つまりコンテンツを抽出する唯一の方法は画面を撮影することです。そしてその画像は設計上、OCRやAIビジョンモデルにとって読めない状態になっています。
保護対象のWebアプリケーションを、ZeroLeakは自身のサーバー上のヘッドレスブラウザの中で開きます。ユーザーのブラウザはそのページのHTML、JavaScript、DOMを一切受け取りません — 受け取るのはそのページを描画したもののピクセルストリームだけです。動画を視聴しているようなものと考えてください:クリックとキーボード入力は背後のサーバー上のブラウザに送り返され、そこから返される新しい画像がユーザーへ流れます。
サーバー上で生成された各ページは、ユーザーに送られる前に8つの独立したピクセル処理を通ります。ユーザーの目には気づかれない程度の微細なノイズ、文字の縁に配置される細い線、カラーチャンネルの分離などの技術が組み合わせて適用されます。各技術はOCRエンジンの異なる段階を狙い、重ね合わせることで、あるエンジンが突破した層を別の技術が止めます。
GPT-4V、Claude Vision、Geminiといったモデルは画像を全体的に見ます — 一文字ずつ読むだけでなく、ページのレイアウト、見出し、表を抽出しようとします。そのため文字レベルのピクセル処理だけでは不十分です。ZeroLeakは画像を、ユーザーが気づけない速度で回転する小さなタイルに分割し、各タイルを独立したパターンでピクセル化します。人間の視覚システムは回転するタイルを融合させて安定した読める画像を作りますが、AIビジョンモデルは単一のタイルからさえ安定したテキストやレイアウトを捉えられません。
Anti-OCR保護はZeroLeakの他の画面層保護と同じ構成内で動作します。ページは、トリミングや再スケーリングされても痕跡を残す隠れたユーザー識別子を持つことができ(フォレンジックウォーターマーク)、表示されているテキストのDOM上の対応文字がコピーされると無意味な出力になることもできます(テキスト暗号化)。各層は保護対象サービスごとに独立して有効化・無効化され — ユースケースに応じて組み合わせを選択します。
以下の8つの技術は、サーバー上で生成された各ページにユーザーへ送られる前に適用されます。それぞれがOCRエンジンとAIビジョンモデルの異なる弱点を狙います。重ね合わせると、攻撃者が撮影した画像からテキストを抽出するために突破しなければならない表面の総量は、単一技術の効果よりはるかに大きくなります。
各ピクセルはごく小さな範囲でランダムな輝度変化を受けます。人間はこれを読み取りに影響しない軽いテクスチャとして認識しますが、OCRエンジンがテキストの縁や文字の形を識別するために見ている、きれいで一貫したピクセル境界はもうそこにありません。
古典的および最新のOCRエンジンは、画像内の文字の縁や線の太さを特定の空間周波数帯で探します。この帯域を狙って微細な周波数の撹乱が適用されます。画像全体の構造は人間の読者には明瞭に見えますが、OCRの縁検出モジュールは信頼できる縁を見つけられません。
テキスト処理は、カラーチャンネル間でわずかな差を持って異なる形で適用され、同じ文字が赤、緑、青のチャンネルで異なって生成されます。人間の目は3つのチャンネルを融合させて1つの読める文字を見ます。ほとんどのOCRエンジンは画像をまずグレースケールに変換します — その過程で必要なチャンネル間の文字情報を失います。
ある文字がどこで終わり別の文字がどこで始まるかは、OCRが正しく動作するために重要な段階です。ページの画像に、この文字間境界に重なる、非常に細くユーザーには背景テクスチャのように見える線が追加されます。人間の目は線を背景と勘違いして読み飛ばしますが、OCRは2つの文字を1文字、あるいは1文字を2文字として分割し、テキストを誤って区切ります。
各文字は、人間が知覚できないほど小さく — ピクセル尺度より下の量だけ — ずらされます。読み取り体験は変わりません。OCRエンジンが文字を識別するために使うベースライン位置や本体の整列が崩れるため、認識精度が下がります。
各文字の自身の領域内で、限定的なピクセルの入れ替えが適用されます。読み取り距離では文字は目に同じに見えます。しかしOCRエンジンが文字が「A」か「R」かを判断する際に使うピクセルレベルの統計が崩れます。
テキストでない領域に、人間の目にはほとんど気づかれない特殊なパターンが配置されます。これらのパターンは、OCRがまずテキスト領域を見つけてから読み取る段階を欺きます — テキストと背景のコントラストがOCRの知覚で下がり、エンジンはテキストがどこから始まるかを特定できません。
代表的なOCRまたはAIビジョンモデルを取り、そのモデル自身の内部動作構造(gradient)を通じて算出されるピクセル変更が適用されます。その結果は同じ系統の他のモデルにも作用します。上記7つの技術の上に重ねると、総合的な効果は単一技術の合計を上回ります。
AIビジョンモデル(GPT-4V、Claude Vision、Geminiなど)は画像をOCRとは異なる方法で見ます。一文字ずつ読む代わりに、ページを全体的に見てレイアウト、表、フォームを再構成しようとします。上記の8つの技術は古典的なOCRを確実に止めますが、こうした全体的な読み手を完全に無効化はしません。回転タイル分割はこうした読み手のために設計された層です。
サーバー上で生成された各画像は、見えないグリッド(通常3×3)に分割されます。各タイルは独立したピクセル化パターンと独立したパターン位相で適用されます。隣接する2つのタイル間に共通の構造はありません。
ピクセル化パターンは、タイル間で人間の視覚システムが知覚できるより速く、しかし目がまだ安定した画像を形成できる速度で回転します。ユーザーはページを通常通り読みます。単一のタイル、あるいは短いタイル列を見るAIビジョンモデルは、安定したテキストやレイアウト構造を捉えられません。
タイルは互いにパターンや位相を共有しません。AIモデルがあるタイルのピクセル化パターンを解いたとしても、その情報を隣接タイルに適用できません。画像全体を解くには各タイルを個別に解く必要があり、これはタイル数に比例した作業負荷を意味します。
回転タイル分割は単独で動作する防御ではなく — 上記の8技術のピクセル層の上に追加されます。AIモデルが上層を部分的に突破しても、その下にはまだ文字レベルを狙う8技術の層があります。攻撃者は同じ画像で2種類の異なる保護を破る必要があります。
グリッド密度、回転速度、パターン強度、グリッド形状は保護対象のWebサービスごとに個別に設定されます。高機密のコンテンツ(法律ファイル、財務諸表)には保護を強化し、日常的なコンテンツには基本設定で十分です。
半透明のウォーターマークやコピー不可のDOM要素は、トリミングやフィルタリングで突破できます — その下にはまだきれいな画像があります。回転タイル分割はコンテンツの実際のピクセルそのものを変更し、その下に隠された「きれいな」画像はありません。
臨床従事者は業務上、患者データを画面で見る必要がありますが、そのデータは組織から出てはなりません。ZeroLeakによりデータはセッション内では読めるままで、撮影されたスクリーンショットからは意味のある情報を抽出できません。閲覧権限のみを持つロールにとって、HIPAAの最小開示原則と整合します。
読む必要があるが誰の電話にも飛び移ってほしくないコンテンツ — 財務諸表、契約文書、デューデリジェンスファイル。Anti-OCRと回転タイル分割を併用すると、文書は画面で快適に読めますが、撮影された画像は役に立たなくなります。
アナリストが見る必要があるが外部に出てはならない機密分類コンテンツ。ピクセルレベルの変更が、スクリーンショット経由の漏洩経路をアクセスポリシーと同じ境界で閉じます。
顧客パネル、監査インターフェース、調査コンソールに短期間の権限を得る外部ユーザー。ユーザーはコンテンツを読みますが、スクリーンショットを撮ってもそのコンテンツを別の環境に持ち出すことはできません。
研究者は試験データ、患者記録、検査結果を見る必要があります。開示の境界はほとんどの場合、外部への持ち出しを禁じています。Anti-OCRはこの禁止の境界をポリシーから技術的な制御へと変えます。
従業員リスクプログラムは、撮影されたスクリーンショットが無害であるともはや想定できません。ポケットにAIを持つあらゆる人にとって、画面に映るあらゆるコンテンツは潜在的な持ち出しベクトルです。Anti-OCRと回転タイル分割はこのリスクを、AI以前の人間のみの環境における水準まで引き戻します。
ZeroLeakのanti-OCRピクセル層と回転タイル分割をライブデモでご覧ください。同じページをTesseract、AWS Textract、GPT-4V、Claude Visionに与え、もう一方の端から何が出てくるかをお見せします。