Message Queuingが強力な暗号化を使用していません。

Microsoft.MSMQ.6.3.Rule.Alert.Event2175 (Rule)

Knowledge Base article:

概要

Message Queuingは、RC2 暗号化アルゴリズムで暗号化されたメッセージを送信するときに、40 ビットの有効な長さがある暗号化キーを使います。

原因

CryptoAPI (Windows NT 4.0 Service Pack 2 (SP2) ~ Service Pack 5 (SP5)) にバグがあったため、エンハンス RC2 キーは、有効な長さが (128 ビットではなく) 40 ビットで作成されていました。このバグは、Windows Server 2003、Windows XP Service Pack 1 (SP1)、および Windows 2000 Service Pack 4 (SP4) で修正されました。

次のオペレーティング システムでエンハンス RC2 暗号化を使用する場合は、送信側でレジストリ キーが設定されていない限り、メッセージの暗号化を解除できません。

送信元

送信先

Windows Server 2003

Windows XP

Windows XP SP1 および SP2

Windows 2000 (Service Pack 3 (SP3) まで)

Windows NT 4.0

Windows 2000 SP4 用の修正プログラムはレジストリ キーも使用しますが、既定で、それまでのサービス パックと互換性があります。

解決方法

下位互換性を有効にし、セキュリティを強化するために、次のレジストリ値がすべてのプラットフォームに追加されました。

Windows XP Service Pack 1、Windows Server 2003

Windows 2000 Service Pack 4

エンタープライズ内に、Windows NT 4.0、Windows 2000 Server SP4 未満、または Windows XP SP1 未満でMessage Queuing (MSMQ) を実行しているコンピューターがない場合は、レジストリを次のように変更することを検討してください。

レジストリ キーの削除

レジストリ キーを削除するには:

注意: レジストリを誤って編集すると、システムに重大な障害をもたらす可能性があります。レジストリを変更する前に、重要なデータのバックアップを作成するようにしてください。

レジストリ キーの追加

レジストリ キーを追加するには (Windows 2000 SP4):

注意: レジストリを誤って編集すると、システムに重大な障害をもたらす可能性があります。レジストリを変更する前に、重要なデータのバックアップを作成するようにしてください。

追加情報

詳細については、イベント ID 2175 ( http://technet.microsoft.com/en-us/library/dd337468(WS.10).aspx) を参照してください

Element properties:

TargetMicrosoft.MSMQ.6.3.Servers
CategoryConfigurationHealth
EnabledFalse
Event_ID2175
Event Source$Target/Property[Type="Microsoft.MSMQ.6.3.ServerRole"]/ServiceName$
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
RemotableTrue
Alert Message
Message Queuingが強力な暗号化を使用していません。
{0}
Event LogApplication

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.MSMQ.6.3.Rule.Alert.Event2175" Enabled="false" Target="Microsoft.MSMQ.6.3.Servers" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>ConfigurationHealth</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="Microsoft.MSMQ.6.3.ServerRole"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>2175</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>2</Severity>
<AlertOwner/>
<AlertMessageId>$MPElement[Name="Microsoft.MSMQ.6.3.Rule.Alert.Event2175.AlertName"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>