TOC 
DKIM Working GroupD. Otis
Internet-DraftTrend Micro, NSSG
Intended status: Standards TrackMay 19, 2008
Expires: November 20, 2008 


DKIM Author Domain Signing Practices (ADSP)
draft-otis-dkim-adsp-01

Status of this Memo

By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79.

Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts.

Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as “work in progress.”

The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt.

The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html.

This Internet-Draft will expire on November 20, 2008.

Abstract

Author Domain Signing Practices (ADSP) advertises the adoption level of DomainKeys Identified Mail (DKIM), as described in [RFC4871] (Allman, E., Callas, J., Delany, M., Libbey, M., Fenton, J., and M. Thomas, “DomainKeys Identified Mail (DKIM) Signatures,” May 2007.), for outbound messages publicly exchanged using SMTP, as described in [RFC2821] (Klensin, J., “Simple Mail Transfer Protocol,” April 2001.). Application of ADSP by Mail User Agents (MUAs) might need to be offered as an option, to accommodate messages exchanged over different public protocols. This document describes records that authors' domains can publish to advertise their DKIM practices for outgoing messages containing the Author Domain. ADSP will not dictate any specific use of DKIM identity parameters. Such identity restrictions go beyond the charter and unnecessarily limit ADSP applicability. Confirmation of an individual author's identity is orthogonal to and fully independent of ADSP.



Table of Contents

1.  Introduction
2.  Language and Terminology
    2.1.  Terms Imported from DKIM Signatures Specification
    2.2.  Valid Signature
    2.3.  Key Domain
    2.4.  Author Key Domain
    2.5.  Author Address
    2.6.  Author Domain
    2.7.  Author Domain Signing Practices
3.  Operation Overview
    3.1.  ADSP Usage
    3.2.  ADSP Results
4.  Detailed Description
    4.1.  DNS Representation
    4.2.  Publication of ADSP Records
5.  IANA Considerations
    5.1.  ADSP Specification Tag Registry
    5.2.  ADSP Outbound Signing Practices Registry
    5.3.  ADSP Flags Registry
6.  Security Considerations
    6.1.  ADSP Threat Model
    6.2.  DNS Attacks
    6.3.  DNS Wildcards
7.  References
    7.1.  References - Normative
    7.2.  References - Informative
Appendix A.  Usage Examples
    A.1.  Single Location Domains
    A.2.  Bulk Mailing Domains
    A.3.  Commonly Forged Transactional Messages
    A.4.  Third Party Senders
Appendix B.  Acknowledgements
Appendix C.  Changes in draft-otis-dkim-adsp-00
§  Author's Address
§  Intellectual Property and Copyright Statements




 TOC 

1.  Introduction

DomainKeys Identified Mail (DKIM) defines a mechanism by which email messages can be cryptographically signed, permitting a Key Domain to claim responsibility for the introduction of a message into the mail stream. Receiving hosts can verify the signature by querying the Key Domain to retrieve the appropriate public key, and thereby confirm that the message was attested to by a party in possession of the private key and in control of a portion of the Key Domain.

However, the legacy of the Internet is such that not all messages will be signed, and the absence of a signature on a message is not an a priori indication of forgery. In fact, during early phases of deployment it is likely that most messages will remain unsigned. However, some domains might decide to sign all of their outgoing mail, for example, to better protect their brand name. It is desirable such domains be able to advertise that fact to other hosts. This is the premise of Author Domain Signing Practices (ADSP).

Hosts implementing this specification can inquire what Author Domain Signing Practices an Author Domain advertises. This inquiry is called an Author Domain Signing Practices discovery.

The detailed requirements for Author Domain Signing Practices are given in [RFC5016] (Thomas, M., “Requirements for a DomainKeys Identified Mail (DKIM) Signing Practices Protocol,” October 2007.). This document refers extensively to [RFC4871] (Allman, E., Callas, J., Delany, M., Libbey, M., Fenton, J., and M. Thomas, “DomainKeys Identified Mail (DKIM) Signatures,” May 2007.) and assumes the reader is familiar with it.

