Re: [dnssd] UTF8 use in DNS populated by mDNS

Douglas Otis <> Sat, 22 November 2014 02:29 UTC

Return-Path: <>
Received: from localhost ( []) by (Postfix) with ESMTP id DFA1E1AC3A7 for <>; Fri, 21 Nov 2014 18:29:19 -0800 (PST)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -2
X-Spam-Status: No, score=-2 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, SPF_PASS=-0.001] autolearn=ham
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id UvqYMa7DcD85 for <>; Fri, 21 Nov 2014 18:29:17 -0800 (PST)
Received: from ( [IPv6:2607:f8b0:400e:c03::230]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by (Postfix) with ESMTPS id 895641AC3A5 for <>; Fri, 21 Nov 2014 18:29:17 -0800 (PST)
Received: by with SMTP id rd3so6088185pab.7 for <>; Fri, 21 Nov 2014 18:29:16 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=20120113; h=subject:mime-version:content-type:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=MQ2CsmVypflLflHVYsGcVETdBouBTWRfpLilXvplHmA=; b=JNJaXBPO/RJFjJE1hUwV7C7LqY7OCkg+2bMCoo1LmdmuWtQQ9Uo1IN4+hzSnJCEJvb qblQpM2zlhAQjaAKrCk5gT8PDu4LV/JL2KhNhbKlvlxCBt2MN4Vv6QDjnIIBm8zCfQT+ a8yyqoocUpRSixKIy8O7NPBzis4Teg9pcByY1kTZBxJJe9N1vS27T4l3pAc+DbbNflYf xioDM5A1rt10pqcNrlkdjad7HkJ8m0Bsgvpj5HGzGZWDiHbjgJnMZilXsCPShUAt2xqI ggkRjOeTJXGVdFIRqL1R1Ivr9C1DNcOSCDAn7hkSIMzS3Gajr3hkFpuJORcuNrwCfIBn QY0A==
X-Received: by with SMTP id lk2mr12442773pab.61.1416623356804; Fri, 21 Nov 2014 18:29:16 -0800 (PST)
Received: from [] ( []) by with ESMTPSA id lm3sm6016316pab.34.2014. for <multiple recipients> (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 21 Nov 2014 18:29:14 -0800 (PST)
Mime-Version: 1.0 (Mac OS X Mail 7.3 \(1878.6\))
Content-Type: text/plain; charset=us-ascii
From: Douglas Otis <>
In-Reply-To: <>
Date: Fri, 21 Nov 2014 18:29:12 -0800
Content-Transfer-Encoding: quoted-printable
Message-Id: <>
References: <> <>
To: Andrew Sullivan <>
X-Mailer: Apple Mail (2.1878.6)
Cc:, Douglas Otis <>
Subject: Re: [dnssd] UTF8 use in DNS populated by mDNS
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "Discussion of extensions to Bonjour \(mDNS and DNS-SD\) for routed networks." <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Sat, 22 Nov 2014 02:29:20 -0000

On Nov 20, 2014, at 2:11 PM, Andrew Sullivan <> wrote:

> Hi,
> On Wed, Nov 19, 2014 at 04:50:39PM -0800, Douglas Otis wrote:
>> If UTF-8 is to be permitted in DNS populated using mDNS inputs, a
>> superset of rules directly and indirectly established to support
>> safe use of IDNA labels are necessary, otherwise omitting such
>> requirements would permit trivial spoofing.  The requirements should
>> include IDNA2008 considerations that restrict permitted code points.
> In which part of the DNS-SD name do you want these restrictions?  I
> think there is considerable discussion of the different parts of those
> names in the draft I discussed in Honolulu.
> Note that there is _already_ a standard for putting "UTF-8 labels" in
> the DNS (going back to STD 13 and reiterated by RFC 2181).  In effect,
> they're not "UTF-8 labels" but rather series of octets.

Dear Andrew,

DNS-SD generates:
'Service Instance Name = <Instance> . <Service> . <Domain>'

While there are restrictions on code points that define 'Instance' per RFC5198 with an additional stipulation not to include values between 0x00-0x1F and 0x7F, how the 'Domain' portion is determined is far less clear.  This is a concern when derived from easily spoofed multicast mDNS responses.  It is important a visual selection process does its best to preclude trivial domain spoofing which might resolve malicious sources.  

>> It seems some advocate use of spaces in a domain name label be
>> permitted.  Even this minor change may confuse users about the
>> specific domain when seen with respect to commandline based
>> applications.
> This is already permitted, of course, just like anything else in
> labels.
> But as I guess is plain from my work on the mdns-dns compatibility
> I-D, I do think there is a long-term problem here, which is why I
> recommend the minimal interoperable subset.

The concern is specifically with visually deceptive resources.  Limitations on what is allowed should ensure against abuse of right-to-left and left-to-right issues for example.  Some TLDs protect users with additional rules enforced by registrars that extend beyond those imposed by IDNA2008.  Allowing naive UTF-8 publication of mDNS resources into DNS without conversion to A-labels permitted for DNS suggests there will be an even greater need to qualify what appears to be external actually resides within the Internet.  A step facilitated by imposing use of ugly A-labels within local publication should also better guard against cache abuse as well.

Douglas Otis