Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2020-1971 — 自動スキャンおよびリモートエクスプロイトスクリプト for CVE-2020-1971 (OpenSSLのNULLポインタ参照)。パッチ適用済みのOpenSSL 1.1.1iソースと、LinuxおよびWindows向けのインストール/更新スクリプトを含みます。 | Kitploit
ツール/GitHubGitHub/honeyvig/cve-2020-1971
脆弱性スキャナー脆弱性分析エクスプロイト暗号化
GitHubhoneyvig/cve-2020-1971

CVE-2020-1971

自動スキャンおよびリモートエクスプロイトスクリプト for CVE-2020-1971 (OpenSSLのNULLポインタ参照)。パッチ適用済みのOpenSSL 1.1.1iソースと、LinuxおよびWindows向けのインストール/更新スクリプトを含みます。

リポジトリを見る
27ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2020-1971

CVE-2020-1971 自動スキャン&リモートエクスプロイトスクリプト。自動ローカルスキャン&パッチスクリプト。

現在開発中

  • OpenSSL 1.1.1i のパッチ適用済みソースコード
  • ソースからのインストール/更新 .deb スクリプト 現在開発中 5:38pm 完了 5:50pm
  • ソースからのインストール/更新 (Windows) 現在開発中 6:06pm 完了 6:40pm
  • 自己解凍 EXE ダウンロードはこちら: 32-bit/64-bit
  • 脆弱性/リモートエクスプロイトスクリプトの自動スキャン (ローカル)
  • 脆弱性/リモートエクスプロイトスクリプトの自動スキャン (リモート)

2020年12月9日

5:03pm

現在、スクリプトを開発中で、今夜までにすべてをリリースしたいと考えています。現時点では、このリポジトリにはパッチ適用済みの OpenSSL 1.1.1i ソースのみが含まれています。現在、インストール/アップデートパッチスクリプトを作成中です。


5:50pm

Debian/Ubuntu Linux インストールスクリプトをアップロードしました。インストール手順は「Linux インストール」を参照してください。


6:40pm

  1. Windows のソースからのインストール手順は、Windows ソースコードからのインストール を参照してください。
  2. セルフインストーラ 32/64 ビットをアップロードしました ダウンロードはこちら: 32-bit/64-bit

脆弱性の説明

X.509 GeneralName 型は、異なるタイプの名前を表現するための汎用型です。その名前タイプの1つは EDIPartyName として知られています。OpenSSL は GENERAL_NAME_cmp 関数を提供しており、これは GENERAL_NAME の異なるインスタンスを比較して等しいかどうかを確認します。この関数は、両方の GENERAL_NAME に EDIPARTYNAME が含まれている場合、誤った動作をします。NULL ポインタの逆参照とクラッシュが発生する可能性があり、サービス拒否攻撃につながる可能性があります。

OpenSSL 自体は GENERAL_NAME_cmp 関数を2つの目的で使用します

  1. 利用可能な CRL と X509 証明書に埋め込まれた CRL 配布ポイント名との比較

  2. タイムスタンプ応答トークン署名者がタイムスタンプ機関名と一致することを確認する場合(API 関数 TS_RESP_verify_response および TS_RESP_verify_token を介して公開)

攻撃者が比較される両方のアイテムを制御できる場合、その攻撃者はクラッシュを引き起こす可能性があります。例えば、攻撃者がクライアントまたはサーバーを騙して、悪意のある証明書を悪意のある CRL と照合するように仕向けた場合、これが発生する可能性があります。

一部のアプリケーションは、証明書に埋め込まれた URL に基づいて CRL を自動的にダウンロードすることに注意してください。このチェックは、証明書と CRL の署名が検証される前に行われます。OpenSSL の s_server、s_client、および verify ツールは、自動 CRL ダウンロードを実装する "-crl_download" オプションをサポートしており、この攻撃がこれらのツールに対して機能することが実証されています。

関連のないバグにより、影響を受けるバージョンの OpenSSL は EDIPARTYNAME の正しいエンコーディングを解析または構築できません。ただし、OpenSSL のパーサーが受け入れる不正な形式の EDIPARTYNAME を構築し、それによってこの攻撃をトリガーすることが可能です。

影響を受けるのは、すべての OpenSSL 1.1.1 および 1.0.2 バージョンです。他の OpenSSL リリースはサポートが終了しており、チェックされていません。OpenSSL 1.1.1i で修正済み(影響を受ける 1.1.1-1.1.1h)。OpenSSL 1.0.2x で修正済み(影響を受ける 1.0.2-1.0.2w)。


Linux インストール

root@kitploit:~
sudo chmod +x Linux_Patched_Install_From_Source_Script

実行:

root@kitploit:~
sudo ./Linux_Patched_Install_From_Source_Script

Windows ソースコードからのインストール

"Native" OpenSSL は実行時に Windows API を直接使用します。 ネイティブ OpenSSL をビルドするには、次のいずれかを使用できます:

