Skip to main content

DNSWL Email Authentication Method Extension
draft-vesely-authmethod-dnswl-06

The information below is for an old version of the document.
Document Type
This is an older version of an Internet-Draft that was ultimately published as RFC 8904.
Expired & archived
Author Alessandro Vesely
Last updated 2016-10-18 (Latest revision 2016-04-16)
RFC stream (None)
Formats
IETF conflict review conflict-review-vesely-authmethod-dnswl, conflict-review-vesely-authmethod-dnswl, conflict-review-vesely-authmethod-dnswl, conflict-review-vesely-authmethod-dnswl, conflict-review-vesely-authmethod-dnswl, conflict-review-vesely-authmethod-dnswl
Stream Stream state (No stream defined)
Consensus boilerplate Unknown
RFC Editor Note (None)
IESG IESG state Became RFC 8904 (Informational)
Telechat date (None)
Responsible AD (None)
Send notices to (None)
draft-vesely-authmethod-dnswl-06
IETF                                                           A. Vesely
Internet-Draft
Intended status: Informational                            April 16, 2016
Expires: October 18, 2016

              DNSWL Email Authentication Method Extension
                    draft-vesely-authmethod-dnswl-06

Abstract

   This document describes an additional Email Authentication Method
   compliant with RFC 7601.  The method consists in looking up the
   sender'IP in a DNS whitelist.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   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."

   This Internet-Draft will expire on October 18, 2016.

Copyright Notice

   Copyright (c) 2016 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Vesely                  Expires October 18, 2016                [Page 1]
Internet-Draft      DNSWL email-auth-method extension         April 2016

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  Method Details  . . . . . . . . . . . . . . . . . . . . . . .   2
   3.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   3
   4.  Security Considerations . . . . . . . . . . . . . . . . . . .   5
   5.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   5
     5.1.  Normative References  . . . . . . . . . . . . . . . . . .   5
     5.2.  Informative References  . . . . . . . . . . . . . . . . .   5
   Appendix A.  Example  . . . . . . . . . . . . . . . . . . . . . .   6
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .   7

1.  Introduction

   One of the many checks that mail servers carry out is to query DNS
   whitelists (DNSWL, [RFC5782]).  The lookup is based on the connecting
   client's IP address, so this check can occur very early in an SMTP
   transaction.  The result can be used to counterweight policies that
   typically occur at early stages too, such as the Sender Policy
   Framework (SPF, the last paragraph of Appendix D.3 of [RFC7208] is
   illustrated in Appendix A).  In addition, the result of a DNSWL
   lookup can also be used at later stages; for example, a delivery
   agent can use it to estimate the spamminess of an email message.  The
   latter possibility needs a place to collect query results for
   downstream use, which is precisely what the Authentication-Results
   header field aims at providing.

   Results often contain additional data, encoded according to DNSWL-
   specific criteria.  The present method considers only whitelists
   --one of the major branches considered by [RFC5782].  In case of
   DNSxL, the boundary MTA (see [RFC5598]) which carries out the check
   and possibly stores the result, has to be able to discern at least
   the color of "x".  It is required to make accept/reject decisions.

   Additional data can be stored as result's parameters.  In effect,
   they are tantamount to local policies, albeit outsourced.  Downstream
   agents can take advantage of DNSWL-specific knowledge to make finer
   decisions, such as render additional information or deliver to
   apposite folders.

2.  Method Details

   The following ptype.property items define the relevant parameters
   where additional data can be stored.  They augment the "pass" result
   with information about the entry found.

   dns.zone:   DNSWL query root domain, which defines the meaning of the
               result.  Note that an MTA can use a local mirror with a

