概要
この記事では、 PDBCopy ツール (pdbcopy.exe) の修正プログラム パッケージについて説明します。 修正プログラムには、 CVE-2018-1037 で説明されている PDB セキュリティの問題について PDB ファイルをスキャンして更新するツールが含まれています。 詳細については、「この修正プログラムで修正される問題」セクションを参照してください。
注
- この脆弱性は主に、Visual Studio 2015 と Visual Studio 2017 を使用して作成された PDB に影響します。
- この脆弱性は、作成後に更新された PDB にのみ影響します。
- このツールは、PDB ファイルをパブリックに共有する開発者のみが必要です。
この修正プログラムで修正される問題
この修正プログラムは 、CVE-2018-1037 で説明されている PDB セキュリティの問題に対処します。PDB ファイルには、Mspdbsrv.exe などの既存の 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: Updatesし、PDB ファイル内の影響を受けるメモリ ブロックを 0 で埋めます。
解説
PDBCopy.exe は、target.pdb をインプレースで更新します。 このツールには、バックアップ PDB の有効なファイル名が必要です。 バックアップ PDB は、target.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 に書き込まれた初期化されていないメモリを表示します。 - target.pdb backup.pdb の pdbcopy.exe -CVE-2018-1037 の自動修正
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 に書き込まれた初期化されていないメモリがゼロで表示されます。 - pdbcopy.exe target.pdb backup.pdb -CVE-2018-1037 autofix verbose
target.pdb が CVE 2018-1037 の影響を受けるかどうかを報告します。その場合、target.pdb に書き込まれた初期化されていないメモリが表示され、target.pdb に書き込まれた初期化されていないメモリがゼロで表示されます。
この修正プログラムを入手する方法
次のファイルをダウンロードできます。
| アーキテクチャ | リンク |
|---|---|
| x64 | PDBCopy.exe |
| x86 | PDBCopy.exe |
Microsoft サポート ファイルをダウンロードする方法の詳細については、Microsoft サポート 技術情報の次の記事を参照してください。
119591 オンライン サービスからマイクロソフトのサポート ファイルを入手する方法
4013443 「更新プログラムの表示または非表示」トラブルシューティング ツール パッケージマイクロソフトでは、アップロード時点の最新のウイルス検査プログラムを使用して、 配布ファイルのウイルス チェックを行っています。 配布ファイルはセキュリティで保護されたサーバー上に置かれており、権限のない第三者が無断でファイルを変更できないようになっています。 配布ファイルはセキュリティで保護されたサーバー上に置かれており、権限のない第三者が無断でファイルを変更できないようになっています。
詳細情報
前提条件
この修正プログラムは、次のオペレーティング システムにインストールされ、実行されます。
- Windows 10 バージョン 1507 以降: Home、Professional、Education、Enterprise (LTSB および S はサポートされていません)
- Windows Server 2016: Standard、Datacenter
- Windows 8.1 (Update KB 2919355を使用): Core、Professional、Enterprise
- Windows Server 2012 R2 (Update KB 2919355を使用): Essentials、Standard、Datacenter
- Windows 7 SP1 (最新の Windows Updates付き): Home Premium、Professional、Enterprise、Ultimate
再起動の必要性
この修正プログラムでは、システムの再起動は必要ありません。
修正プログラムの置き換えに関する情報
この修正プログラムは、他の修正プログラムを置き換えるものではありません。
ファイル情報
ファイル ハッシュ情報
| ファイル名 | SHA1 ハッシュ | SHA256 ハッシュ |
|---|---|---|
| pdbcopy.exe (x64 の場合) | DE41225B30A79E266F16B5707D0E70C0535DF451 | A2885579DDAC6A1E53B4BA762B539054BB53332A18ED2A7DE1600323BB009FC0 |
| pdbcopy.exe (x86 の場合) | 7817E670DB6213C034EE8007C0AE21B6A5E20024 | C62C6A49238DE83FC696BF08BC78EA58E50ECC8CCA73BD1E6E59A95653323184 |