1. watchA/flip.e-ontap.com
NS毒盛を体験する。あるいは、NSの高速引越を体験する。 /上級編
https://twitter.com/tss_ontap_o/status/662068144538673152
5分ごとに擬似的に移転インジェクションされるドメインを作りました。 毎時 0, 5, 10, ... 55 分に権威サーバの NS が切り替わります。 5分毎に dig *.flip.e-ontap\.com するとキャッシュの動作がわかるでしょう。* は毎回違う任意の文字列で。 9:45 - 2015年11月5日
詳しい説明はこれだ。http://www.e-ontap.com/dns/flip.e-ontap.com.html
tssさんの言う「移転インジェクション」がどういうものかを理解していれば、簡単な話なのだが、
初心者に理解しやすい説明ができないものか、考えている。-- ToshinoriMaeno 2019-01-13 00:37:18
Unboundはharden-referral-pathで回避できるようです。
/1.1.1.1 の動作は?
1.1. 試してみよう
移転あるいは毒盛の対象はe-ontap.comのサブドメインであるflip.e-ontap.comのNSである。
- 次のコマンドを2分間隔で順に実行すると、NSレコードの変化が見えるだろう。(見えないこともある。)
毎時1,11,21,31,41,51分のどこかで始めるのがいい。(10分周期で繰り返している)
dig [1-9].flip.e-ontap.com
出力例
$ dig 1.flip.e-ontap.com ; <<>> DiG 9.12.3 <<>> 1.flip.e-ontap.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 12863 ;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1 ;; OPT PSEUDOSECTION: ; EDNS: version: 0, flags:; udp: 1220 ;; QUESTION SECTION: ;1.flip.e-ontap.com. IN A ;; ANSWER SECTION: 1.flip.e-ontap.com. 600 IN A 150.42.6.1 ;; Query time: 22 msec ;; SERVER: 127.0.0.3#53(127.0.0.3) ;; WHEN: 月 1月 14 08:41:08 JST 2019 ;; MSG SIZE rcvd: 63
最初はdig 1.flip.e-ontap.com; 2分後には dig 2.flip.e-ontap.com; さらに2分後には dig 3.flip.e-ontap.com; ...
一度、毒盛されると、NSが一時間は変化しないリゾルバーもある。(e.g. Unboundなど)
- この部分は教材としては改良の余地がある。
5分過ぎたら、2度繰り返してみよう。Aレコードが変化していれば、移転(毒盛)成功である。
1.2. 背景
Aレコードを問合せているだけなのに、なぜNSが書き換わるのか。(そのような動作をするリゾルバーが存在する。)
1.3. 設定
e-ontap.comゾーンでの設定 ns1.flip.e-ontap.comに委任・委譲(NS)
$ dig -t a aaa.flip.e-ontap.com @ns.e-ontap.com ; <<>> DiG 9.12.0 <<>> -t a aaa.flip.e-ontap.com @ns.e-ontap.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 30744 ;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;aaa.flip.e-ontap.com. IN A ;; AUTHORITY SECTION: flip.e-ontap.com. 86400 IN NS ns1.flip.e-ontap.com. ;; ADDITIONAL SECTION: ns1.flip.e-ontap.com. 86400 IN A 150.42.6.1 ;; Query time: 9 msec ;; SERVER: 14.192.44.1#53(14.192.44.1) ;; WHEN: Tue Apr 03 14:43:56 JST 2018 ;; MSG SIZE rcvd: 72
$ dig -t a aaa.flip.e-ontap.com @ns1.flip.e-ontap.com dig: couldn't get address for 'ns1.flip.e-ontap.com': failure
1.4. NSのミスか
$ dig -t a aaa.flip.e-ontap.com @ns.flip.e-ontap.com ; <<>> DiG 9.12.0 <<>> -t a aaa.flip.e-ontap.com @ns.flip.e-ontap.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39951 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;aaa.flip.e-ontap.com. IN A ;; ANSWER SECTION: aaa.flip.e-ontap.com. 60 IN A 150.42.6.5 ;; AUTHORITY SECTION: flip.e-ontap.com. 3600 IN NS ns.flip.internot.jp. ;; Query time: 10 msec ;; SERVER: 150.42.6.5#53(150.42.6.5) ;; WHEN: Tue Apr 03 14:46:30 JST 2018 ;; MSG SIZE rcvd: 87
1.5. 返事があった
$ dig -t a aaa.flip.e-ontap.com @ns1.flip.e-ontap.com ; <<>> DiG 9.12.0 <<>> -t a aaa.flip.e-ontap.com @ns1.flip.e-ontap.com ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26798 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 0 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;aaa.flip.e-ontap.com. IN A ;; ANSWER SECTION: aaa.flip.e-ontap.com. 60 IN A 150.42.6.5 ;; AUTHORITY SECTION: flip.e-ontap.com. 3600 IN NS ns.flip.internot.jp. ;; Query time: 12 msec ;; SERVER: 150.42.6.5#53(150.42.6.5) ;; WHEN: Tue Apr 03 14:48:28 JST 2018 ;; MSG SIZE rcvd: 87
1.6. さらに
時刻に注意
$ dig -t a bbb.flip.e-ontap.com @ns.flip.internot.jp ; <<>> DiG 9.12.0 <<>> -t a bbb.flip.e-ontap.com @ns.flip.internot.jp ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 3381 ;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1 ;; WARNING: recursion requested but not available ;; QUESTION SECTION: ;bbb.flip.e-ontap.com. IN A ;; ANSWER SECTION: bbb.flip.e-ontap.com. 60 IN A 150.42.6.5 ;; AUTHORITY SECTION: flip.e-ontap.com. 3600 IN NS ns.flip.e-ontap.com. ;; ADDITIONAL SECTION: ns.flip.e-ontap.com. 3600 IN A 150.42.6.1 ;; Query time: 10 msec ;; SERVER: 150.42.6.5#53(150.42.6.5) ;; WHEN: Tue Apr 03 14:51:13 JST 2018 ;; MSG SIZE rcvd: 87