Vesely                  Expires October 18, 2016                [Page 2]
Internet-Draft      DNSWL email-auth-method extension         April 2016

               different name.  The name stored here has to be the best
               available reference for all foreseable downstream
               consumers.

   policy.ip:  The bit mask value received in type A response, in dotted
               quad.  This entry can be repeated if the DNSWL returns
               multiple A records.

   policy.txt: The TXT record, if any.  Multiple records are
               concatenated.

   The result of the method states how the query did, up to the
   interpretation of the result.  In particular, some DNSBLs are known
   to return special codes to signal over quota, for example
   127.0.0.255.  If the result producer cannot interpret that value,
   that case results in a false positive.

   pass:       The query successfully returned applicable records.  The
               sender is whitelisted, up to differing interpretation.

   none:       The query worked but yielded no record, or returned
               NXDOMAIN, so the sender is not whitelisted.

   temperror:  The DNS evaluation could not be completed due to some
               error that is likely transient in nature, such as a
               temporary DNS error, e.g., a DNS RCODE of 2, commonly
               known as SERVFAIL, or other error condition resulted.  A
               later attempt may produce a final result.

   permerror:  The DNS evaluation cannot work because test entries don't
               work, that is, DNSWL is broken, or because queries are
               overquota, e.g., a DNS RCODE of 5, commonly known as
               REFUSED, or a DNSWL-specific policy.ip was returned.  A
               later attempt is unlikely to produce a final result.
               Human intervention is required.

3.  IANA Considerations

   There is a registry of Email Authentication Methods created by
   RFC7601.  The method described in this document is referred by
   Table 1, along its ptype.property values.

Vesely                  Expires October 18, 2016                [Page 3]
Internet-Draft      DNSWL email-auth-method extension         April 2016

   +--------+--------+----------+-------------------+--------+---------+
   | Method | ptype  | property | Value             | Status | Version |
   +--------+--------+----------+-------------------+--------+---------+
   | dnswl  | dns    | zone     | DNSWL publicly    | active |       1 |
   |        |        |          | accessible query  |        |         |
   |        |        |          | root domain       |        |         |
   | dnswl  | policy | ip       | type A response   | active |       1 |
   |        |        |          | received (may be  |        |         |
   |        |        |          | repeated)         |        |         |
   | dnswl  | policy | txt      | type TXT query    | active |       1 |
   |        |        |          | response          |        |         |
   +--------+--------+----------+-------------------+--------+---------+

                   Table 1: Email Authentication Method

   A new ptype, "dns" is introduced in Table 2.  It is meant to be used
   for properties related to the Domain Name System (DNS [RFC1034]),
   whose value cannot be exactly derived from the relevant
   authentication method specification.

   +-------+------------+----------------------------------------------+
   | ptype | Definition | Description                                  |
   +-------+------------+----------------------------------------------+
   | dns   | [this doc] | The property being reported belongs to the   |
   |       |            | Domain Name System                           |
   +-------+------------+----------------------------------------------+

                Table 2: Email Authentication Property Type

   This method reuses four of the values already defined in the Email
   Authentication Result Names associated registry.  They are listed in
   Table 3.

   +---------+-----------+------------------------------------+--------+
   | Auth    | Code      | Specification                      | Status |
   | Method  |           |                                    |        |
   +---------+-----------+------------------------------------+--------+
   | dnswl   | pass      | Sender is whitelisted, up to       | active |
   |         |           | returned code interpretation       |        |
   | dnswl   | none      | NXDOMAIN or no record, sender is   | active |
   |         |           | not whitelisted                    |        |
   | dnswl   | temperror | Transient DNS error during the     | active |
   |         |           | query                              |        |
   | dnswl   | permerror | Query cannot work, human           | active |
   |         |           | intervention needed                |        |
   +---------+-----------+------------------------------------+--------+

                Table 3: Email Authentication Result Names

Vesely                  Expires October 18, 2016                [Page 4]
Internet-Draft      DNSWL email-auth-method extension         April 2016

4.  Security Considerations

   All of the considerations described in Section 7 of [RFC7601] apply.

   In addition, the usual caveats apply about importing text from
   external online sources.  Although queried DNSWLs are well known,
   trusted entities, it is suggested that TXT records be reported only
   if, upon inspection, their content is deemed actually actionable.  If
   they contain non-ASCII characters, they need to be encoded as
   appropriate.

5.  References

