On Tue 19/Mar/2024 12:33:07 +0100 Scott Kitterman wrote:
On Tuesday, March 19, 2024 5:23:52 AM EDT Alessandro Vesely wrote:
On Mon 18/Mar/2024 21:37:02 +0100 Scott Kitterman wrote:
> On March 18, 2024 6:40:54 PM UTC, Alessandro Vesely <ves...@tana.it> wrote:
On Mon 18/Mar/2024 09:14:26 +0100 Dotzero wrote:
On Mon, Mar 18, 2024 at 2:38 AM John R Levine <jo...@taugh.com> wrote:
On Sun, 17 Mar 2024, Dotzero wrote:
Whenever mail is sent, there is a risk that an overly permissive source
may send mail which will receive a DMARC pass result that was not, in
fact, authorized by the Domain Owner. These false positives may lead
to issues when systems interpret DMARC pass results to indicate
a message is in some way authentic. They also allow such unauthorized
senders to evade the Domain Owner's requested message handling for
authentication failures.

I have a problem with this 2nd paragraph and believe it is factually incorrect. The Domain Owner has in fact authorized the message(s) as a result of an overly permissive approach. I would suggest that in fact any resulting DMARC pass is technically NOT a false positive because it is authorized by the overly permissive approach.

Seems to me we it depends on what you think "authorized" means. My sense is I told you it's OK to send the message, yours seme to be that any host on an IP in the SPF record or anyone who steals your DKIM key is authorized by definition.

Is there some other wording that can make the difference clear?

Here's a quick stab at some modified wording for the second paragraph:

Whenever mail is sent, there is a risk that an overly permissive source
may send mail which will receive a DMARC pass result that was not, in
fact, intended by the Domain Owner. These results may lead
to issues when systems interpret DMARC pass results to indicate
a message is in some way authentic. They also allow such unauthorized
senders to evade the Domain Owner's intended message handling for
authentication failures.

That's better. At least it's formally correct. Still, it is rather obscure for an average reader.

The attempt to make this issue general, in the sense that it is valid for SPF and DKIM alike, makes no sense. Stealing a DKIM key is not comparable to an overly permissive SPF record.

The text should be terser and clearer, possibly with an example.

No one said anything about stealing a DKIM key.

"anyone who steals your DKIM key is authorized by definition"
https://mailarchive.ietf.org/arch/msg/dmarc/h_ytb51KHHkQTyCMfGMs9NPXmQo

OK.  That's not what I described.  Here's a more detailed exposition.

Let's take a case where a provider sends mail on behalf of multiple customers, for whatever reason. Customer A uses example.biz and customer B uses example.com.

When the provider receives an email for transmission on behalf of a customer it has to determine if it should send it or not, so it has controls in place.

First, it determines if the mail was submitted by a customer and in our example it is, but it is Customer A sending the message, but the 5322.From in the message is in example.com. At this point a well managed provider would exercise another control and determine that while Customer A is a customer and example.com is a domain for which they send mail, Customer A is not authorized to use example.com and decline to send the mail.

In the cases people have described seeing, the provider does not have such a control and sends the mail. Since Customer B has listed the provider's MTAs in their SPF record, if the provider sends the mail, it passes SPF (and DMARC), which is bad.

Let's take that a step further:

Customer B, realizing that this provider is not so well ordered uses the "?" qualifier in example.com's SPF record, so the mail doesn't pass SPF (and DMARC) any more. This is great, except:

Let's look at the case where this provider also does DKIM signing for their customer's mail and have arranged to have secret keys for signing mail for both example.biz and example.com and both Customer A and Customer B have published DKIM key records in DNS for their domains.


Is this a common pattern?


So, again, Customer A is sending mail through the provider with 5322.From of example.com. We've already established that the provider does not have a control in place to prevent this. The provider has an appropriate secret key available to sign the mail (no one stole anything). If the provider signs the mail and sends it, it has a valid signature and passes DKIM (and DMARC), which is bad.


How does the provider sign?

* apply multiple signatures, one for each key it has,
* match the From: domain, or
* match the SMTP AUTH domain?

Does the provider generate their own keys and have clients put a CNAME?


This is all about internal controls that appear to be missing on an unfortunately common basis. The SPF part of the above is pretty simple and is a problem today for domains that haven't bothered with DKIM because it's "too hard". Once they do bother with DKIM, then I don't see any reason to believe that you won't see the DKIM part of this as well. It's a foreseeable result of using providers without appropriate internal controls.


Again, if we want to cover DKIM, we should be clearer about the mechanism used, consider the risk, perhaps citing Section 8.3 of DKIM. Folding both subject under a common frame forces the text to be overly general, and thus less comprehensible.


Best
Ale
--






_______________________________________________
dmarc mailing list
dmarc@ietf.org
https://www.ietf.org/mailman/listinfo/dmarc

Reply via email to