
Impacketを使用して、Windowsドメインコントローラー上のNetlogon認証バイパスを介したCVE-2020-1472 (Zerologon) 脆弱性をテストするPythonスクリプト。
Impacketライブラリを使用してZerologonエクスプロイト(CVE-2020-1472)の脆弱性をテストするPythonスクリプト。
Netlogon認証バイパスを試みます。スクリプトはバイパスに成功すると即座に終了し、Netlogon操作は一切行いません。ドメインコントローラーがパッチ済みの場合、検出スクリプトは2000ペアのRPC呼び出しを送信した後に諦め、ターゲットは脆弱ではないと結論付けます(偽陰性確率は0.04%)。
Python 3.7以上とPipが必要です。以下のように依存関係をインストールしてください:
pip install -r requirements.txt
なお、pip install impacketでも動作するはずですが、将来のImpacketバージョンでスクリプトが壊れない限りは問題ありません。
このスクリプトはDCまたはバックアップDCを対象として使用できます。読み取り専用DCでもおそらく動作しますが、テストは行っていません。EXAMPLE-DCという名前のドメインコントローラーでIPアドレスが1.2.3.4の場合、次のようにスクリプトを実行します:
./zerologon_tester.py EXAMPLE-DC 1.2.3.4
DC名はそのNetBIOSコンピューター名である必要があります。この名前が正しくない場合、スクリプトはSTATUS_INVALID_COMPUTER_NAMEエラーで失敗する可能性があります。
この脆弱性に関するホワイトペーパーは、こちらで公開予定です:https://www.secura.com/blog/zero-logon 9月14日(月)に公開。
ローカルでスクリプトを実行する代わりに、Dockerコンテナを次のように実行することもできます:
sudo docker run -it ttervoort/zerologon-tester EXAMPLE-DC 1.2.3.4