KB4512011 - 修正: SQL インジェクション攻撃を防ぐために Sql\Sqlrepl\xpreplclr.net\ReplCmdDataReader.cs のプレファスト警告 (62100) を修正します

適用先
SQL Server 2014 Service Pack 2 - duplicate (do not use) SQL Server 2014 Developer - duplicate (do not use) SQL Server 2014 Enterprise - duplicate (do not use) SQL Server 2014 Enterprise Core - duplicate (do not use) SQL Server 2014 Standard - duplicate (do not use)

現象

SQL レプリケーション コンポーネントの Microsoft Auto Code Review (OACR) チェック中に、SQL インジェクション攻撃に対して脆弱なコードがあるかどうかを検証するために、次のようなエラー メッセージが表示されます。

F:\ds_maindev1\Sql\Sqlrepl\xpreplclr.net\ReplCmdDataReader.cs (1004): OACR warning 62100: 'ReplCmdsReader.sp_printstatement(string)' の 'SqlCommand.CommandText.set(string)' に渡されるクエリ文字列には、次の変数 'strCmd' が含まれている可能性があります。 これらの変数のいずれかがユーザー入力から取得される可能性がある場合は、文字列連結を使用してクエリを作成する代わりに、ストアド プロシージャまたはパラメーター化された SQL クエリを使用することを検討してください。 (詳細については、'oacr fxcop SQL:amd64chk /target asm_tranrepl.dll' を実行してください)

関数: Microsoft.SqlServer.Replication.ReplCmdsReader (-1)

解決策

この問題は、SQL Serverの次の累積的な更新プログラムで修正されています。

SQL Serverの累積的な更新プログラムについて:

SQL Serverの各新しい累積的な更新プログラムには、すべての修正プログラムと、以前の累積的な更新プログラムに含まれていたすべてのセキュリティ修正プログラムが含まれています。 SQL Serverの最新の累積的な更新プログラムを確認してください。

参考資料

マイクロソフトでソフトウェア更新プログラムの説明に使用する用語集を参照してください。