HN🔥 49
💬 22

Rustでフォントの「偽装」を見破る:Norobotoによるセキュリティ対策術

piker
3日前

ディスカッション (9件)

0
pikerOP
👍493日前

フォントファイルが意図せず、あるいは悪意を持ってシステムを欺く「Lying Fonts(嘘をつくフォント)」という問題をご存知でしょうか。これは、フォントが自身に関するメタデータや構造において虚偽の情報を提示し、セキュリティリスクを引き起こす可能性がある現象です。Rustで開発されたツール「Noroboto」は、これらのフォントの整合性を検証し、潜在的な脅威を未然に防ぐための強力な武器になります。この記事では、なぜフォントが攻撃ベクトルとなり得るのか、そしてRustの高い安全性と堅牢性を活かして、どのようにこの問題に対処できるかを解説します。

1
echoangle
約21時間前

そこまでやるなら、ドキュメントのスクリーンショットを撮ってWordに貼り付けて、万歳すればいいんじゃない?あと、ざっと見た感じだと文字単位で検証しているだけみたいだから、リガチャ(合字)を使えばこの対策もすり抜けられるはず。そもそもこの脅威モデルがよくわからないよ。裁判で相手が証拠として提出するPDFにこれを使うのか?そんなことしたらctrl+fで検索すらできなくなるし、裁判官も相当イライラすると思うけどな。

2
mproud
約21時間前

全部の文字を入れ替えるようなフォントファイルを作っちゃう手もあるよね。AがZに見えて、ZがAに見えるみたいな。

3
PufPufPuf
約21時間前

「MarylandをDelawareにする」みたいなケースなら、リガチャ(合字)の方が攻撃手段として有効じゃない?結局リガチャの役割って、特定の文字の並びを別の見た目に変換することなんだし。

4
phuff
約20時間前

これはLLMの認識に対する攻撃としてはありかもしれないけど、法的根拠として成り立つとは思えないな。これは明らかに「詐欺的不実表示」(https://www.law.cornell.edu/wex/fraudulent_misrepresentation )のケースに該当するはずで、もし理解が正しければ契約そのものが無効になるよね:

「詐欺的不実表示は、通常契約法の分野で発生する不法行為の一種。被告が、相手方を作為・不作為へと誘導する意図で、事実または意見について意図的または無謀な虚偽の表示を行うことを指す。
成立には以下の6つの要素が必要:

  1. 表示が行われたこと
  2. その表示が虚偽であること
  3. 表示時点で被告がその虚偽を知っていた、あるいは真実を確認せず無謀に行ったこと
  4. 原告がその表示を信頼することを意図して表示が行われたこと
  5. 原告が実際にその虚偽表示を信頼したこと
  6. その結果、原告が損害を被ったこと
    契約法における他の請求と同様、通常の救済手段は損害賠償である。」
5
xiaod
約20時間前

コンパイル時と実行時の安全性におけるトレードオフは言及する価値があるね。イテレーションの速度よりも正確性が重要なインフラツールにおいては、初期段階のコストが後々の本番環境でのインシデント削減につながるはずだ。

6
sheept
約20時間前

見えているテキストを画像やパスとしてレンダリングして、その上に透明なテキストオブジェクトを重ねるだけでも機能しないかな?履歴書の審査システム(ATS)を騙すために白い文字や透明なテキストを隠すという話は聞いたことがあるけど、結局リクルーターにはプレーンテキスト版の履歴書を見せることで対策されているらしいよ。[0](https://news.ycombinator.com/item?id=36857909

8
chaidhat
約17時間前

すごくクリエイティブだね。なんで他のコメントがこんなに批判的なのかよくわからないよ。新しい脆弱性を常に意識しておくのはいいことだし、少なくとも自分は今まで思いつかなかったタイプの面白いアイデアだと思う。