2021年10月11日月曜日

PaperCutサーバをセキュアにする方法

情報セキュリティの観点から、PaperCutサーバを可能な限りセキュアに構築する必要があります。
この記事ではPaperCutアプリケーション・サーバをセキュアにするためにどのように設定すればよいかについて記載します。

組織によっては、Webアプリケーションファイアウォールなどの手段でセキュリティを確保している場合もありますが、
この記事ではPaperCut内でセキュリティを強化するためにできる設定と組み込みのWebサーバに焦点を当てて説明します。
簡単にするために、CSRF検証などデフォルトでオンになっているセキュリティ設定についてはここでは触れません。
下記の説明はPaperCutサーバのセキュリティを確保する上での最善のアドバイスをまとめたものです。

ここで説明するオプションにはそれぞれトレードオフがあることに注意してください。
設定を有効化したことを忘れていたり、環境のテストを十分に行わなかったために、ブラウザで証明書のエラーが表示されたり、
古いモデルの複合機が動作しなくなったりする場合があります。下記に説明する各項目では、
何が問題になるのか、また導入後に何をテストすればよいのかを説明します。


PaperCut Plus/MFのアップグレード

最も重要な事項として、PaperCutソフトウェアを定期的にアップデートして最新のセキュリティ強化を行ってください。

問題点: PapeCutのアップグレードで問題が発生することはめったにありません。
もし問題が発生したらPaperCut社が迅速に対応します。


CA署名入り証明書のインストール

CA署名入り証明書により、ユーザはPaperCutサーバのWebインタフェースにHTTPSでアクセスすると、
PaperCutには自己署名証明書がプリインストールされているため、証明書が信頼できないメッセージが表示されます。

問題点: 認証局から購入した証明書は数か月後、もしくは数年後に失効します。
その頃になると担当者は証明書の生成方法を忘れているかもしれません。
また元の担当者が異動していて後任者は生成方法がわからないかもしれません。
カスタム署名付き証明書をインストールした場合、その手順をマニュアル化して、
証明書の有効期限前に更新できるようリマインダを設定してください。


クライアントにHTTPS接続を強制する

自己署名証明書をサーバにインストールしたら、
クライアントをセキュアHTTPS接続に自動的にリダイレクトし、デフォルトで接続が暗号化されるように設定することができます。

問題点: PaperCutサーバに正しく動作する証明書がインストールされていない場合や、
証明書の有効期限が切れている場合にこの設定が有効化されていると、クライアントは突然サーバに接続できなくなり、
PaperCut管理者画面やユーザ用Web画面にアクセスするとブラウザ上にサーバが信頼されていないことを示すエラーメッセージが表示されます。
また、PaperCutサーバでこの設定を有効化すると、すべてのサイト・サーバにもこの設定が継承されます。
これは、PaperCutサイト・サーバにも有効化署名付き証明書をインストールしてテストする必要があることを意味します。
そうしないと、プリンタや複合機はサーバに安全に接続できない可能性があります。


強力な暗号とプロトコルの使用

PaperCutが傍受や復号化される恐れのある弱い暗号やセキュアでないプロトコルを使用するデバイスや
クライアントとの接続を許可しないように設定します。

問題点: この設定を有効化したところ、
古いファームウェアが適用されている数十年前の複合機がPaperCutサーバに接続できなくなったというケースがあります。
この設定を変更する場合、事前に古いモデルの複合機のテストを行ってください。


セキュア・クッキーを強制する

PaperCut Plus/MF ver.17.1 以降のバージョンでは、セキュアな接続でアクセスした場合に生成されるセッション・クッキーは
HTTPレスポンスヘッダ内の「secure」および「HttpOnly」フラグと一緒に自動的に提供されます。
「HttpOnly」フラグは、クッキーにアクセスできるのはサーバ自身であることを示し、
第三者がクッキーを傍受して解析する可能性を最小限に抑えます。

クッキーに関して特に厳しい懸念を持つサイトでは、追完の設定により、Webサーバが発行する他のすべてのクッキー・タイプに、
これらのフラグを統一して含めることができます。
上述した記事で説明した、クライアントにSSL/HTTPSの使用を強制する設定を行っている場合、
すでにクッキーは安全であるため、通常は必要ありません。
次の設定は、ペネトレーション・テストでロケール設定(PaperCutは管理していない) のような
重要性の低いクッキーにフラグを立てる場合に、特に対応するためのものです。


セキュア・クッキーの強制の手順

① テキスト・エディタを起動し、次のフォルダにある「server.properties」を開いてください: [application-directory]/server/server.properties

② 下記の行をserver.propertiesファイルに貼り付け、クッキーのポリシーを設定してください。

  ### Cookie Policy ###
  # By default session cookie is set to be httpOnly and secure (if originating from secure connection).
  # Policy below can force all cookies (not just session) to be always httpOnly and secure even if not coming from secure
  # connection.
  # NOTE: Setting force-secure=Y will disable cookie session tracking for http origins.
  server.cookies.force-http-only=Y
  server.cookies.force-secure=Y

③ ファイルを保存してください。

④ サービス「PaperCut Application Server」を再起動してください。


問題点: この設定により問題が発生するかどうかはわかりません。この設定を変更することにより、特定の問題が発生した場合、弊社までご連絡ください。


内部IPアドレスが公開されないようにする

