Kaminsky Attackの全て. Kaminsky Attack解説と対策(前編).
 DNS DAY ∼利用者を守れ∼. Internet Week 2008. 民田雅人. 株式会社日本レジストリサービス

https://www.nic.ad.jp/ja/materials/iw/2008/proceedings/H3/IW2008-H3-07.pdf

(いろいろ間違いがあるが、記録としての価値がある。)

1. スライド19--20

Kaminsky型の毒入れ攻撃手法

Kaminsky型の毒入れ攻撃
• 攻撃者がキャッシュサーバに、攻撃対象レコードと同じドメインの存在しない名前を検索させ、
  <<追加セクションに攻撃対象レコードを設定>>した偽装応答をIDを変化させながら大量に送る
  (偽装応答型の一種)

スライド20番にある攻撃例: (ほぼ100%成功する、とある)

を送りつける。キャッシュは偽レコードを受け取り、キャッシュする。[注:スライドの説明である]

Additional Section (Aレコード)による毒盛が成立するとの説明である。

2. この例はKaminskyのものとは異なる

「回答セクション」におまけで「権威セクション」と「追加セクション」がある形になっていて、 DNS/毒盛/Kaminsky講演/スライド(18)とは異なっている。

3. これでも不十分だ

毒盛できる条件が書いてない。

キャッシュにすでに存在する情報を上書きするという、問題のある動作を仮定しなければならない。

スライド23

キャッシュ済みのレコードはKaminsky型の攻撃で上書きできるのか

4. Kaminskyスライドの違い

民田スライドの方が簡単である。対策も容易だ。 Kaminsky のスライドでは NS レコードは移譲の形になっているので、無視していいかどうか。

5. bind の不良ではないか

(対策前の)BINDキャッシュがこういう動作をしていたのであれば、非常に簡単に毒盛りされる。

Kaminsky はこの不良を発見したが、そのことはあからさまには指摘せず、 逆に

    特定のサーバを攻撃する場合に「TTLの制約を迂回する」ことが可能である。

ことに目をむけさせることで、bindの不良から目をそらせた。/Gabriel-fix

BINDにはこのような弱点があるのだろう。

「glue を区別して扱う」という提案が無視されてきたのも頷ける。


6. 2009年末の修正

2009年末になって、やっと修正が施された版が公開された。

日本ではこのことは誰も指摘してこなかった。 -- ToshinoriMaeno 2011-08-18 03:33:59

7. BIND 修正

いつからかはよくわからないが、2011年ころのBINDはここの手法による毒は受け入れない。 -- ToshinoriMaeno 2018-12-29 23:05:50

MoinQ: DNS/毒盛/Kaminsky手法/解説と対策(民田) (last edited 2022-02-02 13:14:22 by ToshinoriMaeno)