人間には普通の契約書に見えるのに「嘘のフォント」でAIだけ別の文章を読まされる「Noroboto」攻撃とは?

AIに文書やPDFを読ませると要約して説明してくれるため、長い契約書などを読ませて内容を把握したりリスクチェックをしたりと活用できます。しかし、AIによる文書レビューは「人間が画面上で読んだ文章とAIが内部的に読み取った文章は同じである」という前提で行われています。法律文書向けソフトウェアを開発するTritium Legal Technologiesの創業者であり、企業法務の弁護士およびソフトウェア開発者として10年以上の経験を持つドリュー・ミラー氏が、人間には普通の文章として読める一方でAIには別の文章として読ませる「Noroboto」という攻撃手法を紹介しています。
Tritium | Noroboto: Lying Fonts and Mitigation in Rust
https://tritium.legal/blog/noroboto

ミラー氏によると、問題の鍵となるのは文書に埋め込まれた悪意あるフォントとのこと。フォントは文字の見た目を決めるだけでなく、Unicodeの符号位置、つまり文字に割り当てられた番号と、画面上に表示する字形を結びつける情報を持っています。Unicodeとは「A」や「あ」などの文字に番号を割り当てる仕組みで、通常は「A」の番号に「A」の見た目が対応しますが、悪意あるフォントでは対応関係を意図的にずらすことが可能です。
Norobotoでは文書内に悪意あるフォントを埋め込み画面上では普通の文章に見えるようにしながら、内部的には別のUnicode文字列を持たせることで、人間が「Maryland(メリーランド州)」と読んでいる箇所をAIには「Delaware(デラウェア州)」と読ませるといった攻撃が可能になるとのこと。契約書の準拠法や金額など、意味が大きく変わる箇所で使われると深刻です。

文書全体ではなく一部だけに悪意あるフォントを使う攻撃が特に厄介だとミラー氏は指摘しています。文書全体が壊れたような状態であれば、AIが異常に気づき、画像として読み直すOCR処理を行う可能性があります。一方で、一部だけが悪意あるフォントで処理されている場合、AIは通常のテキスト抽出結果を信じてしまう可能性があります。たとえば、人間には「2億円」と見える一方で、AIには「1億円」と読ませるような攻撃も考えられます。
ミラー氏らのテストでは、契約書内の一部を悪意あるフォントで処理した結果、一部のAIプラットフォームが誤った内容を回答したとのことです。契約書レビュー、請求書処理、監査、入札書類の確認など、AIが文書の中身を根拠に判断する場面では大きなリスクになります。
AIによる文書レビューは、入力されたテキストが正しいという前提に強く依存しています。Norobotoが示している問題はAIの推論能力そのものではなく、AIが読む前のテキスト抽出処理にあるため、ミラー氏は対策として「埋め込みフォントを無条件に信用せず、フォントで英数字を描画してOCRで読み取り、期待される文字列と一致するかを確認する」「事前に『人間の目で見える文章』『文書ファイル内のUnicode文字列』『AIが実際に処理する文章』の3つが一致しているかを検証する」など、など、フォントが表示する字形と内部的な文字情報が一致しているかを検証する方法を提案しています。
・関連記事
一見無害な画像の中に文字列を埋め込んでAIを攻撃する恐るべき手法が発見される - GIGAZINE
AIがスプレッドシートに勝手に数式を挿入して機密データを外部送信してしまう脆弱性が発見される - GIGAZINE
コード生成AIによる幻覚を悪用した新しいサイバー攻撃「スロップスクワッティング」が登場する可能性 - GIGAZINE
サイバー犯罪グループがAIを使って2要素認証を回避できるゼロデイ脆弱性を発見していたとGoogleが報告 - GIGAZINE
AIのトレーニングデータを汚染して意図しない動作を引き起こさせるデータポイズニング攻撃はモデルのサイズやデータ量と無関係に250件ほどの悪意ある文書があれば実行可能 - GIGAZINE
・関連コンテンツ
in AI, セキュリティ, Posted by log1d_ts
You can read the machine translated English article What is the 'Noroboto' attack, where a c….







