トップ 最新 追記

インターノット崩壊論者の独り言


EPIC2014
Google Public DNS (8.8.8.8, 8.8.4.4) 経由では本サイトにアクセスできないよう措置させて頂いております。

2021-09-07 頭隠して尻隠さず

送信元詐称対策が不十分で隠れオープンリゾルバを放置しているドメインを本日公開しました。

3月30日に「DNS キャッシュサーバでのアクセス制限だけでは不十分 / 隠れオープンリゾルバのスキャナを作ってみた」という記事を書きました。これに先立ち私の権威サーバで収集した約 10 万ドメインをスキャンして発見した約 8 千 (うち JP 約 700) の隠れオープンリゾルバのリストを3月7日に JPCERT/CC に報告済です。

その後これまでの半年に渡り様子を見てきましたが遅々として対策が進みませんでした。そこで 3 ヶ月ほど前から予告してきたように脆弱な国内のドメインを本日公開することとしました。なお GO.JP や LG.JP もいくつか含まれていましたが幸い昨日までの駆け込みで 1 つを残すのみになったようです。リストは以下です。

「隠れオープンリゾルバを放置している日本のドメイン」

p.s.

一部のドメインではリゾルバに rate limit などをかけて承知のうえで公開しているというところがあるかもしれませんが、問題は DNS だけでなく送信元詐称攻撃一般 (NTP amp, SYN flood, etc) ですからそのあたり油断の無きようお願いしたいと思います。大きな AS が大変なのはわかりますが大半のサイトは境界ルータにアクセスリスト 1 つ書くだけのはずです。


2021-09-18 MS は DNS をわかっていないのでは?

login.live.com が引けない件

Android 端末で login.live.com が引けないというツイートを見た。そしてこれは随分前から発生しているらしい。"Login.live.com can't be found when accessing from Android phone" という QA が MS のサイトにあって解決していないらしい。

調べてみた。

~% dig a login.live.com
 
; <<>> DiG 9.16.20 <<>> a login.live.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 35317
;; flags: qr rd ra; QUERY: 1, ANSWER: 12, AUTHORITY: 0, ADDITIONAL: 1
 
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags: do; udp: 512
;; QUESTION SECTION:
;login.live.com.		IN A
 
;; ANSWER SECTION:
login.live.com.		298 IN CNAME login.msa.msidentity.com.
login.msa.msidentity.com. 299 IN CNAME www.tm.lg.prod.aadmsa.akadns.net.
www.tm.lg.prod.aadmsa.akadns.net. 60 IN	CNAME prda.aadg.msidentity.com.
prda.aadg.msidentity.com. 300 IN CNAME www.tm.a.prd.aadg.trafficmanager.net.
www.tm.a.prd.aadg.trafficmanager.net. 300 IN A 40.126.38.69
www.tm.a.prd.aadg.trafficmanager.net. 300 IN A 40.126.38.133
www.tm.a.prd.aadg.trafficmanager.net. 300 IN A 40.126.38.68
www.tm.a.prd.aadg.trafficmanager.net. 300 IN A 20.190.166.2
www.tm.a.prd.aadg.trafficmanager.net. 300 IN A 40.126.38.67
www.tm.a.prd.aadg.trafficmanager.net. 300 IN A 20.190.166.5
www.tm.a.prd.aadg.trafficmanager.net. 300 IN A 40.126.38.134
www.tm.a.prd.aadg.trafficmanager.net. 300 IN A 40.126.38.135

CNAME が 4 段もある。これだけでもダメダメな感。

そして www.tm.a.prd.aadg.trafficmanager.net.を怪しんでみた。まずはネームサーバは?

~% dig ns trafficmanager.net @a.gtld-servers.net +noall +auth +nodnssec
trafficmanager.net.	172800 IN NS tm1.edgedns-tm.info.
trafficmanager.net.	172800 IN NS tm2.edgedns-tm.info.
trafficmanager.net.	172800 IN NS tm1.dns-tm.com.
trafficmanager.net.	172800 IN NS tm2.dns-tm.com.

そして直感で ENT (Empty Non-Terminal) を疑ってみる。

~% dnsq ns aadg.trafficmanager.net tm1.dns-tm.com
2 aadg.trafficmanager.net:
102 bytes, 1+0+1+0 records, response, authoritative, nxdomain
query: 2 aadg.trafficmanager.net
authority: trafficmanager.net 30 SOA tm1.dns-tm.com hostmaster.trafficmanager.net 2003080800 900 300 2419200 30

