ニュース

「BIND 9」に脆弱性、リモートからnamedが異常終了、JPRSやJPCERT/CCが注意喚起

 Internet Systems Consortium(ISC)が開発・提供するDNSソフト「BIND 9」において、リモートからのサービス運用妨害(DoS)攻撃により、namedを終了させられてしまうおそれのある脆弱性2件があるとして、株式会社日本レジストリサービス(JPRS)やJPCERTコーディネーションセンター(JPCERT/CC)などが注意を喚起。ISCがリリースした最新バージョン「BIND 9.12.1-P2」への更新を推奨している。

ゾーンデータベースの参照回数カウント処理における不具合による「CVE-2018-5736」

 BIND 9の脆弱性「CVE-2018-5736」は、ゾーンデータベースの参照回数を数える処理における不具合により、攻撃者が有効なNOTIFYメッセージをサーバーに直接送りつけることができる場合、リモートからゾーン転送を開始させられる。これを立て続けに複数回実行されると、「rbtdb.c」においてassertion failureが引き起こされ、namedが異常終了するという。

 なお、通常の運用ではこのような状況は発生しないとのこと。また、対象となるのは、namedをセカンダリサーバー(スレーブサーバー)として運用している場合のみとなる。

 またISCでは、CVE-2018-5736に対する回避策として、信頼された送信元からのみ、NOTIFYメッセージを受け付けるように設定することを上げている。

「serve-stale」における不具合による「CVE-2018-5737」

 脆弱性「CVE-2018-5737」は、DDoS攻撃や事故などによって権威DNSサーバーに到達できなくなった際に、フルリゾルバーが期限切れのキャッシュを使って名前解決を継続可能にするための機能である「serve-stale」における不具合によるもの。この機能はBIND 9.12.0以降でサポートされている。

 この不具合により、rbtdb.cにおいてassertion failureを引き起こされ、namedが異常終了する。設定ファイル(named.conf)において“stale-answer-enable no;”を指定し、serve-staleを無効にしていても発生するという。

 また、DNSSECバリデーターとなっているリゾルバーにおいて、DNSSEC検証み済のキャッシュされた応答を不在応答やワイルドカードによる応答の生成に利用し、名前解決のパフォーマンスの向上や、遅延・負荷の減少を図る機能である「NSEC aggressive negative caching」と、serve-stale間の相互作用の問題により、名前解決におけるループや過剰なログの記録が発生する場合もあるとのこと。

 なお、この脆弱性は、namedをフルリゾルバー(キャッシュDNSサーバー)として運用している場合にのみ対象となる。

 CVE-2018-5737に対する回避策としては、「named.conf」に“max-stale-ttl 0;”を設定することを挙げている。ただし、この設定を行うと、serve-stale機能は無効となる。

 影響を受けるバージョンは、いずれの脆弱性も「9.12.0」~「9.12.1」。ISCは、これらの脆弱性の深刻度を“中(Medium)”と評価している。共通脆弱性評価システムCVSS v3のスコアは、CVE-2018-5736が5.3、CVE-2018-5737が5.9。