BIND 9の欠陥により、悪意のあるDNSレコードで攻撃者がサーバーをクラッシュさせる可能性

BIND 9の重大な脆弱性により、DNSサーバーがリモートのサービス拒否(DoS)攻撃にさらされます。

セキュリティ企業ISCは2026年1月21日にCVE-2025-13878を公開し、DNSクエリ内の不正に形成されたBRIDまたはHHITレコードがnamedプロセスの予期しない終了を引き起こし得ると警告しました。

この脆弱性の悪用に認証は不要であり、権威DNSサーバーと再帰リゾルバの双方にとって高リスクの問題です。

ISCは最近のリリースでこの欠陥を修正し、管理者に直ちに更新するよう促しています。

この脆弱性はBIND 9の安定ブランチにまたがる特定バージョンに影響し、インターネットの名前解決の多くを支える広く利用されている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で細工したDNSパケットを脆弱な任意のサーバーへ送信でき、再起動を強制してサービスを妨害できます。

CVSS v3.1では7.5(High)と評価されています。ベクターはCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H。機密性や完全性への影響はありませんが、可用性への影響は深刻で、攻撃者はクラッシュを繰り返してサーバーを応答不能にできます。

影響を受けるバージョンは以下のとおりです:

ブランチ 脆弱な範囲 修正済みバージョン
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
サポート対象プレビュー 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.org/downloadのISCダウンロードからアップグレードしてください。回避策はありません。解析は普遍的に行われるため、HIP関連機能を無効化しても効果はありません。

ISCは、Marlink CyberのVlatko Kosturjak氏による発見に謝意を示しています。公開時点で既知の活発な悪用はありませんが、BRID/HHITの偽のRDATAを含むクエリを作って53番ポートへ送るだけという単純さから、概念実証コードが近く出回る可能性があります。

侵害の痕跡(IoC)と緩和策

スキャンや攻撃を検知するため、クラッシュのシグネチャをログで監視してください。主なIoCは次のとおりです:

  • ログパターン: named.runまたはsyslogに「assertion failure」や「malformed RDATA」といった記載があり、その後に「named: prematured server shutdown.」が続く。
  • ネットワークトラフィック: 53番ポートへのUDP/TCPクエリが急増し、異常なOPTや未知のRRタイプ(BRID=65534、HHIT=65535)を伴う。Wireshark のフィルタ: dns.qry.type == 65534 or dns.qry.type == 65535
  • プロセス指標: ps auxやsystemdジャーナルでnamedの再起動が繰り返される: journalctl -u bind9 | grep 'exited'
  • 悪用の試行: RRセクションで無効なレコード長(>512バイト)を含む、単一IPからの大量クエリ。
IoC種別 説明 検知ツール
ログ正規表現 `.BRID. .HHIT.
パケットフィルタ dns contains "BRID" or "HHIT" tcpdump -i any port 53
レート異常 単一ソースから>1000 qps fail2banまたはSuricataルール

iptablesでDNSポートにレート制限を適用してください: iptables -A INPUT -p udp --dport 53 -m limit --limit 100/s -j ACCEPT

より広範な保護のため、named.confでDNSSEC検証とResponse Rate Limiting(RRL)を有効化してください。

ISCは問題を追跡するBIND 9脆弱性マトリクスを維持しています。疑わしい事象は[email protected]へ報告してください。

最近のスキャンによれば、BINDは世界のDNSサーバーの18%を稼働させています。迅速なパッチ適用により広範な障害を防げます。今すぐ更新して耐障害性を確保してください。

翻訳元: https://gbhackers.com/bind-9-flaw-crashes-servers/

ソース: gbhackers.com