2016.08.25(木)

BIND 9 の TKEY 機能における実装不備により遠隔からサービス不能にされてしまう脆弱性(Scan Tech Report)

脆弱性と脅威 エクスプロイト

1.概要
DNS サーバを構築するためのソフトウェアである BIND 9 に遠隔からサービスを不能とすることが可能となる脆弱性が報告されています。当該脆弱性を利用して攻撃者に DNS サーバの機能を停止され偽の DNS サーバを設立されることにより、攻撃対象者は悪意のある Web コンテンツに誘導されてしまう可能性があります。


2.深刻度(CVSS)
7.8
https://nvd.nist.gov/cvss.cfm?version=2&name=CVE-2015-5477&vector=(AV:N/AC:L/Au:N/C:N/I:N/A:C)


3.影響を受けるソフトウェア※1
以下のバージョンの BIND が当該脆弱性の影響を受ける可能性があります。

- 9.1.0 から 9.8.x 系の全てのバージョン
- 9.9.0 から 9.9.7-P1
- 9.10.0 から 9.10.2-P2

ただし、以上に示したバージョンのソフトウェアでも、OS のベンダが独自にパッチを適用している場合があるため、パッチが場合は当該脆弱性の影響を受けません。


4.解説
DNS サーバを構成するソフトウェアである BIND のバージョン 9 系に、遠隔からサービスを停止させることが可能な脆弱性が報告されています。

BIND 9 では、マスタサーバがスレーブサーバの間でアップデート情報を転送する際に、攻撃者による中間者攻撃などを防ぐために、TSIG 機能というものが存在します。TSIG 機能では、暗号鍵やパスワードによる認証機能を提供しています。当該機能では、サーバとクライアントの間でパスワードを安全に交換するために、TKEY 機能により公開鍵を用いてパスワードの交換を行います。
脆弱性は、TKEY 機能を構成するプログラム lib/dns/tkey.c に含まれる dns_tkey_processquery() メソッドの dns_message_findname() 関数内での変数処理に不備があるため生じています。

DNS プロトコルでは、どのような情報が要求されているかをサーバに伝えるためにクエリレコードが用いられます。攻撃では、クエリレコードのパラメータの内 Name パラメータと Type パラメータが用いられます。Name パラメータは主にドメイン名、Type パラメータにはどのような情報 (MX レコードなど) が要求されているかを指定します。

クエリレコードで宣言された情報が不十分である場合は追加レコードが参照されます。追加レコードでは、クエリレコードで指定された Name パラメータと Type パラメータが一致する情報を検索し、情報の追加を行います。BIND が提供する TKEY 機能に対するクエリでは、lib/dns/tkey.c のメソッドである dns_tkey_processquery() を用いて追加レコードの検索を行います。当該脆弱性は dns_tkey_processquery() メソッドの dns_message_findname() 関数における name 変数の処理の不備に起因しています。

追加レコードで必要な情報が検索できなかった場合は、応答レコードに対して検索を行います。まず、追加レコード内でクエリレコードの Name パラメータ (name 変数) と一致する情報を検索します。一致する情報が一つでも見つかった場合は、一致するすべての情報が foundname 変数に格納され、name 変数が初期化されます。次に、foundname 変数に格納された情報の内、クエリレコードで指定した Type パラメータが一致するものを検索します。この際に TKEY が検索されれば dns_message_findname() 関数は正の戻り値を出力し、応答レコードの検索を行わず情報の検索を終えますが、TKEY が検索できなかった場合は dns_message_findname() 関数内で name 変数の検証で異常が発生し、BIND のプロセスが assertion error により終了します。

実際に当該脆弱性を利用して攻撃を行うためには、以下のクエリを DNS サーバに送信します。

(1) クエリレコードの Type パラメータに "TKEY"、Name パラメータに適当なドメイン名を指定します。
(2) 追加レコードの情報として、クエリレコードと一致する Name パラメータを指定し、Type パラメータに "TKEY" 以外のものを指定する。

当該脆弱性を用いた攻撃によりサービスが停止した場合、/var/log/messages に以下のような行が出力されます。

Aug 31 20:14:51 localhost named[1746]: message.c:2311: REQUIRE(*name == ((void *)0)) failed, back trace


