DNS poison injection

DNSのキャッシュにphising siteなどの悪いことをするサイトへのip address を注入することができる。かなり以前からこのような事実はわかっていたが、この5月くらいから問題視されるようになった。
DNSの役目は、クライアントが、たとえば m にアクセスしたいという要求を出すとDNSがそのip address は123.123.123.123ですよと答えるのだ。これをDomain Name Service( DNS)といいこれを実施するのがDNSサーバというわけだ。実際の通信の宛先はすべて ip addressで行われるので、つまりパケットではip addressだけが住所として有効なので、ip addressを直接書き込まない限りDNS がないと通信ができない。
DNS サーバはドメインネームとip addressの対応表が必要だが、世の中にあるすべてのip addressを記録するわけにはいかない。量が多すぎるし、しょっちゅう変化するからである。そこでDNSサーバは自分のとこに記録がないと上位のDNSサーバに問い合わせる。そこにないと、さらに上位のDNSサーバに問い合わせる。というわけで、最上位のDNSサーバは全世界に13台しかなく、そのうちの1台は日本にあるらしい。どこにあるかは秘密である。ここがテロで襲われるとネットワークは使い物にならなくなっちゃうからだ。
ユーザはまず最下位のDNSサーバを使うわけだが、ここにそんなに多くの対応表があるわけではない。しかし、このサーバに対する要求は同じことが多いので、サーバは問い合わせのあったドメインネームとそのip address を記録しておけば、上位のサーバに問い合わせる必要がないから早く反応ができて好都合である。そこで、問い合わせのあったものについては保存しておく。これがキャッシュに保存するという意味である。
キャッシュの保存されるときのIDは順番に付けられる。そこで、悪いやつは、この順番にということを利用して、順番をひとつずつ繰り上げるようにしてDNSサーバに本来とは異なるip addressを注入していく。DNSが上位のDNSに問い合わせた答えを返事しているように装うと注入できる。DNSはudpだからだ。そうするとDNSが参照するのはID番号なのでどっかでユーザが要求したのと同じIDとなり、思うとおりのip addressに誘導できてしまう。IDとポート番号が同じだと注入に成功するのだ。IDの数もポート番号も有限なので確率の問題だ。
これを防ぐためには、
1)キャッシュの容量を減らすとすぐ息詰まっちゃうので、ヒットする可能性が低くなる
2)IDの割り付けをランダムにする
3)問い合わせに対する答えを保持しないで、上位に必ず問い合わせる(キャシュをなしにする)
というわけで2)の対策をとることにする。生理のDNSはルータ、RT57i だ。ようやくYAMAHAはアップデータを出したのでこれにアップデートし、言われたとおりにフィルタを設定した。これでいいのだろうか?

これって、丸投げだから上位のDNSがちゃんとしているかどうかの問題になる。で上位のDNSはkだ。
テストしてみると
123.123.123.123 (xxxxxxx.ac.jp) appears to have GREAT source port randomness and GREAT transaction ID randomness.
と問題はないようだ。

雷ー停電

昨日の午後から、今朝にかけて、大雨と雷が続いている。寒冷前線の通過に伴うものだが、移動速度が遅い、雨と雷の雲が南北に3本くらいできているのだが、普通は東に移動するものだが、どちらかというと北へ移動するものだから、いつまでたっても雲が続くことになる。
で午前3時過ぎ、停電だ。何分続いたかは分からんが、k もm もt もUPSのおかげで問題なかったと信じているけど...8月29日午前1時から6時までのアメダスの画像だ。

午前1時、午前2時、午前3時

午前4時、午前5時、午前6時
国土交通省のページの河川の水位から。
土浦市を流れる桜川が氾濫寸前。土浦市田土部の桜橋の水位の推移だ。

何やら赤とか赤点線とか黒線があるがこれらは 水防団待機水位はん濫注意水位避難判断水位はん濫危険水位計画高水位だそうで、水色の線が実際の水位の推移だ。
午前7時現在5.49m で氾濫危水位5.20m を越えている。台風とちがって、この水位が続くわけではない。きわめてlocalな豪雨だからだ。午後は収まっているだろうな。茨城県庁は独自の警戒警報のページがあるわけではないことが分かった。すべて、警戒警報などは、どっか国の機関のページへのリンクだけだ。リンク先ページでいいから茨城県だけに特化したページにすべきだ。