5.1.  Normative References

   [RFC5782]  Levine, J., "DNS Blacklists and Whitelists", RFC 5782, DOI
              10.17487/RFC5782, February 2010,
              <http://www.rfc-editor.org/info/rfc5782>.

   [RFC7601]  Kucherawy, M., "Message Header Field for Indicating
              Message Authentication Status", RFC 7601, DOI 10.17487/
              RFC7601, August 2015,
              <http://www.rfc-editor.org/info/rfc7601>.

5.2.  Informative References

   [RFC1034]  Mockapetris, P., "Domain names - concepts and facilities",
              STD 13, RFC 1034, DOI 10.17487/RFC1034, November 1987,
              <http://www.rfc-editor.org/info/rfc1034>.

   [RFC5598]  Crocker, D., "Internet Mail Architecture", RFC 5598, DOI
              10.17487/RFC5598, July 2009,
              <http://www.rfc-editor.org/info/rfc5598>.

   [RFC6376]  Crocker, D., Ed., Hansen, T., Ed., and M. Kucherawy, Ed.,
              "DomainKeys Identified Mail (DKIM) Signatures", STD 76,
              RFC 6376, DOI 10.17487/RFC6376, September 2011,
              <http://www.rfc-editor.org/info/rfc6376>.

   [RFC7208]  Kitterman, S., "Sender Policy Framework (SPF) for
              Authorizing Use of Domains in Email, Version 1", RFC 7208,
              DOI 10.17487/RFC7208, April 2014,
              <http://www.rfc-editor.org/info/rfc7208>.

Vesely                  Expires October 18, 2016                [Page 5]
Internet-Draft      DNSWL email-auth-method extension         April 2016

Appendix A.  Example

   Delivered-To: recipient@example.org
   Return-Path: <sender@example.com>
   Authentication-Results: mta.example.org;
       dkim=pass (whitelisted) header.i=@example.com
   Authentication-Results: mta.example.org;
       dnswl=pass dns.zone=list.dnswl.example
       policy.ip=127.0.10.1
       policy.txt="fwd.example http://fwd.example/s?s=100"
   Received-SPF: fail (Address does not pass Sender Policy Framework)
       client-ip=192.0.2.1;
       envelope-from="sender@example.com";
       helo=mailout.fwd.example;
       receiver=mta.example.org;
   Received: from mailout.fwd.example (mailout.fwd.example [192.0.2.1])
       (TLS: TLSv1/SSLv3,128bits,ECDHE-RSA-AES128-GCM-SHA256)
       by mta.example.org with ESMTPS; Mon, 04 Apr 2016 23:11:24 +0200
       id 00000000005DC044.000000005702D87C.000007FC

   Trace fields added at the top of the header by multiple agents at
   various stages during processing at the final MTA

   The message went through a third party, fwd.example, which forwarded
   it to the final MTA.  Such mail path was not arranged beforehand with
   the involved MTAs, it emerged spontaneously.  This message would not
   have made it to the target without whitelisting, because:

   o  the author domain published a strict SPF policy (-all),

   o  the forwarder did not alter the bounce address, and

   o  the target usually honors reject-on-fail, according to Section 8.4
      of [RFC7208].

   However, the target also implemented the last paragraph of
   Appendix D.3 of [RFC7208].  Rather than rejecting the message
   outright before DATA, the MTA received it, recorded the SPF fail
   result, and indicated the local policy mechanism which was applied in
   order to override that result.  Subsequent filtering detected no
   malware and verified DKIM [RFC6376].  It would still have been
   possible to reject the message, based on its content.  It is at these
   later stages, after receiving the body and also during delivery, that
   a deeper knowledge of the policy values obtained from dnswl.example
   can allow weighting that score against other factors.

Vesely                  Expires October 18, 2016                [Page 6]
Internet-Draft      DNSWL email-auth-method extension         April 2016

Author's Address

   Alessandro Vesely
   v. L. Anelli 13
   Milano, MI  20122
   IT

   Email: vesely@tana.it

Vesely                  Expires October 18, 2016                [Page 7]