5.対策
当該脆弱性は TKEY 機能を無効にしていても影響を受けるため、設定の変更による対処が出来ません。以下のバージョンに BIND をアップデートすることにより、対処することが可能です。

- 9.9.7-P2
- 9.10.2-P3

また「◆影響を受けるソフトウェア」にも記載した通り、OS によってはパッチが適用されたバージョンにアップデートされる場合もあるため、各ベンダが公開している情報を確認することを推奨します。


6.ソースコード
(Web非公開)

(執筆:株式会社ラック サイバー・グリッド研究所

※Web非公開該当コンテンツ閲覧をご希望の方はScan Tech Reportにご登録(有料)下さい。

Scan Tech Report
http://scan.netsecurity.ne.jp/archives/51916302.html
《株式会社ラック サイバー・グリッド研究所》

編集部おすすめの記事

特集

脆弱性と脅威 アクセスランキング

  1. 大手企業名を騙ったヤミ金融業者サイトを初めて検知、手法模索の結果か(BBソフトサービス)

    大手企業名を騙ったヤミ金融業者サイトを初めて検知、手法模索の結果か(BBソフトサービス)

  2. Drupal の RESTWS モジュールにおける遠隔から任意のコードが実行されてしまう脆弱性(Scan Tech Report)

    Drupal の RESTWS モジュールにおける遠隔から任意のコードが実行されてしまう脆弱性(Scan Tech Report)

  3. ジャパンネット銀行および福岡銀行を騙るメールに注意、本文には「貴様」(フィッシング対策協議会)

    ジャパンネット銀行および福岡銀行を騙るメールに注意、本文には「貴様」(フィッシング対策協議会)

  4. ヘルプデスク向けチケット管理アプリケーションに複数の脆弱性(JVN)

  5. 違和感のないサイバー攻撃メールにするため使われる単語(IPA)

  6. マルウェアもインフラも一度きり、極めて高度な犯罪グループを発見(カスペルスキー)

  7. 「サイボウズ ガルーン」に複数の脆弱性、アップデートを呼びかけ(JVN)

  8. 非公式ファンメイドゲーム「Pokemon Uranium」が公開停止、再アップロード先のダウンロードリンクの安全性は保証できず

  9. CMS「Geeklog IVYWE版」にXSSの脆弱性、パッチ適用を呼びかけ(JVN)

  10. 複数の「D-Link」ルータ製品に重大な脆弱性、アップデートを呼びかけ(JVN)

  11. 「シンプルチャット」にXSSの脆弱性、アップデートを呼びかけ(JVN)

  12. 複数のWebブラウザに機微な情報が漏えいする脆弱性(JVN)

  13. 勝手にGoogle Playアプリを購入し、インストールするトロイの木馬を確認(Dr.WEB)

  14. 政府が「ポケモンGO」に関する注意喚起を発表、9つの注意点を記載(NISC)

  15. Vプリカを騙るメールに注意喚起、本文に再び“流失”の表記(フィッシング対策協議会)

  16. 月例セキュリティ情報9件を公開、最大深刻度「緊急」は5件(日本マイクロソフト)

  17. Microsoft Windows の Win32k.sys ドライバの実装に起因する整数オーバーフローの脆弱性(Scan Tech Report)

  18. ボット化したIoT機器が感染拡大を目的にTelnet探索を行っている可能性(警察庁)

  19. Apache Commons FileUpload のマルチパートリクエストの処理に起因する DoS の脆弱性(Scan Tech Report)

  20. 「UltraVNC repeater」に、任意のホストのポートに接続させられる脆弱性(JVN)

アクセスランキングをもっと見る

★★ ( FB ログイン可) 会員限定記事、週 1 回のメルマガ、人気ニュースランキング、特集一覧をお届け…無料会員登録はアドレスのみで所要 1 分程度 ★★
★★ ( FB ログイン可) 会員限定記事、週 1 回のメルマガ、人気ニュースランキング、特集一覧をお届け…無料会員登録はアドレスのみで所要 1 分程度 ★★

登録すれば、記事一覧、人気記事ランキング、BASIC 会員限定記事をすべて閲覧できます。毎週月曜朝には一週間のまとめメルマガをお届けします(BASIC 登録後 PREMIUM にアップグレードすれば全ての限定コンテンツにフルアクセスできます)。

×