Requirements Notation:
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in [RFC2119] (Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” March 1997.)



 TOC 

2.  Language and Terminology



 TOC 

2.1.  Terms Imported from DKIM Signatures Specification

Some terminology used herein is derived directly from [RFC4871] (Allman, E., Callas, J., Delany, M., Libbey, M., Fenton, J., and M. Thomas, “DomainKeys Identified Mail (DKIM) Signatures,” May 2007.). In several cases, references in that document to Sender have been changed to Author here, to emphasize the relationship to the Author address(es) in the From: header field described in [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.). Briefly,



 TOC 

2.2.  Valid Signature

A Valid Signature is any message signature which correctly verifies using procedures described in section 6.1 of [RFC4871] (Allman, E., Callas, J., Delany, M., Libbey, M., Fenton, J., and M. Thomas, “DomainKeys Identified Mail (DKIM) Signatures,” May 2007.).



 TOC 

2.3.  Key Domain

The Key Domain is the domain listed in the d= tag of a Valid Signature.



 TOC 

2.4.  Author Key Domain

The Author Key Domain is the domain listed in the d= tag of a Valid Signature that is at or above the Author Domain. The Author Key Domain must match all of its domain components with that of the Author Domain. When a referenced Key contains a t=s tag and value, the Author Key Domain will match with the entire Author Domain. ADSP does not require the i= tag to match with any local-parts, and can include subdomains of the Author Domain.



 TOC 

2.5.  Author Address

An "Author Address" is an email address in the From header field of a message [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.). If the From header field contains multiple addresses, the message has multiple Author Addresses.



 TOC 

2.6.  Author Domain

An "Author Domain" is determined by the entire right-hand-side of the Author Address (the portion that is to the right of the "@", excluding the "@" itself).



 TOC 

2.7.  Author Domain Signing Practices

"Author Domain Signing Practices" (or just "practices") consist of a machine-readable record published at the _adsp. subdomain of the Author Domain. The ADSP record includes statements about the outgoing mail practices for messages containing the Author Domain.



 TOC 

3.  Operation Overview

Domain owners can publish Author Domain Signing Practices via a distribution service, such as the Domain Name System; specific details are given in Section 4.1 (DNS Representation).

Hosts can obtain Author Domain Signing Practices of the domain(s) specified by the Author Domain as described in Section 4.2.2 (Author Signing Practices Discovery Procedure). If a message has multiple Author Addresses, ADSP discoveries SHOULD be performed independently. This standard will not cover the consolidation of combined ADSP results.



 TOC 

3.1.  ADSP Usage

A receiving host might obtain varying amounts of useful information through ADSP transactions.



 TOC 

3.2.  ADSP Results

Author Domain Signing Practices discovery at an Author Domain provides four possible results:



 TOC 

4.  Detailed Description



 TOC 

4.1.  DNS Representation

Author Signing Practices records are published using the DNS TXT resource record type.

NON-NORMATIVE DISCUSSION [to be removed before publication]: There has been considerable discussion on the DKIM WG mailing list regarding the relative advantages of TXT and a new resource record (RR) type. Read the archive for details.

The RDATA for ADSP resource records is textual in format, with specific syntax and semantics relating to their role in describing Author Domain Signing Practices. The "Tag=Value List" syntax described in section 3.2 of [RFC4871] (Allman, E., Callas, J., Delany, M., Libbey, M., Fenton, J., and M. Thomas, “DomainKeys Identified Mail (DKIM) Signatures,” May 2007.) is used. Records not in compliance with that syntax or the syntax of individual tags described in Section 4.3 MUST be ignored, although they MAY cause the logging of warning messages via an appropriate system logging mechanism. If the RDATA contains multiple character strings, the strings are to be logically concatenated with no delimiters placed between the strings.

