A Message Header to Identify Subscription Form MailTaughannock NetworksPO Box 727TrumansburgNY14886+883.5100.01196712standards@taugh.comMany organizations have web forms that provoke an e-mail confirmation to the e-mail address
provided in the form. Malicious entities do bulk form submissions with forged addresses,
resulting in mail floods to the holders of those addresses.
This document defines a message header to identify mail sent in response to web forms,
so that recipient mail systems can better recognize and mitigate the mail floods.
For the time being,
discussion about this draft is directed to the
collaboration@mailman.m3aawg.org mailing
list.
Many organizations have web forms that provoke an e-mail confirmation to the e-mail address
provided in the form. Malicious entities submit multiple forms with forged addresses,
resulting in mail floods to those addresses.
We define a message header that identifies mail sent in response to web forms,
so that recipient mail systems can better recognize and mitigate the mail floods.
Mail systems that recognize a mail flood may defer or reject the mail.
We also define an SMTP enhanced status code that a mail system can use in
a message rejection SMTP reponse to alert the sending system that the message
was rejected due to being part of a mail flood.
The terms Message Submission Agent (MSA) and Message Transfer Agent (MTA) are
defined as in .
The ABNF terms CRLF, FWS, and fields
are imported from .
A MSA or an initial MTA adds a Form-Sub header field to indicate that the message was
sent in response to a web form submission.
The header consists of a semicolon-separated list of tag=value pairs.
The first tag-value pair is "v=1" to indicate that the header uses the initial
version of this specification.
Receivers should ignore Form-Sub headers with a v= tag that indicates an unknown version.
Subsequent tag-value pairs are optional, and receivers should ignore pairs with unknown tags.
The tags ip4 or ip6 contain the IPv4 or IPv6 address, respectively, from which the web form
was submitted.
The address may be partially redacted for privacy reasons, by replacing groups of digits with
the letter "x", for example, 198.51.x.x or 2001:DB8::x or x::1234:abcd:5678:ef01.
If the sender cannot determine the submitting IP address, it can include "ip=none".
The goal of including the IP address is to help receiving mail systems recognize when a
cluster of messages was provoked by the same submitter.
Using "x" rather than a hash of the the address provides a redaction that cannot be reversed
but still can be correlated among multiple messages.
The Form-Sub header should be included within the set of the headers
signed by any DKIM signature headers.
A mail receiver may choose to defer or reject mail that it recognizes as part of a mail
flood.
It can include the enhanced status code X.7.28 to indicate that the rejection is due
to the message being part of a mail flood that includes Form-Sub headers.
A sender would typically interpret the code as a strong hint that their systems are
being abused, so they should mitigate the abuse to stop the mail flood.
IP addresses are sometimes considered to be personally identifable information. This
specification allows partially redacted addresses as a compromise to avoid identifying
individual persons, while still providing receivers a hint to recognize bulk submissions
by the same party.
The Form-Sub header discloses information from a sender to a receiver, and the X.7.28
enhanced status code discloses information from a receiver to a sender that they would
not otherwise have.
If one party suspects the other is malicious, e.g., a receiver fears that a sender is
probing to see what its mail volume limits are, it might not include the header or
the status code for the possibly malicious other party.
IANA has updated registries as follows.
The following value has been added to the Provisional Message Header RegistryHeader Field nameTemplateProtocolStatusReferenceForm-Sub.mail.(this document)The following value has been added to the Enhanced Status Codes Enumerated Status Codes RegistryCodeSample TextAssociated Basic Status CodeDescriptionReferenceSubmitterChange ControllerX.7.28Mail flood detected.The message appears to be part of a mail flood of similar abusive messages.[this document]J. Levinestandards@taugh.com
Kurt Andersen and the M3AAWG Collaboration Committee provided the good parts.
Fix ABNF to allow arbitrary tags. Fix typos.
.