IIJ-SECT

IIJ

 

Security Diary

HOME > Security Diary > CVE-2011-4313 BIND9 キャッシュサーバの脆弱性について

CVE-2011-4313 BIND9 キャッシュサーバの脆弱性について

この脆弱性は2011年11月16日にbind-users MLへの投稿を発端として発覚しました。 現象としては以下のメッセージと共にnamedプロセスが異常終了します。

INSIST(! dns_rdataset_isassociated(sigrdataset))

異常終了の起きている箇所は2010年12月に見つかった脆弱性と同じであり 当初はこの脆弱性との関係も疑われました。その脆弱性のアドバイザリは以下です。
BIND: cache incorrectly allows a ncache entry and a rrsig for the same type

最初の報告の後に対策されているはずの複数のバージョンでの発生、複数の組織から報告があり 新しい脆弱性として対策が開始されました。発覚した翌日にはアドバイザリと対策版も公開されました。 この脆弱性はクライアントからの名前解決に応えるキャッシュサーバのみが影響を受け ゾーンを保持するコンテンツサーバは影響を受けない事も記載されています。 今回の脆弱性のアドバイザリは以下です。
BIND 9 Resolver crashes after logging an error in query.c

通常であれば、対策版の公開、その検証、適用を経て対応完了となりますが 今回はリリースされた対策版が回避策に過ぎず、根本的解決には至っていません。 それは今回のリリースにおけるソースコードの修正方法からも読み取れます。

BIND9は整合性チェックのために数多くのINSISTマクロ(実態はassert関数)が 仕込まれており、想定しない状態になった場合は即座にプロセスが異常終了するように なっています。今回の異常終了はその状態に陥ったため発生しています。

その状態になってしまう事自体が、考慮漏れやプログラムのバグが原因ですが 実環境で既に発生しておりそのままでは影響も大きいため、可能な限り安全に 続行可能なエラー処理に置き換えています。 つまり、落ちなくなっただけで根本的修正にはなっていません。 このような修正は本意ではないでしょうし、苦肉の策であると推測されます。 いずれは根本的対策を施したバージョンがリリースされるはずなので引き続き注意が必要です。

-
 
カテゴリー :
脆弱性  
タグ :
Vulnerability   BIND  
この記事のURL :
https://sect.iij.ad.jp/d/2011/11/160759.html