BIND 9の脆弱性により、悪意のあるDNSレコードでサーバーがクラッシュする可能性

BIND 9の深刻な脆弱性が明らかに

DNSサーバーソフトウェアであるBIND 9に、リモートからのサービス拒否(DoS)攻撃を可能にする深刻な脆弱性が発見されました。セキュリティ企業ISCは、2026年1月21日にCVE-2025-13878としてこの脆弱性を公開し、管理者に対して緊急の対応を促しています。

この脆弱性は、悪意を持って不正な形式にされたBRIDまたはHHITレコードを含むDNSクエリが送信された際に、namedプロセスの予期せぬ終了を引き起こすものです。攻撃者は認証なしでこの脆弱性を悪用できるため、権威DNSサーバーおよびキャッシュDNSサーバーの両方にとって高いリスクを伴います。

技術的詳細と影響を受けるバージョン

ISCのオープンソースDNSサーバーであるBIND 9は、ドメイン名を解決するためにDNSリソースレコードを処理します。BRID(Border Router ID)とHHIT(Host Identity with Hash)レコードは、Host Identity Protocol(HIP)のような実験的な拡張機能に属し、通常は本番環境ではほとんど使用されませんが、BINDによって解析されます。この脆弱性は、namedがクエリ応答で不正な形式のBRIDまたはHHITレコードに遭遇したときに発生し、メモリ破損またはアサーション失敗を引き起こし、最終的にクラッシュに至ります。

リモートの攻撃者は、UDPまたはTCP経由でポート53に細工されたDNSパケットを送信することで、脆弱なサーバーを強制的に再起動させ、サービスを中断させることができます。CVSS v3.1スコアは7.5(High)と評価されており、機密性や完全性への影響はないものの、可用性への影響は深刻であり、サーバーが無応答になるまで繰り返しクラッシュを誘発する可能性があります。

影響を受けるBIND 9のバージョンとパッチが適用されたバージョンは以下の通りです。

  • BIND 9.18: 9.18.40 – 9.18.43(パッチ適用済み: 9.18.44)
  • BIND 9.20: 9.20.13 – 9.20.17(パッチ適用済み: 9.20.18)
  • BIND 9.21: 9.21.12 – 9.21.16(パッチ適用済み: 9.21.17)
  • Supported Preview: 9.18.40-S1 – 9.18.43-S1 および 9.20.13-S1 – 9.20.17-S1(パッチ適用済み: 9.18.44-S1, 9.20.18-S1)

お使いのセットアップはnamed -Vで確認でき、ISCのウェブサイト(isc.org/download)から最新バージョンにアップグレードすることを推奨します。HIP関連機能を無効にしてもこの問題は解決しないため、現時点での回避策は存在しません。本脆弱性はMarlink CyberのVlatko Kosturjak氏によって発見されました。公開時点では既知のアクティブなエクスプロイトは確認されていませんが、不正なBRID/HHIT RDATAを含むクエリをポート53に送信するだけでPoCコードがすぐに登場する可能性があります。

侵害の兆候と軽減策

攻撃を検知し、サーバーを保護するためには、以下の侵害の兆候(IoCs)を監視し、適切な軽減策を講じることが重要です。

侵害の兆候(IoCs)

  • ログパターン: named.runまたはsyslogに「assertion failure」や「malformed RDATA」といったエントリ、それに続く「named: premature server shutdown」というメッセージ。
  • ネットワークトラフィック: ポート53へのUDP/TCPクエリの急増、異常なOPTまたは不明なRRタイプ(BRID=65534、HHIT=65535)が含まれる場合。Wiresharkフィルター:dns.qry.type == 65534 または dns.qry.type == 65535
  • プロセスインジケータ: ps auxまたはsystemd journals(例:journalctl -u bind9 | grep 'exited')でnamedが繰り返し再起動している状況。
  • エクスプロイト試行: 単一IPアドレスからの高ボリュームなクエリで、RRセクションに無効なレコード長(512バイト超)が含まれている場合。

軽減策

  • 即座のアップグレード: ISCのウェブサイトから最新のパッチ適用済みバージョンに更新することが最も効果的な対策です。
  • レート制限の導入: iptablesを使用してDNSポートでのレート制限を設定します。例:iptables -A INPUT -p udp --dport 53 -m limit --limit 100/s -j ACCEPT
  • DNSSEC検証と応答レート制限(RRL)の有効化: named.confでDNSSEC検証とRRLを有効にし、広範な保護を強化します。
  • 疑わしい活動の報告: 不審な兆候を発見した場合は、security@isc.orgに報告してください。

BINDは世界のDNSサーバーの約18%を支えているため、迅速なパッチ適用が広範なサービス停止を防ぐために不可欠です。


元記事: https://gbhackers.com/bind-9-flaw-crashes-servers/