ネームサーバ管理者の方々へ
一般社団法人日本ネットワークインフォメーションセンター
BIND 9における複数の脆弱性について(2020年8月)
2020年8月20日(現地時間)、複数のバージョンのBIND 9に存在する、 五つの脆弱性の情報がISC (Internet Systems Consortium)から公開されました。 それぞれの脆弱性の内容は次の通りです。
- 細工した大きなTCPペイロードを送信することでBINDを停止させることができるもの
- フォワーディングとQNAME minimizationの実装不具合によりBINDを停止させることができるもの
- TSIG署名応答を細工することによってBINDを停止させることができるもの
- PKCS#11に関するコードの不具合のため、細工した問い合わせを署名されたゾーンに送ることによりBINDを停止させることができるもの
- とあるサブドメインのルールがゾーンのすべてに適用されるようになってしまうというもの
ご参考までに、アナウンスの原文へのリンクを以下に掲載します。 管理者の皆さまにおかれましては、 ネームサーバソフトウェアのご確認など適切な処置をお願いいたします。
記
CVE-2020-8620: 細工した大きなTCPペイロードによりアサーション失敗が発生する
libuv network managerが最大バッファサイズを正しく指定していないため、 細工された大きなTCPペイロードを受信したときにアサーション失敗が起きる場合があります。
攻撃者が該当のサーバにTCP接続できる場合、 本脆弱性を利用することでサーバを停止させることができます。
CVE-2020-8621: フォワーディング後にQNAME minimizationを適用しようとするとアサーション失敗が発生する
DNSクエリのフォワーディング機能とQNAME minimizationは本来互換性がありません。 しかしforward first機能を有効にしたBINDが、 応答が得られないときに条件によってはQNAME minimizationを適用してしまうことがありました。 その場合、データの矛盾が発生する可能性があり、 結果としてアサーションの失敗となってBINDが終了する原因となります。
CVE-2020-8622: 切りつめられたTSIG応答によりアサーション失敗が発生する
TSIG署名された応答が切りつめられた(truncated)場合、 署名検証する処理でアサーションの失敗が発生する可能性があります。
攻撃者がTSIG署名されたDNSメッセージをネットワーク経路上で受信できる場合、 そのメッセージを切り詰めサーバに送信することで、 サーバを停止させることができます。
また、ネットワーク経路上にいない攻撃者であっても、 TSIG署名がされたメッセージが推測可能であれば、 応答を偽装することでサーバを停止させることができます。
CVE-2020-8623: PKCS#11のコード不具合のため、リモートからアサーション失敗を引き起こすことができる
BINDが--enable-native-pkcs11オプションつきでビルドされている場合、 RSA署名されたゾーンに対して細工したクエリを送ることで、 アサーション失敗を発生させる可能性があります。
攻撃者が本脆弱性を持ったサーバにクエリを送ることができる場合、 サーバを停止できる可能性があります。
攻撃を成立させるには以下の条件を満たす必要があります。
- --enable-native-pkcs11オプションでビルドされたBINDであること
- ゾーンがRSA鍵で署名されていること
- 攻撃者からの問い合わせを受け付けていること
CVE-2020-8624: "subdomain" タイプのupdate-policyルールが正しく適用されない
4885 [RT #47126] の変更により、 "subdomain"タイプのルールが"zonesub"タイプと同様に扱われてしまい、 サブドメインのルールがゾーンのすべてに適用されるようになっていました。
そのため、ゾーンの一部のサブセットを変更する権限のある攻撃者は、 本脆弱性を利用してゾーンの他のコンテンツを更新できる可能性があります。
修正されたバージョンとダウンロードページ
BIND 9.11.22
BIND 9.16.6
BIND 9.17.4
BIND 9.11.22-S1 (サポート版)
ISCからのアナウンス
- CVE-2020-8620: A specially crafted large TCP payload can trigger an assertion failure in tcpdns.c
- https://kb.isc.org/docs/cve-2020-8620
- CVE-2020-8621: Attempting QNAME minimization after forwarding can lead to an assertion failure in resolver.c
- https://kb.isc.org/docs/cve-2020-8621
- CVE-2020-8622: A truncated TSIG response can lead to an assertion failure
- https://kb.isc.org/docs/cve-2020-8622
- CVE-2020-8623: A flaw in native PKCS#11 code can lead to a remotely triggerable assertion failure in pk11.c
- https://kb.isc.org/docs/cve-2020-8623
- CVE-2020-8624: update-policy rules of type "subdomain" are enforced incorrectly
- https://kb.isc.org/docs/cve-2020-8624
参考情報
JPRS
- BIND 9.xの脆弱性(DNSサービスの停止)について(CVE-2020-8620)
- バージョンアップを推奨 - - https://jprs.jp/tech/security/2020-08-21-bind9-vuln-libuv.html
- BIND 9.xの脆弱性(DNSサービスの停止)について(CVE-2020-8621)
- バージョンアップを推奨 - - https://jprs.jp/tech/security/2020-08-21-bind9-vuln-forwarding.html
- BIND 9.xの脆弱性(DNSサービスの停止)について(CVE-2020-8622)
- バージョンアップを推奨 - - https://jprs.jp/tech/security/2020-08-21-bind9-vuln-tsig.html
- BIND 9.xの脆弱性(DNSサービスの停止)について(CVE-2020-8623)
- ビルド時に「--enable-native-pkcs11」を指定した場合にのみ対象、バージョンアップを推奨 - - https://jprs.jp/tech/security/2020-08-21-bind9-vuln-pkcs11.html
- BIND 9.xの脆弱性(サービス提供者が意図しないDynamic Updateの許可)について(CVE-2020-8624)
- バージョンアップを推奨 - - https://jprs.jp/tech/security/2020-08-21-bind9-vuln-updatepolicy.html
JPCERT/CC
- ISC BIND 9 に対する複数の脆弱性に関する注意喚起
- https://www.jpcert.or.jp/at/2020/at200035.html
以上