1. DNS/KnotResolver/危ない機能

1.1. 警告

mode('permissive') は危険な機能です。使ってはいけません。

1.2. きっかけ

こういうtweetがありました。 https://twitter.com/otsuka0752/status/1277365526801629185?s=20

https://twitter.com/tss_ontap_o/status/1298958328999972865?s=20

http://www.e-ontap.com/blog/?date=20200827 /tss版

お使いのリゾルバーを試してみてください。

1.3. 1.1.1.はどれくらい危ないのか

1.4. mode('permissive')

permissiveだけ指定したときの毒盛脆弱性 -- ToshinoriMaeno 2020-08-27 04:08:45

DNS/Knot Resolver/config/mode によると、

1.5. 実験の目的

brau.internat.jp ゾーン(/毒設定)を使って、/brau.jpのNSを乗取れるかを試す。

結論:

再現性に問題がありますが、乗取は可能です。非常に危険です。利用には十分注意が必要です。

1.6. 毒盛1

$dig -t ns brau.internat.jp

   brau.internat.jp.    60      IN      NS      ns.brau.internat.jp.

/1.1.1.1 は上の返事になるはずです。

以下は mode("permissive") のKnot Resolver 5.1.2 での結果です。

1.7. 毒盛2

$ dig -t soa brau.jp @127.0.0.1

brau.jp.                1777    IN      SOA     fake.brau.jp. hostmaster.brau.jp. 1598667800 16384 2048 1048576 2560

偽brau.jp SOA TTLが長すぎる。

/別返答

正しい Aレコードはこれなのだが、すでに毒盛で別のアドレスを指している。/解説2

ns.brau.jp.             120     IN      A       150.42.6.4

これでは確認にならないので、こっちの方がよいだろう。/解説3

$dig ns.brau.jp

乗取られていると、NXDOMAINが返ってくる?

1.8. 確認

$dig -t soa brau.jp

  brau.jp.              1730    IN      SOA     ns.brau.internat.jp. hostmaster.brau.jp. 1598366138 16384 2048 1048576 2560

SOA 値の最初が ns.brau.internat.jp になっていたら、毒盛されるリゾルバーを使っている可能性があります。ご用心。

本来の返答はこれです。1.1.1.1 も毒は入っていません。

brau.jp.                119     IN      SOA     ns.brau.jp. tss.e-ontap.com. 2020082501 3600 600 86400 60

1.9. 参考

$ dig -t ns brau.internat.jp @8.8.8.8

; <<>> DiG 9.11.3-1ubuntu1.12-Ubuntu <<>> -t ns brau.internat.jp @8.8.8.8
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 33262
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 512
;; QUESTION SECTION:
;brau.internat.jp.              IN      NS

;; AUTHORITY SECTION:
internat.jp.            59      IN      SOA     ns.internat.jp. tss.e-ontap.com. 2020061601 3600 600 86400 60

;; Query time: 61 msec
;; SERVER: 8.8.8.8#53(8.8.8.8)
;; WHEN: Thu Aug 27 15:57:04 JST 2020
;; MSG SIZE  rcvd: 99

MoinQ: DNS/KnotResolver/危ない機能 (last edited 2020-08-30 23:26:25 by ToshinoriMaeno)