v7.0 以前のWebSphere MQの強化に関するプレゼンテーションをご覧ください。覚えておくべきことは、WMQ は何も認証しないということです。OS ID とグループに基づいて認証しますが、パスワード チェックは行われません。
QMgr とクライアントが Windows ネットワーク上に存在する状況では、接続に SID が使用されるため、有用な認証が実行されたように見えます。ただし、Windows 以外のプラットフォームからの接続が試行された場合、Windows QMgr は ID の文字列表現を使用します。たとえば、デスクトップに Linux VM がある場合、MUSR_MQADMIN というユーザー ID を簡単に作成でき、Windows QMgr は接続を受け入れます。Windows QMgr が解決できる SIDS との接続のみを受け入れるようにする設定がありますが、接続でそれらをスプーフィングするための SID 値が何であるかを知るだけの問題です。
ここでの教訓は、リモート接続を認証するように QMgr を構成する必要があるということです。WMQ v7.1 以降の QMgr には、X.509 証明書の DN をユーザー ID にマップする機能、または IP フィルタリングを実行する機能があります。v7.1 より前は、これらの関数には BlockIP2 などの出口が必要でした。キャピタルウェアは、BlockIP2 の機能に加え、ID とパスワード認証を行い、サポートされる MQAUSX を販売しています。
最初の推奨事項は、v7.1 QMgr を使用して、CHLAUTH
マッピングとフィルタリングのルールを取得することです。証明書を使用しない場合でも、v7.1 は管理接続を制限するため、攻撃者が完全な管理者権限を取得することは困難です。次に、パスワードの検証が必要な場合は、SSL チャネル (パスワードを暗号化し、単純なリプレイ攻撃を防ぐため) を、自分で作成または購入できる出口と組み合わせて使用します。
ドメイン外からの接続を許可しても、新しい問題が発生するわけではないことに注意してください。チャネル定義または出口によって MCAUSER が設定されていない v7.1 より前の Windows QMgr では、ローカル Windows ドメインからの接続であっても、リモート管理アクセスが許可されます。管理者が認証を設定していない場合、正直なユーザーは認証エラーを受け取ることになりますが、常にその QMgr を強化する必要がありました。
概要:
管理ドメイン外からのクライアントには、相互認証された TLS/SSL チャネルをお勧めします。上記でリンクした同じページには、WMQ セキュリティ ラボ ガイドと、WMQ 証明書の作成と交換をスクリプト化し、WMQ エクスプローラーを構成する方法を示すスクリプトも含まれています。
他に何をするにしMCAUSER
ても、正当なチャネルの は、構成または出口によって設定する必要があります。クライアントが ID の指定を許可されている場合、管理 ID の指定を妨げるものは何もありません。SYSTEM.DEF.*
やなどの使用されていないチャネルの場合、v7.1 以降の やSYSTEM.AUTO.*
などのローカル ID にできない値に MCAUSER を設定します。no!body
*NOACCESS