ビンゴ! Empty Non-Terminal がことごとく NXDOMAIN になってる。これは RFC 8020 違反。RFC 8020 のタイトルは "NXDOMAIN: There Really Is Nothing Underneath" だ。「そこから下には本当に何も無い」のである。(くわしくはスライド参照)

aadg.trafficmanager.net が無いなら www.tm.a.prd.aadg.trafficmanager.net も無いと判断してよいのである。そして、ENT の NXDOMAIN を受け取ったあとの qname-minimisation-strict: yes な Unbound ではこの通り login.live.com は引けなくなる。

~% dnsqr ns aadg.trafficmanager.net
2 aadg.trafficmanager.net:
102 bytes, 1+0+1+0 records, response, nxdomain
query: 2 aadg.trafficmanager.net
authority: trafficmanager.net 30 SOA tm1.dns-tm.com hostmaster.trafficmanager.net 2003080800 900 300 2419200 30
~% 
~% dnsqr a login.live.com
1 login.live.com:
179 bytes, 1+2+1+0 records, response, nxdomain
query: 1 login.live.com
answer: login.live.com 299 CNAME login.msa.msidentity.com
answer: login.msa.msidentity.com 300 CNAME www.tm.lg.prod.aadmsa.trafficmanager.net
authority: trafficmanager.net 23 SOA tm1.dns-tm.com hostmaster.trafficmanager.net 2003080800 900 300 2419200 30

ところで、tm[12].edgedns-tm.info では正しく NODATA の応答が返る。tm[12].dns-tm.com が RFC 違反。

~% dnsq ns aadg.trafficmanager.net tm1.edgedns-tm.info
2 aadg.trafficmanager.net:
102 bytes, 1+0+1+0 records, response, authoritative, noerror
query: 2 aadg.trafficmanager.net
authority: trafficmanager.net 30 SOA tm1.dns-tm.com hostmaster.trafficmanager.net 118221445 900 300 2419200 30
ちなみに dns-tm.com は委任と権威の NS 応答が異なっている。そのうち大事故を起こしそう。
~% dig ns dns-tm.com @a.gtld-servers.net +nodnssec +noall +auth
dns-tm.com.		172800 IN NS ns1-09.azure-dns.com.
dns-tm.com.		172800 IN NS ns2-09.azure-dns.net.
dns-tm.com.		172800 IN NS ns3-09.azure-dns.org.
dns-tm.com.		172800 IN NS ns4-09.azure-dns.info.
dns-tm.com.		172800 IN NS ns4-34.azure-dns.info.
dns-tm.com.		172800 IN NS ns1-34.azure-dns.com.
dns-tm.com.		172800 IN NS ns2-34.azure-dns.net.
dns-tm.com.		172800 IN NS ns3-34.azure-dns.org.
~% 
~% dig ns dns-tm.com @ns1-09.azure-dns.com +nodnssec +noall +ans
dns-tm.com.		172800 IN NS ns1-09.azure-dns.com.
dns-tm.com.		172800 IN NS ns2-09.azure-dns.net.
dns-tm.com.		172800 IN NS ns3-09.azure-dns.org.
dns-tm.com.		172800 IN NS ns4-09.azure-dns.info.
本日のツッコミ(全5件) [ツッコミを入れる]

Before...

tm [奇妙な返事は親子同居で説明つきませんか。]

tm [prda.aadg.msidentity.com はCNAMEレコードを持っていますが、 その値は問い合わせたNS..]

tm [$ dig -t a trafficmanager\.net. @tm1.dns-tm.com NXDOMAI..]


最近の日記

2008|04|05|06|07|08|10|11|
2009|02|03|04|06|07|09|10|11|
2010|01|03|06|09|10|11|12|
2011|01|02|03|05|06|07|10|11|
2012|03|06|07|10|11|12|
2013|02|03|04|05|06|08|09|10|11|
2014|01|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|07|08|09|10|11|12|
2016|01|06|08|12|
2017|03|07|08|09|12|
2018|04|08|10|11|
2019|01|02|07|11|12|
2020|01|02|03|05|06|07|08|
2021|02|03|09|

リンク

Copyright by T.Suzuki