IT ニュース&コラム 2025/12/8 通巻886号 ニュース版  ソフトウェアデザイン館 Sage Plaisir 21  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ■■ SVGクリックジャッキング:従来の手法を超えた新しい攻撃とその対策 ■■ 2025年12月、セキュリティ研究者のRebane氏が「SVGクリックジャッキング」と名付けた 新たな攻撃手法を公開しました。この攻撃はGoogleドキュメントとGeminiを悪用したデモで実証され、 Googleから脆弱性報奨金として約48万円が支払われています。 本記事では、この攻撃手法の仕組みと、従来のクリックジャッキングとの違い、そして対策について解説します。 ## 従来のクリックジャッキングとは 従来のクリックジャッキングは、透明なiframeをページ上に重ねることで、 ユーザーに意図しないクリックをさせる攻撃です。 たとえば、「無料ダウンロード」というボタンの上に、透明化したSNSの「いいね!」 ボタンを重ねておきます。ユーザーがダウンロードボタンをクリックしたつもりでも、 実際には透明ないいねボタンを押してしまう、という仕組みです。 この手法には限界があります。奪えるのは基本的に「クリック1回」だけであり、 テキスト入力など複雑な操作を誘導することは困難でした。 ## SVGクリックジャッキングの新しさ SVGクリックジャッキングは、iframeを「透明にする」のではなく、 「見た目を完全に書き換える」という点で従来と大きく異なります。 SVGフィルターを使えば、iframe内の表示を別のUIに偽装できます。 ユーザーには「CAPTCHAの入力画面」が見えていても、実際には裏でまったく 別のアプリケーションを操作させられている、ということが可能になります。 これにより、単発のクリックだけでなく、テキスト入力や複数ステップに わたる操作も誘導できるようになりました。 ## 攻撃の実例:Googleドキュメントからの情報漏洩 Rebane氏が公開したデモでは、以下のような攻撃シナリオが実証されました。 ### 前提条件 - ユーザーはGoogleアカウントにログイン済み - ユーザーのGoogleドライブに「Sales 2025 Q2」という機密文書がある - 攻撃者は自分のGoogleドキュメントを用意している ### 攻撃の流れ ユーザーが攻撃サイトにアクセスすると、「AIジェネレーターを無料で試そう」 という画面が表示されます。しかし実際には、その下に攻撃者のGoogleドキュメントが iframeで埋め込まれており、SVGフィルターで見た目が偽装されています。 ユーザーが「Get Started」をクリックすると、実際にはGoogleドキュメント上の 「Generate Document」ボタンをクリックしたことになり、Geminiが起動します。 次に、CAPTCHA認証に見せかけた画面で「4a@SaLe」という文字列を入力させます。 この文字列は実際にはGeminiへの入力となり、「Sale」を含むためユーザーの ドライブから「Sales 2025 Q2」が検索候補として表示されます。 続く「Submit」ボタンのクリックは、画面位置がずらされているため、実際には その候補ファイルを選択する操作になります。 最後に「Continue」をクリックすると、Geminiがユーザーのファイル内容を参照し、 攻撃者のGoogleドキュメント上に出力します。 ユーザーは「CAPTCHAを入力しただけ」と思っていますが、機密データは攻撃者の手に渡っています。 ## なぜ情報が漏洩するのか ここで重要なのは、Geminiは「ユーザーの権限でドライブを参照できる」だけでなく、 「参照した内容を現在開いているドキュメントに出力する」という機能を持っている点です。 そして「現在開いているドキュメント」とは、攻撃者のGoogleドキュメントです。 つまり、読み取りはユーザー権限で行い、書き込みは攻撃者のドキュメントに行われる。 このギャップを突いた攻撃です。 ## これは誰の脆弱性か Gemini単体で見れば、設計通りに動作しています。ユーザーの指示に従い、 ユーザーの権限でドライブを参照し、結果を出力する。これ自体は正常な機能です。 問題は複合的です。 - SVGフィルターがiframeの見た目を完全に偽装できること - Googleドキュメントがiframeへの埋め込みを許可していたこと - Geminiが「ユーザーの意図しない操作」への保護を持っていなかったこと Googleが報奨金を支払ったということは、サービス全体としてクリックジャッキング対策が 不十分だったと認めたことを意味します。 ## Googleが対策すれば解決するのか Googleの対応によって、Googleドキュメント+Geminiを使ったこの特定の攻撃は防げるでしょう。 しかし、SVGクリックジャッキングという手法自体はブラウザの標準機能を利用しています。 iframeへの埋め込みを許可している他のサービスがあれば、同様の攻撃は可能です。 つまり、各Webサービスが個別に対策を講じる必要があります。 ## 対策方法 Webサービス側での対策は主に2つあります。 ### X-Frame-Options ヘッダー HTTPレスポンスヘッダーで、iframeへの埋め込みを制御します。 ``` X-Frame-Options: DENY # 一切の埋め込みを禁止 X-Frame-Options: SAMEORIGIN # 同一オリジンのみ許可 ``` ### Content-Security-Policy(CSP) より柔軟な設定が可能な、現在推奨されている方法です。 ``` Content-Security-Policy: frame-ancestors 'none' # 一切禁止 Content-Security-Policy: frame-ancestors 'self' # 同一オリジンのみ Content-Security-Policy: frame-ancestors example.com # 特定ドメインのみ許可 ``` ### 現実的な課題 埋め込みが不要なサービスであれば、単純に禁止すれば済みます。 しかし、正当な理由で埋め込みを許可する必要があるサービスは、別の対策が必要です。 たとえば、重要な操作の前に確認ダイアログを表示する、などの方法が考えられます。 ## まとめ SVGクリックジャッキングは、従来のクリックジャッキングを発展させた攻撃手法です。 iframeの透明化ではなく、SVGフィルターによる視覚的な偽装を用いることで、 より複雑な操作をユーザーに気づかれずに実行させることができます。 この攻撃手法の公開により、各Webサービスは自サイトがiframeに埋め込まれた際の リスクを改めて評価し、適切な対策を講じる必要が出てきました。 特に、ユーザーの権限で重要な操作を行う機能を持つサービスは、クリックジャッキング対策の 見直しが求められます。 Generated by Claude Opus 4.5 プロンプト: - 下記のページの攻撃方法はリンクの横取りですか? ウェブサイト上でユーザーをだましてデータを盗み出す新たな攻撃手法「SVGクリックジャッキング」が登場。 https://gigazine.net/news/20251205-svg-clickjacking/ - シークレットを表示するページが偽装する対象ですか - クリックジャッキングとの違いは - Sales 2025 Q2という文書が漏洩した仕組みを詳しく - Geminiはユーザーのドライブにアクセスできるだけだと思いますが、なぜ漏洩するのでしょうか - Geminiの脆弱性ですか - Googleの脆弱性が防がれたら、SVGクリックジャッキングができなくなりますか - 各Webサービスがiframeへの埋め込みを禁止するには - 以上を踏まえて、ブログの記事になるような文章を書いてください ■■ 注目ニュース 一覧 ■■ ◇ AnthropicがJavaScriptランタイム「Bun」を買収、Claude Codeはわずか6カ月で約1500億円の収益を上げる。 https://gigazine.net/news/20251203-anthropic-acquired-bun/ … トランスパイルに相当する処理が高速になり、応答時間が短くなる。 ◇ 意見の異なる相手と建設的な議論を進めるための「RISAルール」とは?ディベート世界チャンピオンが議論のコツを解説。 https://gigazine.net/news/20251202-argument-risa-bo-seo/ … Real(真実性), Important(重要性), Specific(具体性), Aligned(調和) に気を付ける。 ◇ OpenAI、16歳自殺とChatGPTめぐる裁判で責任否定。誤用を指摘。 https://japan.cnet.com/article/35240980/ https://japan.cnet.com/article/35240955/ … センシティブを理由に真実を明らかにしない相手に法的権利を与えてはいけない。 ◇ Meta売上高の1割が「詐欺広告」疑惑、米議員がFTC・SECに本格調査を要求。 https://japan.cnet.com/article/35240847/ … 被害の証明をもって制裁金を払うのは妥当。 ◇ 年齢確認を義務化する法律には十分な効果がなく無駄な負担ばかり増えているという分析結果。 https://gigazine.net/news/20251119-age-verification/ … オンライン自由法を作るべき。判断力テストに合格したら見られるようにする。幼い子どもが意図せず過激なコンテンツに遭遇してしまう。 ◇ WindowsのAI製品への批判を受けMicrosoftのAI責任者が冷笑系にウンザリ、「超賢いAIに感心しないなんて信じられない」と語る。 https://gigazine.net/news/20251120-microsoft-ai-ceo-against-windows-backlash/ … Microsoft ヘイターの存在を思い知らされる元DeepMindCEO。 ◇ GoogleによるAIを用いた大量バグ報告にFFmpegが「ボランティアに仕事を押し付けている」「検出&報告の実績を作りたいだけ」と苦言。 https://gigazine.net/news/20251112-ffmpeg-google/ … パッチを書いて送ってくるべき、という苦言はごもっとも。 ◇ 日本のGDP速報を可視化、新ダッシュボード公開 「高市内閣の成果見極めに活用を」とデジタル相。 https://japan.cnet.com/article/35240597/ … GDPダッシュボードを読み解くための事前知識。 ◇ コミュニケーション弱者が社交的な人間になるまでに経験した「6つの気付き」とは? https://gigazine.net/news/20251119-six-stages-socially-normal-person/ … やさしく接したときに悪用されない相手を選ぶことも重要。 ◇ オープンソース活動をボランティアの公益事業として正式に認めるべきという請願がドイツで出される。 https://gigazine.net/news/20251201-open-source-software-ehrenamt/ … 政治的な勢力が拡大させることは正しい活動だとしても大事。 ■■ ソフトウェアデザイン館 Sage Plaisir 21 ■■ ホームページ >>> http://www.sage-p.com/ メルマガ >>> http://www.mag2.com/m/0000083983.html ブログ >>> http://blog.livedoor.jp/sage_p/ ツイッター >>> http://twitter.com/Ts_Neko ダウンロード >>> http://www.sage-p.com/freesoft.htm サポート掲示板 >>> http://www.sage-p.com/kg_ban09/z6037C8.cgi 東日本大震災 >>> http://www.sage-p.com/saigai.html メール >>> ts-neko◇sage-p.com ←◇を@に変えてください 緊急メールは件名に「うどんメール」を付けてください。 このメルマガの登録・解除 - http://www.mag2.com/m/0000083983.htm