The ADSP record for an Author Domain is published at a _adsp. subdomain directly below the Author Domain; e.g., the ADSP record for example.com would be a TXT record that is published at _adsp.example.com. A domain MUST NOT publish more than one ADSP record; the semantics of an ADSP transaction returning multiple ADSP records for a single domain are undefined. (Note that example.com and mail.example.com are different domains.)



 TOC 

4.2.  Publication of ADSP Records

Author Domain Signing Practices are intended to apply to all mail containing the Author Domain. As an optional defensive strategy against subdomain spoofing, ADSP records could also be placed at domains that might appear to support SMTP.

Wildcards within a domain publishing ADSP records will not pose a problem. This is discussed in more detail in Section 6.3 (DNS Wildcards).



 TOC 

4.2.1.  Record Syntax

ADSP records use the "tag=value" syntax described in section 3.2 of [RFC4871] (Allman, E., Callas, J., Delany, M., Libbey, M., Fenton, J., and M. Thomas, “DomainKeys Identified Mail (DKIM) Signatures,” May 2007.).

Tags used in ADSP records are described below. Unrecognized tags MUST be ignored. In the ABNF below, the WSP token is imported from [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.). The ALPHA and DIGIT tokens are imported from [RFC5234] (Crocker, D. and P. Overell, “Augmented BNF for Syntax Specifications: ABNF,” January 2008.).

dkim=
practices (plain-text; REQUIRED). Possible values are as follows:
OPEN
(Default) The Author Domain permits unsigned outbound mail.
CLOSED
All mail containing the Author Domain is initially signed by an Author Key Domain.
LOCKED
All mail containing the Author Domain is signed by an Author Key Domain. Furthermore, if a message arrives without a valid Author Key Domain signature, receiving hosts are encouraged to dismiss the message.

ABNF:

      adsp-dkim-tag = %x64.6b.69.6d *WSP "="
          *WSP ("OPEN" / "CLOSED" / "LOCKED")
t=
Flags, represented as a colon-separated list of names (plain-text; OPTIONAL, default is that no flags are set). Flag values are:
s
The practices are not to be applied to subdomains of the Author Domain. This information might assist receiving hosts to better classify subdomains lacking MX or ADSP, but that have A records during an MX mandate transitional phase.

ABNF:

      adsp-t-tag = %x74 *WSP "="
          *WSP adsp-t-tag-flag 0*( *WSP ":" *WSP adsp-t-tag-flag )

      adsp-t-tag-flag = "s" / hyphenated-word ; for future extension

      hyphenated-word = ALPHA [ *(ALPHA / DIGIT / "-") (ALPHA / DIGIT) ]
Unrecognized flags MUST be ignored.


 TOC 

4.2.2.  Author Signing Practices Discovery Procedure

Hosts discovering an ADSP record SHOULD produce a result semantically equivalent to applying the following steps in the order listed below. In practice, several of these steps can be performed in parallel to improve performance. However, implementations SHOULD avoid unnecessary DNS transactions. For the purposes of this section a "valid ADSP record" is one that is both syntactically and semantically correct; in particular, it matches the ABNF for a tag-list and includes a defined dkim= tag.

  1. Verify Domain Exists. The host SHOULD perform a DNS query for an MX record at the Author Domain (with no prefix). If the result of this query is an NXDOMAIN error, the discovery algorithm MUST terminate with an error indicating SMTP is not supported by the Author Domain.

    NON-NORMATIVE DISCUSSION: To better protect domains not supporting SMTP, an initial query for an MX record is a reasonable choice since this record is predominately published by domains supporting SMTP and is more readily cached than a negative result. Whenever SMTP mandates MX records to support public exchanges, then not obtaining an MX record will terminate the discovery algorithm with an appropriate error.

  2. Fetch ADSP Record. The host SHOULD query DNS for a TXT record corresponding to the Author Domain prefixed by _adsp. (note the trailing dot). If a valid ADSP record is obtained, use that record; otherwise, continue to the next step.

  3. Verify Support of SMTP. When an MX record has not been found at the Author Domain, the host SHOULD query DNS for an A record at the Author Domain. If the result of this query is anything other than a NOERROR response with at least one A record, the discovery algorithm terminates with a result indicating SMTP is not supported by the Author Domain.

    NON-NORMATIVE DISCUSSION: Whenever SMTP mandates MX records to support public exchanges, subsequent checks for A records should not be made, since the discovery process would conclude at the first step.

