キャッシュポイズニング 攻 撃 対 策 : キャッシュDNSサーバー 運 用 者 向 け 基 本 対 策 編 初 版 作 成 :2014 年 4 月 30 日 最 終 更 新 :2014 年 4 月 30 日 株 式 会 社 日 本 レジストリサービス(JPRS) Copyright 2014 株 式 会 社 日 本 レジストリサービス 1
本 資 料 の 位 置 づけ 本 資 料 は 以 下 の 四 部 構 成 の 資 料 の 一 部 対 象 者 ごとに キャッシュDNSサーバー 運 用 者 向 けと 権 威 DNSサーバー 運 用 者 向 けに 大 別 それぞれを 基 本 対 策 編 と 応 用 対 策 編 の 二 部 で 構 成 キャッシュDNSサーバー 運 用 者 向 け 基 本 対 策 編 ( 本 資 料 ) 応 用 対 策 編 権 威 DNSサーバー 運 用 者 向 け 基 本 対 策 編 応 用 対 策 編 Copyright 2014 株 式 会 社 日 本 レジストリサービス 2
本 資 料 の 内 容 ( 基 本 対 策 編 ) 本 資 料 ではキャッシュDNSサーバー 運 用 者 向 け の 基 本 対 策 編 として 以 下 の 項 目 について 解 説 おさらい(1):キャッシュポイズニング 攻 撃 の 概 要 おさらい(2): 攻 撃 対 策 の 基 本 UDP 問 い 合 わせポートのランダム 化 (ソースポートランダマイゼーション)の 実 施 オープンリゾルバー 対 策 攻 撃 の 検 知 と 対 応 Copyright 2014 株 式 会 社 日 本 レジストリサービス 3
おさらい(1): キャッシュポイズニング 攻 撃 の 概 要 Copyright 2014 株 式 会 社 日 本 レジストリサービス 4
キャッシュポイズニング 攻 撃 とは? 偽 のDNS 応 答 をキャッシュDNSサーバーにキャッシュさせることで アクセスを 偽 サイトに 誘 導 し フィッシングや 電 子 メールの 盗 難 など を 図 る 攻 撃 手 法 www.example.co.jp にアクセスしたい 利 用 者 3 偽 サイトに 誘 導 される www.example.co.jp 192.0.2.20 3 http://www.example.co.jp 偽 のWebサイト キャッシュ DNS サーバー 偽 www.example.co.jp (192.0.2.20) このイメージは 現 在 表 示 できません 1www.example.co.jp のIPアドレスを 問 い 合 わせる 1 2 192.0.2.10です 2 2 発 信 元 を 偽 装 した 偽 の 応 答 を 本 物 よりも 先 に 受 け 取 ると 権 威 DNSサーバー DNS 応 答 www.example.co.jp. IN A 192.0.2.10 攻 撃 者 偽 のDNS 応 答 www.example.co.jp. IN A 192.0.2.20 図 :キャッシュポイズニング 攻 撃 の 例 ( 偽 の 応 答 を 本 物 よりも 先 に 注 入 ) ( 注 : 上 記 は 例 であり 偽 のDNS 応 答 をキャッシュさせる 方 法 は 他 にも 存 在 する) Copyright 2014 株 式 会 社 日 本 レジストリサービス 5
キャッシュポイズニングの 基 本 コンセプト: 偽 の 応 答 をキャッシュさせる これまでにいくつかの 方 法 が 発 表 実 行 されている 対 策 :TTL(キャッシュの 有 効 期 限 )による 保 護 キャッシュ 済 のデータは 問 い 合 わせない 問 い 合 わせない 攻 撃 の 機 会 がない TTLを 長 く 設 定 することで 攻 撃 の 機 会 を 低 減 可 能 攻 撃 実 行 後 TTLが 満 了 するまで 同 じ 名 前 を 再 攻 撃 不 可 この 特 性 により 同 じ 名 前 に 対 する 連 続 攻 撃 を 防 止 しかし 2008 年 にこの 対 策 を 突 破 する 攻 撃 手 法 が 公 開 された Copyright 2014 株 式 会 社 日 本 レジストリサービス 6
カミンスキー 型 攻 撃 手 法 の 出 現 2008 年 7 月 に Dan Kaminsky 氏 が 発 表 存 在 しない 名 前 への 問 い 合 わせを 攻 撃 に 用 い その 応 答 に 付 随 する 情 報 により 毒 の 注 入 を 図 る 存 在 しない 名 前 への 問 い 合 わせを 用 いることで TTLによる 保 護 を 無 力 化 連 続 攻 撃 を 可 能 にした つまり カミンスキーは 攻 撃 者 に 効 率 の 良 い 武 器 を 提 示 したといえる 実 社 会 における 例 え: 火 縄 銃 の 時 代 ( 一 度 攻 撃 した 後 しばらくの 間 再 攻 撃 できない)に カミンスキーは 機 関 銃 の 作 り 方 を 提 示 した Copyright 2014 株 式 会 社 日 本 レジストリサービス 7
おさらい(2): 攻 撃 対 策 の 基 本 Copyright 2014 株 式 会 社 日 本 レジストリサービス 8
キャッシュポイズニングが 成 功 するまで 1. 攻 撃 者 が 攻 撃 を 仕 掛 ける 攻 撃 が 成 立 ( 偽 の 応 答 が 先 に 到 達 )した 場 合 偽 の 応 答 の 注 入 に 成 功 する( 第 一 関 門 突 破 ) 2. キャッシュDNSサーバーが 応 答 をチェックする チェックをパスしてしまった 場 合 注 入 した 偽 の 応 答 がキャッシュされる( 第 二 関 門 突 破 ) 3. キャッシュDNSサーバーが 名 前 解 決 をする キャッシュされた 応 答 が 有 効 であった 場 合 キャッシュされた 偽 の 応 答 が 使 われる( 第 三 関 門 突 破 ) 4. キャッシュポイズニング 攻 撃 が 成 功 する Copyright 2014 株 式 会 社 日 本 レジストリサービス 9
攻 撃 対 策 の 基 本 ( 三 つの 対 策 ) 対 策 の 基 本 :それぞれの 関 門 を 突 破 されない (されにくい)ようにする それぞれの 関 門 ( 再 掲 ) 1. 偽 の 応 答 の 注 入 に 成 功 する( 第 一 関 門 ) 2. 注 入 した 偽 の 応 答 がキャッシュされる( 第 二 関 門 ) 3. キャッシュされた 偽 の 応 答 が 使 われる( 第 三 関 門 ) 対 応 する 三 つの 対 策 1 偽 の 応 答 を 注 入 されない(されにくくなる)ようにする 2 受 け 取 った 応 答 のチェックを 厳 重 にする 3 攻 撃 を 検 知 して 対 応 する Copyright 2014 株 式 会 社 日 本 レジストリサービス 10
攻 撃 対 策 の 基 本 ( 三 つの 対 策 ) 三 つの 対 策 ( 再 掲 ): 1 偽 の 応 答 を 注 入 されない(されにくくなる)ようにする 2 受 け 取 った 応 答 のチェックを 厳 重 にする 3 攻 撃 を 検 知 して 対 応 する 各 対 策 が 上 記 のどの 対 策 であり どのような 効 果 が あるのかをきちんと 理 解 することが 重 要 具 体 例 : ソースポートランダマイゼーションの 実 施 1の 一 つ Unboundにおけるharden-referral-pathオプションの 設 定 ( 応 用 対 策 編 で 説 明 ) 2の 一 つ 問 い 合 わせ/ 応 答 パケット 数 の 照 合 3の 一 つ Copyright 2014 株 式 会 社 日 本 レジストリサービス 11
ソースポートランダマイゼーション の 実 施 1 偽 の 応 答 を 注 入 されない(されにくくなる)ようにする 対 策 の 一 つ Copyright 2014 株 式 会 社 日 本 レジストリサービス 12
おさらい: 偽 の 応 答 の 注 入 成 功 の 条 件 1 偽 の 応 答 を 本 物 よりも 先 に 到 達 させられること 2 以 下 のすべてが 本 物 と 一 致 していること IPアドレス( 送 信 元 送 信 先 ) 偽 装 可 能 (あらかじめわかっている) 送 信 先 ポート 番 号 ( 送 信 元 ポート 番 号 は 常 に53) 問 い 合 わせた 名 前 (QNAME) 型 (QTYPE) 偽 装 可 能 (あらかじめわかっている) 問 い 合 わせID(TXID) 総 当 たり 可 能 TXIDは16ビットであり TXIDのみを 変 化 させた 多 数 の 応 答 を 同 時 に 送 りつける 総 当 たり 攻 撃 が 可 能 (カミンスキー 型 攻 撃 手 法 で 採 用 ) Copyright 2014 株 式 会 社 日 本 レジストリサービス 13
ソースポートランダマイゼーション 問 い 合 わせ 送 信 時 のポート 番 号 をランダムに 変 化 させ 応 答 が 到 達 するポート 番 号 を 一 致 させに くくする 一 致 しなければ 偽 の 応 答 の 注 入 は 成 立 しない 現 時 点 において 必 須 の 対 策 キャッシュ DNS サーバー キャッシュ DNS サーバー 同 じポートを 毎 回 使 用 ( 偽 の 応 答 を 注 入 しやすい) 多 数 のポートをランダムに 使 用 ( 偽 の 応 答 を 注 入 しにくい) Copyright 2014 株 式 会 社 日 本 レジストリサービス 14
ソースポートランダマイゼーションの 効 果 偽 の 応 答 の 注 入 が 成 功 する 確 率 を 下 げる あるキャッシュDNSサーバーに 対 し 偽 の 応 答 の 注 入 が 成 功 する 確 率 R W P S = N Port ID R: 攻 撃 対 象 1 台 当 たりに 送 るパケット 量 (pps) W: 攻 撃 可 能 な 時 間 ( 問 い 合 わせ 応 答 のRTT) N: 攻 撃 対 象 レコードを 保 持 する 権 威 DNSサーバーの 数 Port: 問 い 合 わせに 使 うソースポートの 数 ID: 問 い 合 わせID(TXID:16ビット = 65,536) ソースポートランダマイゼーションにより 上 記 数 式 のPortの 値 が 増 える Copyright 2014 株 式 会 社 日 本 レジストリサービス 15
ソースポートランダマイゼーションの 効 果 偽 の 応 答 の 注 入 の 確 率 を 下 げる 対 策 であり 攻 撃 を 不 可 能 にする 対 策 ではないことに 注 意 最 大 で1/(2 ^ 16) = 1/65,536 攻 撃 成 功 までの 時 間 を 対 策 前 の65,536 倍 に 延 ばす 攻 撃 の 検 知 対 応 と 併 せて 実 施 するのが より 効 果 的 Copyright 2014 株 式 会 社 日 本 レジストリサービス 16
BIND 9/Unboundにおけるサポート 状 況 最 新 版 のBIND 9/Unboundでは ソースポートランダマイゼーションを 標 準 サポート 設 定 ファイルの 不 適 切 な 内 容 に 注 意 BIND 9: 以 下 の 設 定 が 有 効 になっていないことを 確 認 query-source port 53; query-source-v6 port 53; ポートを 意 図 的 に 固 定 する 不 適 切 な 設 定 有 効 であった 場 合 削 除 /コメントアウトしてnamedを 再 起 動 Unbound:ポートを 意 図 的 に 固 定 できるが 設 定 方 法 がやや 複 雑 であり 通 常 は 出 回 っていない 実 運 用 には 不 適 切 な 設 定 であるため 方 法 の 紹 介 は 省 略 Copyright 2014 株 式 会 社 日 本 レジストリサービス 17
注 意 事 項 : 不 適 切 なポートの 再 変 換 ネットワーク 機 器 (ファイアーウォールなど)における 不 適 切 なポートの 再 変 換 に 注 意 予 測 できる 形 に 再 変 換 されてしまう 場 合 がある( 図 ) この 場 合 機 器 の 設 定 変 更 や 更 新 などが 必 要 になる 該 当 する 場 合 次 ページで 紹 介 するDNS-OARCの 確 認 サイトで POOR または GOOD と 表 示 される GOOD 表 示 であっても 不 十 分 1 キャッシュ DNS サーバー 2 3 ネット ワーク 機 器 2 3 1 ネットワーク 機 器 における 不 適 切 なポートの 再 変 換 の 例 ( 順 番 に 並 べ 替 え) 次 はここか Copyright 2014 株 式 会 社 日 本 レジストリサービス 18
設 定 の 確 認 方 法 (Webページ) DNS-OARCが 確 認 のためのWebページを 提 供 Web-based DNS Randomness Test 実 行 例 : <http://entropy.dns-oarc.net/> すべての 結 果 が GREAT であることを 確 認 Copyright 2014 株 式 会 社 日 本 レジストリサービス 19
設 定 の 確 認 方 法 (digコマンド) digコマンドでも 確 認 可 能 $ dig +short porttest.dns-oarc.net TXT 実 行 例 : $ dig +short porttest.dns-oarc.net TXT porttest.y.x.w.v.u.t.s.r.q.p.o.n.m.l.k.j.i.h.g.f.e.d.c.b.a.pt.dns-oarc.net. xxx.xxx.xxx.xxx is GREAT: 26 queries in 2.9 seconds from 26 ports with std dev 17554" 結 果 が GREAT であることを 確 認 Copyright 2014 株 式 会 社 日 本 レジストリサービス 20
オープンリゾルバー 対 策 1 偽 の 応 答 を 注 入 されない(されにくくなる)ようにする 対 策 の 一 つ Copyright 2014 株 式 会 社 日 本 レジストリサービス 21
オープンリゾルバーの 危 険 性 攻 撃 対 象 がオープンリゾルバーである 場 合 攻 撃 者 が 外 部 からそのサーバーに 問 い 合 わせを 送 る ことで 名 前 検 索 を 始 めさせることができる 名 前 検 索 に 合 わせてキャッシュポイズニング 攻 撃 を 仕 掛 けることにより 成 功 確 率 を 上 げられる 攻 撃 者 が 問 い 合 わせと 偽 の 応 答 を 同 時 に 送 信 偽 の 応 答 を 本 物 よりも 先 に 到 達 させられる 確 率 が 上 がる Copyright 2014 株 式 会 社 日 本 レジストリサービス 22
オープンリゾルバーの 危 険 性 キャッシュポイズニング 攻 撃 のリスク 軽 減 の 観 点 からも オープンリゾルバーの 修 正 は 必 須 キャッシュポイズニングでは 自 組 織 の 利 用 者 や 顧 客 が 直 接 危 険 にさらされる Copyright 2014 株 式 会 社 日 本 レジストリサービス 23
オープンリゾルバーの 設 定 修 正 オープンリゾルバーでなくすことにより 外 部 からの 攻 撃 のリスクを 下 げられる 組 織 /ISP 内 からの 攻 撃 抑 制 の 効 果 はない オープンリゾルバーでない 場 合 も Webページへのア クセス 誘 導 や 電 子 メールの 送 りつけなどにより 内 部 からの 名 前 検 索 を 誘 発 させる 攻 撃 手 法 もある ソースポートランダマイゼーションと 同 様 攻 撃 の 検 知 対 応 と 併 せて 実 施 することがより 効 果 的 Copyright 2014 株 式 会 社 日 本 レジストリサービス 24
BIND 9における 設 定 確 認 最 新 版 のBIND 9では オープンリゾルバーとならな いようにデフォルト 値 が 設 定 されている 古 いBIND 9を 使 っている 場 合 バージョンアップすること でオープンリゾルバーでなくすことができる アクセスコントロールの 設 定 が 適 切 であることを 確 認 設 定 例 : // 組 織 内 ネットワーク 一 覧 をACLで 定 義 acl MYNET { 192.0.2.0/24; 2001:db8:2::/64; }; options { // 内 部 からの 問 い 合 わせのみ 受 け 付 ける allow-query { MYNET; }; allow-recursion { MYNET; }; allow-query-cache { MYNET; }; }; Copyright 2014 株 式 会 社 日 本 レジストリサービス 25
送 信 元 検 証 (BCP 38)の 導 入 BCP 38の 導 入 により 送 信 元 を 偽 装 したDNS 応 答 をインターネットに 送 信 できなくすることも 大 切 そのネットワークからのキャッシュポイズニング 攻 撃 が 不 可 能 になる 自 分 が 偽 の 応 答 を 注 入 されないようにするための 対 策 ではない キャッシュ DNS サーバー BCP 38 権 威 DNSサーバー DNS 応 答 www.example.co.jp. IN A 192.0.2.10 攻 撃 者 偽 のDNS 応 答 www.example.co.jp. IN A 192.0.2.20 Copyright 2014 株 式 会 社 日 本 レジストリサービス 26
攻 撃 の 検 知 と 対 応 3 攻 撃 を 検 知 して 対 応 する 対 策 の 一 つ Copyright 2014 株 式 会 社 日 本 レジストリサービス 27
攻 撃 の 検 知 (DNSパケットの 数 ) DNSでは 通 常 UDPの 問 い 合 わせパケットと 応 答 パケットの 数 は 一 致 ( 一 対 一 対 応 )している IPフラグメンテーションが 発 生 した 場 合 や 応 答 が なかった 場 合 などを 除 く キャッシュ DNS サーバー DNSの 問 い 合 わせパケットと 応 答 パケットは 一 対 一 対 応 Copyright 2014 株 式 会 社 日 本 レジストリサービス 28
攻 撃 の 検 知 (DNSパケットの 数 ) キャッシュポイズニング 攻 撃 では 攻 撃 時 に 問 い 合 わせID(TXID)のみを 変 化 させたDNS 応 答 が 到 達 総 当 たり 型 の 攻 撃 では 多 数 のDNS 応 答 が 連 続 して 到 達 この 特 性 を 利 用 し キャッシュDNSサーバー 側 で DNSパケットの 状 況 をチェックすることにより 攻 撃 の 検 知 が 可 能 キャッシュ DNS サーバー 通 常 : 問 い 合 わせと 応 答 が 一 対 一 対 応 権 威 DNS サーバー キャッシュ DNS サーバー TXID=0 TXID=1 TXID=2 TXID=3 TXID=4 TXID=5 TXID=6 TXID=7 攻 撃 :TXIDのみを 変 化 させた 多 数 のDNS 応 答 が 連 続 して 到 達 Copyright 2014 株 式 会 社 日 本 レジストリサービス 29
攻 撃 の 検 知 (DNSパケットの 数 ) 典 型 的 な 攻 撃 パターン 問 い 合 わせパケットの 数 に 比 べ 応 答 パケットの 数 が 多 い 状 態 が 続 いている 単 位 時 間 あたりの 応 答 パケットの 数 が 急 増 している 検 出 方 法 の 例 MRTGなどによる 継 続 的 な 観 測 や 異 常 ( 攻 撃 パターン) 検 出 時 の 管 理 者 への 通 知 Copyright 2014 株 式 会 社 日 本 レジストリサービス 30
攻 撃 の 検 知 (キャッシュDNSサーバーの 負 荷 ) 攻 撃 による 大 量 のDNS 問 い 合 わせ 応 答 により キャッシュDNSサーバーの 負 荷 が 上 昇 する 特 に カミンスキー 型 攻 撃 手 法 では 存 在 しない(キャッ シュされていない) 名 前 の 問 い 合 わせが 高 頻 度 で 到 達 するため 通 常 の 攻 撃 よりも 負 荷 上 昇 が 大 きい キャッシュDNSサーバーの 負 荷 を 監 視 することで 攻 撃 の 検 知 が 可 能 キャッシュポイズニング 攻 撃 に 限 らず DoS 攻 撃 など 他 の 攻 撃 の 検 知 にも 有 効 Copyright 2014 株 式 会 社 日 本 レジストリサービス 31
攻 撃 の 検 知 (DNS 応 答 の 内 容 ) カミンスキー 型 攻 撃 手 法 の 場 合 攻 撃 パケットの 内 容 が 特 徴 的 $(random). 攻 撃 対 象 ドメイン 名 に 対 する 大 量 の 応 答 攻 撃 対 象 ドメイン 名 にランダム 文 字 列 を 加 えたサブドメイン これにより 攻 撃 対 象 のドメイン 名 をある 程 度 判 定 可 能 Copyright 2014 株 式 会 社 日 本 レジストリサービス 32
対 応 例 (キャッシュの 照 合 クリア) 攻 撃 対 象 ドメイン 名 が 判 明 した 場 合 他 のキャッ シュDNSサーバーとの 応 答 内 容 照 合 や 必 要 に 応 じたキャッシュのクリアなどが 有 効 キャッシュクリアにより キャッシュポイズニング 攻 撃 が 成 立 しやすくなる 場 合 もあることに 注 意 キャッシュクリアの 直 後 に 名 前 検 索 を 実 行 して 正 当 な 応 答 をキャッシュしておくとよい Copyright 2014 株 式 会 社 日 本 レジストリサービス 33
Unboundの unwanted-reply-thresholdオプション Unboundではunwanted-reply-thresholdオプション を 有 効 にすることで 不 審 なDNS 応 答 を 検 知 警 告 ログの 出 力 とキャッシュクリアが 行 われる 設 定 値 : 検 知 の 閾 (しきい) 値 デフォルトは0( 機 能 無 効 ) Unboundのマニュアルでは10 million(1000 万 )を 推 奨 不 審 なDNS 応 答 : 送 信 元 IPアドレスやTXIDの 不 一 致 警 告 ログの 例 : unwanted reply total reached threshold ( 閾 値 ) you may be under attack. defensive action: clearing the cache Copyright 2014 株 式 会 社 日 本 レジストリサービス 34
対 応 例 ( 攻 撃 流 入 元 の 調 査 ) 攻 撃 パケットの 流 入 元 を 調 べることで どのネット ワーク( 方 面 )から 到 達 しているかを 調 査 可 能 対 応 : 相 手 先 や 上 流 ネットワーク 管 理 者 への 連 絡 など 発 信 元 IPアドレスは 偽 装 されていることに 注 意 Copyright 2014 株 式 会 社 日 本 レジストリサービス 35
参 考 リンク ( 緊 急 )キャッシュポイズニング 攻 撃 の 危 険 性 増 加 に 伴 う DNSサーバーの 設 定 再 確 認 について(2014 年 4 月 15 日 公 開 ) <http://jprs.jp/tech/security/2014-04-15-portrandomization.html> JPRS トピックス&コラム No.020 DNSの 安 全 性 安 定 性 向 上 のためのキホン ~お 使 いのDNSサーバーは 大 丈 夫 ですか?~ <http://jprs.jp/related-info/guide/020.pdf> Copyright 2014 株 式 会 社 日 本 レジストリサービス 36
更 新 履 歴 2014 年 4 月 30 日 初 版 作 成 Copyright 2014 株 式 会 社 日 本 レジストリサービス 37