
Proof of Concept for CVE-2020-0601.

badecparams.py は、脆弱性を悪用する中間証明機関を生成し、Authenticode および TLS 証明書を発行します。TLS 証明書は、Microsoft Edge および Internet Explorer で拡張検証 (Extended Validation) を持ちます。
httpd.py は、コマンドラインで指定された PEM エンコードされた証明書チェーンを使用して、www サブフォルダの内容を HTTPS で提供します。
./badecparams.py
./httpd.py localhost.key
Windows Update は、公開鍵ピンニングと RSA 鍵を使用しているため脆弱ではありません。
最新の Windows Defender アンチウイルス定義は、Microsoft のパッチが適用されていないマシンでも、悪意のある Authenticode 証明書で署名された実行ファイルを検出します。
Microsoft Edge、Internet Explorer、Chromium (およびその派生ブラウザ) は TLS の亜種に対して脆弱です。Firefox は脆弱ではありません。これは、Mozilla の Network Security Services (NSS) が明示的な EC パラメータをサポートしておらず、証明書検証に独自の実装を使用しているためです。
Chrome 79.0.3945.130 はこの脆弱性を修正し、Microsoft のパッチが適用されていないマシンでも NET::ERR_CERT_INVALID をスローします。