PaperCut Plus/MF のWebサーバには、ユーザが新しいページへリダイレクトする機能が必要です。
リダイレクトを行う際、ターゲットとなるロケーションは、Webブラウザが要求したHostヘッダに基づきます。
ホスト・ヘッダが省略された場合(例: HTTPリクエストを手動で作成した場合など)
サーバ自身のホスト名もしくはIPアドレスに基づいてターゲット・ロケーションが決定されます。
NAT環境でサーバのIPアドレスがプライベートなものとみなされる場合、これは理想的ではないかもしれません。

これはセキュリティ監査ソフトが「Web Server HTTP Header Internal IP Disclosure」などの報告をした場合にも適用されます。

問題点: このオプションを使用する場合、すべてのユーザがこの定義されたホスト名経由でPaperCutにアクセスし、
このホスト名がすべてのユーザからアクセスできるようにすることが重要です。
これは、組織がリバース・プロキシを使用している場合に問題となる可能性があります。
また、サーバ名が証明書のコモンネームやサブジェクトの代替名と一致しない場合にも問題となる可能性があります。


標準的なポートを使用してWebインタフェースへ接続する

通常、ユーザは「https://papercut.yourorg.edu:9192」のようなURLにアクセスしてPaperCutサーバのWebインタフェースへアクセスします。
PaperCutが使用するポート「9192」が表示されています。
ポートを表示するとセキュリティ・リスクにつながるという誤解があります。

PaperCut社では、ポート番号を隠してもPaperCutサーバのセキュリティを強化する効果はほとんどなく、
必要のない「不明瞭さによるセキュリティ」であると考えています。
PaperCutサーバが80や443などの標準的なポートをリッスンするように設定することも可能です。
標準的なポートを使用すると、ポート番号の入力することなくWebインタフェースへアクセスすることができるようになります。

この変更は、セキュリティを強化するためではなく、ユーザや管理者が覚えやすいURLにするためです。

問題点: まれに、PaperCutサーバでこの設定を有効化しても、ページが読み込めない場合があります。
ほとんどの場合、PaperCutサーバ上でIISなどの他のWebサーバ・アプリケーションが80番ポートを使用していることが原因です。


ファイアウォールで不要なポートを制限する

これを設定するための正確な手順は、組織の環境を保護するために使用しているホストまたはネットワークベースのファイアウォールによって異なります。

問題点: サーバ上で正しいポートが開放されていない場合、アプリケーションが予期せぬ動作をする可能性があります。
奇妙な問題を解決する場合、サーバのファイアウォールを一時的に無効化してみて問題が解決するかを確認することを推奨します。
ファイアウォールを無効化して問題が解決する場合、ファイアウォールのポリシーを見直す必要があります。


IPアドレスのホワイト・リスト化

PaperCutサーバの管理者Webインタフェースは、管理者ログイン、デバイス, サイト・サーバ, セカンダリ・プリント・サーバ,
XML Webサービスの呼び出し元, モバイル・クライアントのアクセス用プロキシ・サーバなど、
様々なコンポーネントの許可するIPアドレスを設定することができます。

セキュリティが最重要視される組織では、IPアドレスの範囲またはカンマ区切りのリストをホワイト・リスト化することを検討してください。
設定はPaperCut管理画面の <オプション> - <拡張> - <セキュリティ>から行います。

XMLWebサービスAPIは、PaperCutはlocalhost/127.0.0.1 からのアクセスのみを許可し認証トークンを必要とします。
トークンを渡さないコールはすべて拒否されます。
















問題点: PaperCutセカンダリ・サーバ, サイト・サーバ, ダイレクト・プリント・モニタを実行しているワークステーション、
WebサービスAPIを利用するサードパーティの統合機能を使用している場合は、変更後にテストを行い、
ネットワーク上のすべてのPaperCutコンポーネントがサーバと通信できることを確認する必要があります。


その他のベスト・プラクティス

下記に記載する事項は、業界のベストプラクティスであり、どのようなITインフラストラクチャやソフトウェア・スイートにも当てはまります。
この記事ではこれらがPaperCutにどのように適用されるかについて説明します。

 監査ログ: PaperCut管理画面の <ログ> - <監査ログ> にあh、誰がどのような変更を行ったかが表示されます。
       リマインダを設定して定期的に確認し、PaperCutサーバがどのように管理されているかを確認することを推奨します。

 不要な機能を無効化する: 有効な機能が少ないということは、サーバやシステムの攻撃対象が少ないことを意味します。

 最小限の特権の原則を守る: PaperCutの管理者やユーザには特定の管理者権限を付与することができます。
                 設定はPaperCut管理者Webインタフェースの<オプション> - <管理者権限> から行えます。

 サーバへのアクセスをロックする: PaperCutは、例えば外部データベースに接続するための認証情報など、
                  いくつかの重要な情報をサーバ上のファイル・システムに保存します。
                  PaperCutが実行されているサーバのローカル管理者権限を持つユーザを制限し、
                  定期的にアクセスを監査することをお勧めします。


プリンタ展開については?

プリンタ展開はプリント・キューの管理と展開を行うPaperCutのオプション機能です。
この機能には署名付き証明書のインストールや許可された暗号やプロトコルの管理などの個別の設定があります。


-------------------------

https://www.papercut.com/kb/Main/SecureYourPaperCutServer






0 件のコメント :

コメントを投稿

注: コメントを投稿できるのは、このブログのメンバーだけです。