SlideShare a Scribd company logo
1 of 24
Download to read offline
既出のDNS キャッシュポイズニング 
2014/09/06 LTDD #07 
ねむねむ@nemumupoyo
HN:ねむねむ 
Twitter:@nemumupoyo 
情報系の学生です
DNSとは
DNSとは?
DNSの特徴 
• 通信にはUDPを用いる(送信元の詐称が可能) 
! 
• 名前解決(ドメイン名からIPアドレスへの変換)などを 
行う 
! 
• 近年、外部ネットワークからDNS問い合わせが可能 
なオープンリゾルバが問題に 
! 
• リクエストに対してリプライのサイズが異常に大きい
オープンリゾルバがなぜ悪い?
オープンリゾルバがなぜ悪い? 
外部ネットワークから身元を詐称して 
DNS リフレクション攻撃が可能 
(理論上49倍の増幅が可能)
DNSキャッシュポイズニングとは
DNSキャッシュポイズニングとは 
• DNSのキャッシュテーブル内に悪意のある 
データを挿入する手法 
! 
具体例 
google.comにアクセスしているつもりが悪意 
のある第三者のサイトへアクセスしていた など
具体例
DNSメッセージフォーマット 
識別子(2^16 = 65536) で正規リプライと判断
代表例
代表例 
トランザクションIDを総当たりして上位DNSサーバ 
からのレスポンスが返る前に偽のレスポンスを通す 
(悪意のあるDNSキャッシュを保存させる)
対策 
キャッシュの持ち時間(TTL)を長くして問い合わ 
せ回数を減らす
対策 
キャッシュの持ち時間(TTL)を長くして問い合わ 
せ回数を減らす 
しかしTTL待機は回避可能
カミンスキー型攻撃
カミンスキー型攻撃 
存在しないドメイン名を問い合わせること 
でTTLに関係なく上位ルーターに 
問い合わせさせる
カミンスキー型攻撃の対策 
(Source port randomization)
カミンスキー型攻撃の対策 
(Source port randomization) 
ソースポートをランダム値にすることにより 
応答パケットの偽装難易度を上げる
最悪オーダー 
ポート番号 × 識別子 
= 2^16 × 2^16 
= 4,294,967,296 (43億) 
! 
難易度が跳ね上がる 
しかし上位にNAPTルーターを挟む場合は 
十分な効果を期待できない
NAPTによる弊害 
• 使用可能な送信元ポートが減る 
! 
• NAPTルーターは処理速度向上のためポート 
番号を連番にしている事が多い 
! 
• NAPTを通すとランダムなポート番号でも推測 
が可能に
提案されている対策 
• トランザクション ID を32[bit]にする(不可能) 
! 
• 問い合わせをTCPにする 
! 
• 上位ルーターに署名を使う(DNSSEC) 
! 
• DNSレスポンスの試行回数を制限する
まとめ 
• オープンリゾルバは可能な限り避けるべき 
! 
• DNSSECなどの署名を導入する 
! 
• NATルーターの連番ポート番号はDNS以外に 
も弊害が出そう(IPv6を使おう)
ご静聴ありがとうございました 
@nemumupoyo

More Related Content

Viewers also liked

Viewers also liked (14)

IPv6って何?(拡張ヘッダ編)
IPv6って何?(拡張ヘッダ編)IPv6って何?(拡張ヘッダ編)
IPv6って何?(拡張ヘッダ編)
 
OSC hiroshima 2014
OSC hiroshima 2014OSC hiroshima 2014
OSC hiroshima 2014
 
ジョークRFC [RFC-1437]
ジョークRFC [RFC-1437]ジョークRFC [RFC-1437]
ジョークRFC [RFC-1437]
 
ネットワークモビリティ
ネットワークモビリティネットワークモビリティ
ネットワークモビリティ
 
有線接続におけるセキュリティ
有線接続におけるセキュリティ有線接続におけるセキュリティ
有線接続におけるセキュリティ
 
結局IPv6ってどうなん?(序)
結局IPv6ってどうなん?(序)結局IPv6ってどうなん?(序)
結局IPv6ってどうなん?(序)
 
複数回線を束ねて高速化
複数回線を束ねて高速化複数回線を束ねて高速化
複数回線を束ねて高速化
 
プログラミング同好会とすごい合同勉強会
プログラミング同好会とすごい合同勉強会プログラミング同好会とすごい合同勉強会
プログラミング同好会とすごい合同勉強会
 
Free Serverというナウでヤングなサービス
Free ServerというナウでヤングなサービスFree Serverというナウでヤングなサービス
Free Serverというナウでヤングなサービス
 
CloudAtCostを使ってみた
CloudAtCostを使ってみたCloudAtCostを使ってみた
CloudAtCostを使ってみた
 
研究室のSVNをGitに移行した話
研究室のSVNをGitに移行した話研究室のSVNをGitに移行した話
研究室のSVNをGitに移行した話
 
カーネルモジュールでキーロガー
カーネルモジュールでキーロガーカーネルモジュールでキーロガー
カーネルモジュールでキーロガー
 
NATとNAPTを混在するのはやめような
NATとNAPTを混在するのはやめようなNATとNAPTを混在するのはやめような
NATとNAPTを混在するのはやめような
 
NAT超えとはなんぞや
NAT超えとはなんぞやNAT超えとはなんぞや
NAT超えとはなんぞや
 

Similar to 既出のDNS キャッシュポイズニング

Similar to 既出のDNS キャッシュポイズニング (10)

10分でわかる幽霊問題-事後資料
10分でわかる幽霊問題-事後資料10分でわかる幽霊問題-事後資料
10分でわかる幽霊問題-事後資料
 
神崎蘭子とDNSSEC
神崎蘭子とDNSSEC神崎蘭子とDNSSEC
神崎蘭子とDNSSEC
 
超簡単!? Punycode 変換 ~国際化・日本語ドメイン~
超簡単!? Punycode 変換 ~国際化・日本語ドメイン~超簡単!? Punycode 変換 ~国際化・日本語ドメイン~
超簡単!? Punycode 変換 ~国際化・日本語ドメイン~
 
DNSキャッシュポイゾニングについての話
DNSキャッシュポイゾニングについての話DNSキャッシュポイゾニングについての話
DNSキャッシュポイゾニングについての話
 
DNS再入門
DNS再入門DNS再入門
DNS再入門
 
DNS問い合わせ結果の可視化
DNS問い合わせ結果の可視化DNS問い合わせ結果の可視化
DNS問い合わせ結果の可視化
 
B2-4 DNS でいま起きていること
B2-4 DNS でいま起きていることB2-4 DNS でいま起きていること
B2-4 DNS でいま起きていること
 
20070901.mydomain
20070901.mydomain20070901.mydomain
20070901.mydomain
 
DNS について
DNS についてDNS について
DNS について
 
ドメイン名・DNS勉強会20140123 DNSのお話
ドメイン名・DNS勉強会20140123 DNSのお話ドメイン名・DNS勉強会20140123 DNSのお話
ドメイン名・DNS勉強会20140123 DNSのお話
 

既出のDNS キャッシュポイズニング