PDBCopy ツール

適用対象: Visual Studio 2012 Update 4Visual Studio 2013 Update 5Visual Studio 2015 Update 3

概要


この資料では、PDBCopy ツール (pdbcopy.exe) の修正プログラム パッケージを記載しています。 この修正プログラムには、CVE-2018-1037 に記載されている PDB のセキュリティの問題がないか PDB ファイルをスキャンして更新するツールが含まれています。 詳細については、「この修正プログラムで修正される問題」を参照してください。

注意事項

  • この脆弱性は主に、Visual Studio 2015 および Visual Studio 2017 を使用して作成された PDB に影響します。
  • この脆弱性は、作成後に更新された PDB にのみ影響します。
  • このツールは、PDB ファイルを公開する開発者にのみ必要です。

この更新プログラムで修正される問題


この修正プログラムは、CVE-2018-1037 に記載されている、PDB ファイルが Mspdbsrv.exe などの既存の PDB ファイルを更新するプロセスによって変更されるとき、PDB ファイルに初期化されていないヒープ コンテンツが含まれることがある PDB のセキュリティの問題を修正します。

PDBCopy ツールを使用して、既存の PDB ファイルをスキャンして更新する

この修正プログラムに含まれる PDBCopy ツールは、CVE-2018-1037 に記載されているセキュリティの問題がないか PDB ファイルをスキャンします。 このツールはまた、影響を受けるメモリ ブロックを報告し 、PDB ファイルを更新して不適切に開示された PDB ファイル内のメモリを削除することもできます。

このツールは、修正プログラムを適用されたバージョンの Visual Studio を持つ PDB ファイルを再生成することの代わりになる別の方法として提供されます。 PDB ファイルの内部タイムスタンプは変更しません。 このツールは、すべてのバージョンの Visual Studio を使用して作成される PDB に有効です。

使用法: PDBCOPY.exe <target.pdb> <backup.pdb> -CVE-2018-1037 {[verbose|autofix]}

引数

  • target.pdb: 更新する PDB ファイルのファイル名です。
  • backup.pdb: PDB ファイルのバックアップ コピーに使用する名前です。
  • -CVE-2018-1037: この切り替えにより、ツールは PDB ファイルが問題の影響を受けているかどうか報告するようになります。また、オプションの引数が影響を受けるメモリ ブロックを報告し、適切な既存の PDB ファイルを更新して開示されたメモリを削除できます。 この切り替えは、その他の PDBCopy の切り替えとは切り離されたものであり、  次の 2 つのオプションの引数を使用します。
    • verbose: 切り替えによって削除されたオリジナルの PDB ファイルからメモリ ブロックをダンプします。
    • autofix: PDB ファイル内の影響を受けるメモリ ブロックを更新し、0 で埋めます。

解説

PDBCopy.exe は適切な target.pdb を更新します。 ツールには、バックアップの PDB の有効なファイル名が必要です。 Target.pdb ファイルに更新が必要なときにのみバックアップの PDB が作成されます。 バックアップの PDB  を削除するまえに、修正された PDB を十分にテストしてください。

  • pdbcopy.exe target.pdb backup.pdb -CVE-2018-1037

    target.pdb が CVE 2018-1037 の影響を受けているかどうか報告します。

  • pdbcopy.exe target.pdb backup.pdb -CVE-2018-1037 verbose

    target.pdb が CVE 2018-1037 の影響を受けているかどうか報告します。また、影響を受けている場合は、target.pdb に書き込まれた初期化されていないメモリを表示します。

  • pdbcopy.exe target.pdb backup.pdb -CVE-2018-1037 autofix

    target.pdb が CVE 2018-1037 の影響を受けているかどうか報告します。また、影響を受けている場合は、target.pdb に書き込まれた初期化されていないメモリを 0 で埋めます。

  • pdbcopy.exe target.pdb backup.pdb -CVE-2018-1037 verbose autofix

    target.pdb が CVE 2018-1037 の影響を受けているかどうか報告します。また、影響を受けている場合は、target.pdb に書き込まれた初期化されていないメモリを表示し、target.pdb に書き込まれた初期化されていないメモリを 0 で埋めます。

  • pdbcopy.exe target.pdb backup.pdb -CVE-2018-1037 autofix verbose

    target.pdb が CVE 2018-1037 の影響を受けているかどうか報告します。また、影響を受けている場合は、target.pdb に書き込まれた初期化されていないメモリを表示し、target.pdb に書き込まれた初期化されていないメモリを 0 で埋めます。

この修正プログラムの入手方法


次のファイルが ダウンロード可能です。

アーキテクチャ リンク
x64 PDBCopy.exe
x86 PDBCopy.exe


マイクロソフトのサポート ファイルをダウンロードする方法の詳細については、次のサポート技術情報を参照してください。

119591 オンライン サービスからマイクロソフトのサポート ファイルを入手する方法

マイクロソフトでは、アップロード時点の最新のウイルス検査プログラムを使用して、 配布ファイルのウイルス チェックを行っています。 配布ファイルはセキュリティで保護されたサーバー上に置かれており、権限のない第三者が無断でファイルを変更できないようになっています。

詳細情報


必要条件

この修正プログラムは、次のオペレーティング システム上にインストールされて実行されます:

  • Windows 10 Version 1507 および これ以降のバージョン: Home、Professional、Education、および Enterprise (LTSB と S は非サポート)
  • Windows Server 2016: Standard および Datacenter
  • Windows 8.1 (更新プログラム KB 2919355 を適用した状態): Core、Professional、および Enterprise
  • Windows Server 2012 R2 (更新プログラム KB 2919355 を適用した状態): Essentials、Standard、および Datacenter
  • Windows 7 SP1 (最新の Windows Updates を適用した状態): Home Premium、Professional、Enterprise、および Ultimate

再起動の必要性

この修正プログラムはシステムの再起動を必要としません。

修正プログラムの置き換えに関する情報

この修正プログラムを適用しても、他の修正プログラムが置き換えられることはありません。

ファイル情報