If any of the transactions involved in Author Signing Practices discovery result in a SERVFAIL error response, the algorithm terminates without returning a result; possible actions include queuing the message or returning an SMTP error indicating a temporary failure.



 TOC 

5.  IANA Considerations

ADSP introduces some new namespaces that have been registered with IANA. In all cases, new values are assigned only for values that have been documented in a published RFC that has IETF Consensus [RFC2434] (Narten, T. and H. Alvestrand, “Guidelines for Writing an IANA Considerations Section in RFCs,” October 1998.).

INFORMATIVE NOTE [to be removed before publication]: Per the [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.) definition, a domain must start with a letter or digit. Hence names such as _adsp. that start with an underscore cannot collide with host names and domains used by [RFC2821] (Klensin, J., “Simple Mail Transfer Protocol,” April 2001.) and [RFC2822] (Resnick, P., “Internet Message Format,” April 2001.).



 TOC 

5.1.  ADSP Specification Tag Registry

An ADSP record provides for a list of specification tags. IANA has established the ADSP Specification Tag Registry for specification tags that can be used in ADSP fields.

The initial entries in the registry comprise:

      +------+-----------------+
      | TYPE | REFERENCE       |
      +------+-----------------+
      | dkim | (this document) |
      | t    | (this document) |
      +------+-----------------+

ADSP Specification Tag Registry Initial Values



 TOC 

5.2.  ADSP Outbound Signing Practices Registry

The dkim= tag spec, defined in Section 4.2.1 (Record Syntax), provides for a value specifying Outbound Signing Practices. IANA has established the ADSP Outbound Signing Practices Registry for Outbound Signing Practices.

The initial entries in the registry comprise:

      +-----------+-----------------+
      | TYPE      | REFERENCE       |
      +-----------+-----------------+
      | OPEN      | (this document) |
      | CLOSED    | (this document) |
      | LOCKED    | (this document) |
      +-----------+-----------------+

ADSP Outbound Signing Practices Registry Initial Values



 TOC 

5.3.  ADSP Flags Registry

The t= tag spec, defined in Section 4.2.1 (Record Syntax), provides for a value specifying Flags. IANA has established the ADSP Flags Registry for ADSP Flags.

The initial entries in the registry comprise:

      +------+-----------------+
      | TYPE | REFERENCE       |
      +------+-----------------+
      | s    | (this document) |
      +------+-----------------+

ADSP Flags Registry Initial Values



 TOC 

6.  Security Considerations

Security considerations in the Author Domain Signing Practices are mostly related to attempts on the part of malicious senders to represent themselves as authors for whom they are not authorized to send mail, often in an attempt to defraud recipients of the message.

Messages signed by keys having a g= tag restricting the range of valid local-parts are likely applied by systems that are beyond the direct control of the Author Key Domain. As a result, additional care should be taken when the restricted local-part is not within an Author Address. Acceptance of g= keys signing messages on behalf of non-Author Addresses is discouraged.

Additional security considerations regarding Author Domain Signing Practices are found in the DKIM threat analysis (Fenton, J., “Analysis of Threats Motivating DomainKeys Identified Mail (DKIM),” September 2006.) [RFC4686].



 TOC 

6.1.  ADSP Threat Model

Email recipients often have a core set of content authors that they already trust. Common examples include financial institutions with which they have an existing relationship and Internet web transaction sites with which they conduct business.