Microsoft Visual C++ (MSVC) C コンパイラをコマンドラインで使用

または

MinGW クロスコンパイラ GNU ライクな開発環境 MSYS2 上で実行 または Linux または Cygwin 上で実行

"Hosted" OpenSSL は、ビルド時(GNU/Unix シェル、コンパイラ、ツールを使用)および実行時に外部の POSIX 互換レイヤーに依存します。 このオプションでは Cygwin を使用できます。

Visual C++ ネイティブビルド、別名 VC-*

要件の詳細

INSTALL.md に記載されている要件と手順に加えて、以下も必要です:

  • Perl。 Strawberry Perl、http://strawberryperl.com/ から入手可能 詳細は NOTES.PERL をお読みください。CPAN の使用も含まれます。 代替として ActiveState Perl、https://www.activestate.com/ActivePerl の場合、Perl モジュール Win32/Console.pm を明示的にビルドする必要がある場合があります。 https://platform.activestate.com/ActiveState 経由でダウンロードしてください。

  • Microsoft Visual C コンパイラ。

  • Netwide Assembler (NASM)、https://www.nasm.us から入手可能 NASM のみがサポートされるアセンブラであることに注意してください。

クイックスタート

  1. Perl をインストール

  2. NASM をインストール

  3. Perl と NASM の両方が %PATH% に含まれていることを確認

  4. 管理者権限で Visual Studio Developer Command Prompt を使用し、 意図したアーキテクチャに応じてバリアントを選択します。 または "cmd" を実行し、"vcvarsall.bat" をオプション x86、 x86_amd64、x86_arm、x86_arm64、amd64、amd64_x86、amd64_arm、または amd64_arm64 のいずれかで実行します。 これにより、nmake.exe、cl.exe などに必要な環境変数が設定されます。 以下も参照: https://docs.microsoft.com/cpp/build/building-on-the-command-line

  5. OpenSSL ソースディレクトリのルートから次を実行 perl Configure VC-WIN32 (32 ビット OpenSSL が必要な場合) perl Configure VC-WIN64A (64 ビット OpenSSL が必要な場合) または perl Configure (Configure にプラットフォームを自動判別させる場合)

  6. nmake

  7. nmake test

  8. nmake install

完全なインストール手順、またはいずれかの段階で問題が発生した場合は、 INSTALL.md ファイルを確認してください。

インストールディレクトリ

デフォルトのインストールディレクトリは環境変数から導出されます。

VC-WIN32 の場合、次のデフォルトが使用されます:

root@kitploit:~
 PREFIX:      %ProgramFiles(86)%\OpenSSL
 OPENSSLDIR:  %CommonProgramFiles(86)%\SSL

VC-WIN64 の場合、次のデフォルトが使用されます:

root@kitploit:~
 PREFIX:      %ProgramW6432%\OpenSSL
 OPENSSLDIR:  %CommonProgramW6432%\SSL

これらの環境変数が存在しない場合(例えば純粋な Win32 インストール)、 次の代替が使用されます:

root@kitploit:~
 PREFIX:      %ProgramFiles%\OpenSSL
 OPENSSLDIR:  %CommonProgramFiles%\SSL

また、これらのディレクトリは通常書き込み保護されており、 アカウントが Administrators グループに属している場合でも同様です。 これを回避するには、コマンドプロンプトを右クリックし、 「管理者として実行」を選択してから 'nmake install' を実行してください。 もう1つの解決策は、設定時に --prefix と --openssldir を使用して、 別のディレクトリセットを選択することです。

Universal Windows Platform ビルドの特別な注意事項、別名 VC-*-UWP

  • UWP ターゲットは静的および動的ライブラリのビルドのみをサポートします。

  • コンパイル前にプラットフォームタイプを "uwp" に、ターゲットアーキテクチャを "vcvarsall.bat" で定義する必要があります。例えば、"arm64" ビルドが必要な場合、 "vcvarsall.bat x86_arm64 uwp" を実行してください。


参考文献

参考文献は読者の便宜のために提供されており、脆弱性の識別に役立ちます。

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=2154ab83e14ede338d2ede9bbe5cdfce5d5a6c9eURL

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=2154ab83e14ede338d2ede9bbe5cdfce5d5a6c9eCONFIRM

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f960d81215ebf3f65e03d4d5d857fb9b666d6920URL

https://git.openssl.org/gitweb/?p=openssl.git;a=commitdiff;h=f960d81215ebf3f65e03d4d5d857fb9b666d6920CONFIRM

https://www.openssl.org/news/secadv/20201208.txtURL:https://www.openssl.org/news/secadv/20201208.txtDEBIAN:DSA-4807URL

https://www.debian.org/security/2020/dsa-4807FREEBSD:FreeBSD-SA-20:33URL

https://security.FreeBSD.org/advisories/FreeBSD-SA-20:33.openssl.asc


ツールをダウンロード