Sambaの印刷サブシステムに重大なセキュリティ脆弱性が開示され、未認証の攻撃者が影響を受けるサーバー上でリモートから任意のコードを実行できることが判明しました。CVE-2026-4480として追跡されているこの欠陥はCVSSスコアの最高値10.0を記録しており、機密性・完全性・可用性への深刻な影響を示しています。
この問題はSambaのプリントサーバーで「print command」と%J置換パラメータを使用して設定されている場合に影響します。ファイルおよび印刷共有のためにエンタープライズ環境やLinux環境に広く展開されているSambaは、このパラメータにおけるユーザー提供の入力を不適切に処理します。
具体的には、クライアントが制御するジョブの説明文字列が適切なサニタイズなしにシェルコマンドへ直接渡されるため、コマンドインジェクションが可能になります。
SambaのセキュリティRCE欠陥
この脆弱性は、Sambaが%J置換を処理する際にシェルのメタ文字をエスケープしないことから発生します。その結果、攻撃者はサーバー上で実行されるシェルコマンドを含む悪意のある印刷ジョブの説明を作成することができます。
多くのSambaプリントサーバーはデフォルトでゲスト印刷を許可しているため、認証なしに悪用が可能となり、リスクが大幅に高まります。
すべての構成が脆弱なわけではありません。「printing = cups」または「printing = iprint」を使用するシステムは影響を受けず、print commandの設定に%Jを含まないサーバーも同様です。ただし、レガシーまたはカスタムのprint command設定に依存している環境は特に危険にさらされています。
%Jをシングルクォートで囲む(例:’%J’)ことで悪用の可能性を低減できますが、リスクを完全に排除することはできません。攻撃者は依然として悪意のあるコマンドライン引数を注入できるため、この緩和策は長期的な解決策としては不十分です。
Sambaチームはこの欠陥に対処するセキュリティアップデートをリリースしました。バージョン4.22.10、4.23.8、および4.24.3が対象です。管理者は直ちにアップグレードするか、Sambaのセキュリティアドバイザリページで提供されている公式パッチを適用することを強く推奨します。
即時パッチ適用が困難なシステムには、一時的な回避策が推奨されます。smb.confファイルの「print command」設定から%J置換を完全に削除するか、シングルクォートで囲んでリスクを軽減する方法が含まれます。ただし、これらの措置は完全な修正ではなく、暫定的な保護として考えるべきです。
この脆弱性はSafeBreach、ZeroPath、およびSecurin Labsのセキュリティ研究者によって発見・報告されました。SernetおよびCatalystの貢献者を含むSamba開発チームがパッチをリリースし、アドバイザリの調整を行っています。
エンタープライズネットワークにおけるSambaの広範な利用と、ゲストアクセスを許可する可能性があるデフォルト設定を考えると、この脆弱性は高リスクの攻撃ベクターとなります。組織はパッチ適用を優先し、潜在的な悪用を防ぐために印刷サービスの設定を見直す必要があります。
翻訳元: https://gbhackers.com/samba-security-flaw/