我从 MQ 安全演示中看到了一项建议,如果您不需要它,它会关闭命令服务器。我的问题是如何确定我是否真的需要它。从我的角度来看,如果没有运行目标 QMGR 的管理程序,例如 MQ Explorer 或其他向 QMGR 发送命令消息的程序,我们可以停止该命令服务器,对吗?</p>
谢谢
命令服务器由 WebSphere MQ Explorer 和 SupportPac MO71 等桌面工具和 IR-360、AppWatch、QPasa 等中央生产力/管理工具使用!和别的。它还被监视代理(例如 Tivoli Omegamon XE for Messaging 和其他工具(例如您可能编写的自定义脚本))使用。如果您不使用任何这些工具,您可以关闭命令服务器。
作为一项规则,我建议人们在永远不会使用命令服务器的情况下关闭它。大部分时间关闭它然后在批准的更改窗口期间将其打开的替代方法有点复杂。在这种情况下,您真正得到的只是减少了攻击者的机会之窗,但您用它换取了额外的复杂性。例如,当需要打开命令服务器时,您首先需要确保队列是清空的,否则攻击者可以预先加载命令队列与命令。此外,如果可以访问 QMgr 的攻击者能够让后台进程在服务器上运行,它可以轮询命令队列并在将命令放入队列之前观察输入句柄。
您可能认为访问 QMgr 和运行守护程序的能力的先决条件是一个很高的标准,但考虑到大多数商店运行 WebSphere App Server 和 WebSphere Message Broker 时都具有完整的 MQ 管理员权限。在这些情况下,每个程序或工作流都是潜在的攻击者。尽管尚未公开报告涉及 MQ 的外部违规事件,但我参与过许多任务,其中 WMQ 被善意的员工破坏,他们只是试图完成工作,并通过使用他们的应用程序的管理权限来走捷径QMgr 来“修复”一些东西。
我通常做的例外是 B2B 网关 QMgrs。我通常会在这些方面设置很多安全性,并且不介意增加的复杂性。事实上,为 B2B 使用网关 QMgr 的原因之一是,您可以将复杂性限制在一台主机上,而不是允许外部连接在许多 QMgr 上终止,并且必须在所有 QMgr 上增加安全性。因此,我使用网关并将其保护到在整个网络中都不切实际的程度。
总而言之,如果您不使用任何远程生产力或管理工具,请继续关闭命令服务器。如果您确实需要偶尔运行它,请自动启动,以便在启动命令服务器之前清除命令队列(包括后续检查以确保深度为零)。这应该被视为二级安全控制,因为如果通道允许管理访问,它的有效性将有限。因此,请尽快升级到 V7.1 或更高版本,然后使用 CHLAUTH 规则和SET AUTHREC
命令锁定通道,然后再过分担心命令服务器。