Email abuse often seeks to exploit the name-recognition that recipients will have, for a legitimate email author, by using its domain name in the From: header field. Especially since many popular MUAs do not display the author's email address, there is no empirical evidence of the extent that this particular unauthorized use of a domain name contributes to recipient deception or that eliminating it will have significant effect.

However, closing this exploit could facilitate some types of optimized processing by receive-side message filtering engines, since it could permit them to maintain higher-confidence assertions based upon trusted Author Key Domains.

Unauthorized uses of domain names occur elsewhere in messages, as do unauthorized uses of organizations' names. These attacks are outside the scope of this specification.

ADSP does not provide any benefit unless receiving host systems act upon ADSP results, either by treating the message differently during the delivery process or by showing some indicator to the end recipient. Such a system is out of scope for this specification.

The ADSP discovery algorithm performs up to three DNS transactions per Author Domain. Since these transactions are driven by domain names in email message headers of possibly fraudulent email, receiving hosts attempting to discover ADSP records can become participants in traffic multiplication attacks.



 TOC 

6.2.  DNS Attacks

An attack might be waged against DNS infrastructure in an attempt to disable services dependent upon DNS. Such attacks could be made worse by receiving hosts employing ADSP discovery. For this reason, SMTP should consider making MX records mandatory for public exchanges. The ADSP discovery process is not expected to impact the likelihood of an attacker being successful at poisoning local DNS resolvers. In addition, such DNS security issues are addressed by DNSSEC (Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, “DNS Security Introduction and Requirements,” March 2005.) [RFC4033].

Because ADSP operates within the framework of the legacy e-mail system, the default result in the absence of an ADSP record is for the Author Domain to be considered OPEN where not all messages are expected to be signed by a Author Key Domain. It is therefore important that the ADSP clients distinguish a DNS failure such as SERVFAIL from other DNS errors so that appropriate actions can be taken.

To ensure message reception remains viable for crucial systems when DNS fails, IP addresses of crucial SMTP clients should be white listed to allow ADSP and DKIM to be selectively bypassed during such events.



 TOC 

6.3.  DNS Wildcards

Wildcards within a domain, excluding wildcard MX records, that also publish ADSP records, do not pose a significant problem. While referencing SMTP related records will not provide NXDOMAIN results, either an MX or A record is still obtained as evidence of SMTP support.

NON-NORMATIVE NOTE: Complete ADSP coverage for all subdomains of a domain remains possible. However, ADSP records must be published at every subdomain containing A records, in addition to subdomains containing MX records. When SMTP adopts an MX record mandate for public exchanges, ADSP records would be required only at subdomains containing MX records.



 TOC 

7.  References



 TOC 

7.1. References - Normative

[RFC2119] Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” BCP 14, RFC 2119, March 1997 (TXT, HTML, XML).
[RFC2434] Narten, T. and H. Alvestrand, “Guidelines for Writing an IANA Considerations Section in RFCs,” BCP 26, RFC 2434, October 1998 (TXT, HTML, XML).
[RFC2821] Klensin, J., “Simple Mail Transfer Protocol,” RFC 2821, April 2001 (TXT).
[RFC2822] Resnick, P., “Internet Message Format,” RFC 2822, April 2001 (TXT).
[RFC4033] Arends, R., Austein, R., Larson, M., Massey, D., and S. Rose, “DNS Security Introduction and Requirements,” RFC 4033, March 2005 (TXT).
[RFC4686] Fenton, J., “Analysis of Threats Motivating DomainKeys Identified Mail (DKIM),” RFC 4686, September 2006 (TXT).
[RFC4871] Allman, E., Callas, J., Delany, M., Libbey, M., Fenton, J., and M. Thomas, “DomainKeys Identified Mail (DKIM) Signatures,” RFC 4871, May 2007 (TXT).
[RFC5234] Crocker, D. and P. Overell, “Augmented BNF for Syntax Specifications: ABNF,” STD 68, RFC 5234, January 2008 (TXT).


 TOC 

