1. DNS/毒盛/フラグメントすり替え

KSKロールオーバーとかDNS flag dayとかで、EDNSサポートを奨励するのがいいのだろうか。

2. tssさんの指摘

http://www.e-ontap.com/blog/20181031.html をきっかけにUnboundでの脆弱性を意識するようになった。  

RFC 2308 は否定応答の SOA レコードに NS や A が付随することを許している
否定応答の SOA レコードに付随する NS や A をキャッシュする実装が存在する 

3. powerDNS blog

取り上げたが、ソフトの対応にはつながっていない。

4. Let's Encryptが動いた

Let's Encryptの対応が現状では妥当だと思える。

https://community.letsencrypt.org/t/edns-buffer-size-changing-to-512-bytes/77945

Testing your Resolver for DNS Reply Size Issues Anand Buddhdev — Dec 2009 https://labs.ripe.net/Members/anandb/content-testing-your-resolver-dns-reply-size-issues

https://www.dns-oarc.net/oarc/services/replysizetest

How to test your resolver for DNS reply-size issues https://www.zdnet.com/article/how-to-test-your-resolver-for-dns-reply-size-issues/


https://twitter.com/beyondDNS/status/1065614544423157760

https://twitter.com/beyondDNS/status/1065418868049342464

5. フラグメントすり替え

UDP返答が複数フラグメントに分割されるときには、第二フラグメント以降をすり替え易い。

DNS関連ホットトピックス 2014年2月1日 IPv6 Summit in SAPPORO 2014 https://www.iajapan.org/ipv6/summit/SAPPORO2014/pdf/JPRS_SAPPORO2014.pdf

これを利用した毒盛が可能であることが示唆されているが、実行可能な例は公表されていない。

そこで、どういう場合が可能であるか、考えてみることにする。

6. 長い返答

長い返答を返させるには

NSレコードを多数(Additional)もつ名前を狙うとかもありそう。 -- ToshinoriMaeno 2017-01-28 04:06:28

-- ToshinoriMaeno 2018-11-30 23:19:05

$ dig -t ns +dnssec 
abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.iij.ad.jp @a.dns.jp

; <<>> DiG 9.9.5-3ubuntu0.11-Ubuntu <<>> -t ns +dnssec abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.iij.ad.jp @a.dns.jp
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60283
;; flags: qr rd; QUERY: 1, ANSWER: 0, AUTHORITY: 5, ADDITIONAL: 5
;; WARNING: recursion requested but not available

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 4096
;; QUESTION SECTION:
;abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.abcdefghijklmnopqrstuvwxyz.iij.ad.jp. IN NS

;; AUTHORITY SECTION:
iij.ad.jp.              86400   IN      NS      dns1.iij.ad.jp.
iij.ad.jp.              86400   IN      NS      dns0.iij.ad.jp.
iij.ad.jp.              7200    IN      DS      24274 8 1 D395DF01232AA0DF04F85FD4C70E11CA1EC47BBF
iij.ad.jp.              7200    IN      DS      24274 8 2 37FB8689A6FA58D28FC8F1C9F3BF70B91FD02BF66C0E1E30A2779D47 F5BC4BD3
iij.ad.jp.              7200    IN      RRSIG   DS 8 3 7200 20170220174502 20170121174502 10785 jp. FWccU+vqV5lXF0eFtwdefVOB4A7WQ2qT25iRy/KpoYwGSX3jqLGi+zwU tuBrOnXvcn9SbPPVxt8zIJGO3s4hUkDg7B+Lsj6yLDnEUA1/8wFcRAZQ vruY5Lsja83RUx3rioHZm0D4doLY+VJXWg6cB8xmUJvnTNDZ5fdX2JJn cyg=

;; ADDITIONAL SECTION:
dns0.iij.ad.jp.         86400   IN      A       210.130.0.5
dns1.iij.ad.jp.         86400   IN      A       210.130.1.5
dns0.iij.ad.jp.         86400   IN      AAAA    2001:240::105
dns1.iij.ad.jp.         86400   IN      AAAA    2001:240::115

;; Query time: 6 msec
;; SERVER: 203.119.1.1#53(203.119.1.1)
;; WHEN: Sat Jan 28 12:56:09 JST 2017
;; MSG SIZE  rcvd: 518

7. DNSSEC 検証なし

検証つきのレコードには毒はいれづらい。

検証なし設定なら可能に。

delegation返答はRRSIGが付かないことを利用する。

-- ToshinoriMaeno 2018-11-27 01:52:29

8. すり替えの難易度

checksum合わせは難しくないことが多い。(説明は省略)

9. 問合せ

ここがポイントだが、対策が普及するまでは説明しない。

-- ToshinoriMaeno 2018-11-30 23:19:05

MoinQ: DNS/毒盛/フラグメント/すり替え (last edited 2021-05-02 06:45:38 by ToshinoriMaeno)