何が起きたか・対象

PaperCut NG/MFで、ログイン済み管理者が攻撃者のページやリンクを開くと、意図しない設定変更をサーバーへ送らされるCSRFがありました。識別子はCVE-2023-2533です。

ブラウザが設定変更要求へ管理者のログイン用Cookieを付け、サーバーがその要求を正規の管理操作として受理することが問題です。発見者の実証では、印刷スクリプトを有効にしてサンドボックスを無効にした後、OSの命令を呼ぶ印刷スクリプトを保存・実行する経路を示しています。後続機能も使える条件では、PaperCutの実行ユーザーの権限で攻撃者のコードが動くおそれがありました。 印刷スクリプトは印刷ジョブを扱うサーバー側の処理で、サンドボックスはそこから使える機能を制限します。実証コードは、攻撃者のページがiframeを作り、設定変更やスクリプト保存のURLを管理者のブラウザに順に読み込ませます。ブラウザが対象PaperCut宛てのCookieを送る条件を満たすと、その管理セッションで要求が処理されます。

保存されたスクリプトが印刷ジョブ用の処理として呼ばれ、制限解除後にOSプロセスの起動が許されることが、コード実行まで進む条件です。コードは管理者のPCではなくPaperCutサーバーで動きます。設定変更だけが成功しても、保存要求の宛先となるプリンターや実行機能が使えなければ同じ連鎖にはなりません。

報告・修正・公開の時系列

発見者ページのRelease dateは2023-04-10、CVEの公表日は06-20として記録されています。開発元は06-08に22.1.1とセキュリティ告知を公開しています。これらを同じ公開日へまとめません。2025-07-29のHKCERT注意喚起は実悪用を報告しています。

正常ならどう動くはずだったか

管理者向けの設定変更APIは、誰のセッションで送られたHTTPリクエストかに加え、正規画面で選んだ操作かを確認する必要があります。ブラウザがそのリクエストへログイン用Cookieを付けても、それだけでは管理者が設定変更を意図した証拠になりません。

技術的な原因

設定編集の経路は、外部ページから送らせたHTTPリクエストに管理者のログイン用Cookieが付くと、管理者の操作として受理する場合がありました。発見者の実証は、印刷スクリプトを有効にし、サンドボックスを無効にする設定変更を送ります。その後、OSの命令を呼ぶ印刷スクリプトを保存し、実行する経路を示しています。CSRFによる設定変更と、変更後に使える実行機能を組み合わせた問題です。 実証では、設定変更からスクリプト保存までを、管理者のブラウザが送る要求で行います。攻撃者が別途管理者としてログインする流れではありません。

攻撃が成立する条件と流れ

管理者が対象PaperCutへログイン中に、攻撃者のページやリンクを開くことが条件です。攻撃者のページはiframeの宛先にPaperCutの操作URLを指定し、ブラウザに設定変更とスクリプト保存の要求を送らせます。対象宛てのログイン用Cookieが付くかは、Cookieの宛先・パス・SameSiteなどと、要求の形式に依存します。サーバーがその要求を受理することに加え、プリンターのスクリプト保存・呼出しと、OS命令を許す実行状態がコード実行の追加条件です。

確認された事実と、想定される影響

設定改変の結果として、管理者が意図せず印刷スクリプトや実行制限の状態を変えられるおそれがあります。さらに、設定変更後の機能で攻撃者が指定したコードを実行できる条件を満たすと、PaperCutの実行ユーザーの権限でOSの処理が動きます。

説明用の被害例では、その処理がアプリから読める設定を外部へ送信できれば、攻撃者が接続情報を入手するおそれがあります。HKCERTは実悪用を報告していますが、その全てで同じ秘密が盗まれたことや、発見者の実証の全処理が使われたこと、被害件数までは確認できません。

実際の修正・対応方針

開発元は22.1.1以降への更新を案内し、当時の旧系列には21.2.12、20.1.8も修正版として挙げています。現在使う版はサポート状況も確認します。内部差分は直接確認しておらず、CSRFトークンの追加などを実修正と推測しません。

利用者・運用者が確認すること

修正済みのサポート対象版へ更新し、管理画面の接続範囲、設定変更履歴、印刷スクリプト設定を確認します。外部ページを開く利用者の操作が必要な問題でも、サーバー側の修正が対策の中心です。

開発者への教訓(教材としての考察)

設定変更だけに見えるCSRFでも、その設定で実行機能を有効化できれば影響が広がります。ブラウザからの要求が、どのサーバー機能へつながるかまで説明・確認します。

出典・確認範囲

  1. [1] Security Bulletin: June 2023PaperCut / 確認日 2026-10-29
  2. [2] PaperCut MF/NG 22.0.10 - RCE via CSRFFluid Attacks / 確認日 2026-10-29
  3. [3] PaperCut Multiple VulnerabilitiesHKCERT / 確認日 2026-10-29
  4. [4] CVE-2023-2533CVE Program / 確認日 2026-10-26
未確認事項・限界

修正の内部差分と実悪用の詳細な被害範囲は確認できていません。