7.2. References - Informative

[RFC5016] Thomas, M., “Requirements for a DomainKeys Identified Mail (DKIM) Signing Practices Protocol,” RFC 5016, October 2007 (TXT).


 TOC 

Appendix A.  Usage Examples

These examples are intended to illustrate typical uses of ADSP. They are not intended to be exhaustive, nor to apply to every domain's or mail system's individual situation.

Administrators are advised to consider the ways that mail processing can modify messages in a manner that will invalidate existing DKIM signatures, such as mailing lists, courtesy forwarders, and other paths that could add or modify headers, or modify the message body. In that case, if these modifications invalidate DKIM signatures, receiving hosts will consider the mail not to have an Author Key Domain signature, even though a Valid Signature was present when the mail was originally sent.



 TOC 

A.1.  Single Location Domains

A common mail system configuration handles all of a domain's users' incoming and outgoing mail through a single MTA or group of MTAs. In that case, the MTA(s) can be configured to sign outgoing mail with an Author Key Domain signature.

In this situation it might be appropriate to publish a CLOSED ADSP record for the Author Domain, depending on whether users also send mail through other paths that do not apply an Author Key Domain signature. Such paths could include MTAs at hotels or hotspot networks used by travelling users, or web sites that provide "mail an article" features.



 TOC 

A.2.  Bulk Mailing Domains

Another common configuration uses a domain solely for bulk or broadcast mail, with no individual human users, again typically sending all the mail through a single MTA or group of MTAs that can apply an Author Key Domain signature. In this case, before publishing a CLOSED ADSP record, the domain's management should be confident that all of its outgoing mail will be sent through signing MTAs. Lacking individual users, the domain is unlikely to participate in mailing lists, but could still send mail through other paths that might invalidate signatures.

Domain owners also often use specialist mailing providers to send their bulk mail. In that case, the mailing provider needs access to a suitable signing key in order to apply an Author Key Domain signature. One possible route would be for the Author Key Domain owner to generate the key and give it to the mailing provider. Another would be for the Author Key Domain to delegate a subdomain below the _domainkey. label to the mailing provider. For example, bigbank.example might delegate esp-00._domainkey.bigbank.example to such a provider. In that case, the provider could generate keys and DKIM DNS records itself and provide Author Key Domain signatures.



 TOC 

A.3.  Commonly Forged Transactional Messages

In some cases, a domain might sign all its outgoing mail with an Author Key Domain signature, but prefers that receiving host systems dismiss mail without a valid Author Key Domain signature to avoid confusion with mail sent from fraudulent sources unable to apply an Author Key Domain signature. (This latter kind of mail is sometimes loosely called "forgeries".) In that case, it might be appropriate to publish a "LOCKED" ADSP record. Note that a domain SHOULD NOT publish a LOCKED ADSP record when it wishes to maximize the likelihood that its mail is delivered, since it could cause some fraction of the mail to be discarded.

As a special case, if a domain sends no mail at all, it can safely publish a LOCKED ADSP record, since any mail with an Author Address for this domain is a forgery.



 TOC 

A.4.  Third Party Senders

Another common use case is for a third party to enter into an agreement whereby that third party will send bulk or other mail on behalf of a designated Author Domain, using that domain in the RFC2822 From: or other headers. Due to the many and varied complexities of such agreements, third party signing is not addressed in this specification.



 TOC 

Appendix B.  Acknowledgements

This document was based upon the draft-ietf-dkim-ssp-003.



 TOC 

Appendix C.  Changes in draft-otis-dkim-adsp-00



 TOC 

Author's Address

  Douglas Otis
  Trend Micro, NSSG
  10101 N. De Anza Blvd
  Cupertino, CA 95014
  USA
Phone:  +1.408.257-1500
Email:  doug_otis@trendmicro.com


 TOC 

Full Copyright Statement

Intellectual Property