重大な脆弱性は、攻撃シナリオで悪用されることがよくあります, サービス拒否からマルウェア侵入のケースまでさまざまです. 最近、深刻な脆弱性にパッチが適用されました, 攻撃者がBerkeleyInternetNameDomainを介してサービス拒否攻撃を実行できるようにする種類 (練る) エクスプロイト. 問題の脆弱性はCVE-2016-2776で知られています, ISCによる内部テスト中に発見されました.
BINDとは?
練る ドメインネームシステムを実装するオープンソースソフトウェアです (DNS) インターネットのプロトコル. これらのプロトコルのリファレンス実装です, しかし、それは生産グレードのソフトウェアでもあります, 大量かつ高信頼性のアプリケーションでの使用に適しています. BINDという名前は「BerkeleyInternetNameDomain」の略です。, ソフトウェアは1980年代初頭にカリフォルニア大学バークレー校で作成されたためです.
加えて, BINDは、Linuxおよびその他のUnixベースのシステムの標準としても知られています。. これは、欠陥が多数のサーバーとアプリケーションに影響を与える可能性があることを意味します. すでに述べたように, BINDの脆弱性は、さまざまな組織を標的にできるDoS攻撃で悪用される可能性があります. 攻撃は無効化につながる可能性があります, シャットダウン, またはサービスを中断する, 通信網, またはウェブサイト.
研究者 10月に活発な攻撃が報告されたと言う 5, 10月に概念実証がリリースされた直後 1. 加えて, 欠陥は9.9.9-P3を含むBIND9バージョンに影響します, 9.10.x9.10.4-P3より前, および9.11.0rc3より前の9.11.x.
CVE-2016-2776の詳細
この脆弱性は、DNSサーバーが、応答サイズがデフォルトのDNS応答サイズと交差する偽造クエリへの応答を構築するときにアクティブになる可能性があります。 (512). どうやら, ISCはすでに2つの脆弱な機能を修正しています (dns_message_renderbegin () およびdns_message_rendersection() ) 脆弱性を修正するには.
トレンドマイクロが説明したように, DNSサーバーがDNSクエリの応答を作成するとき, 応答バッファのスペースを予約します (これは 512 サイズで, デフォルトでは), AnswerRRに必要なサイズで予約されたmsg->をインクリメントします. サイズもmsg->reservedsizeに加算されます, これは、応答バッファに他のリソースレコードがある場合も同じです。.
パッチを当てる前, サーバーは固定の12バイトDNSヘッダーを考慮しません, これは、関数dns_message_rendersectionを介してクエリからリソースレコードをレンダリングした後の応答トラフィックにも追加されます(). したがって、DNS応答の場合(r.length) トラフィックは未満です 512 バイト (msg->予約済み), 関数はtrueを返します, ただし、固定の12バイトヘッダーを追加すると、の固定予約サイズを超えるとサービスが終了します。 512 バイト.
このパッチにより、サーバーはDNSヘッダーの長さを応答の合計の長さから次のように減らすことができます。 12 バイト. 次に、それを予約済みのバッファサイズと比較して、応答サイズの正しい計算を提供します.
利用可能なアップデート:
- 練る 9 バージョン9.9.9-P3
- 練る 9 バージョン9.10.4-P3
- 練る 9 バージョン9.11.0rc3
- 練る 9 バージョン9.9.9-S5