[dmarc-ietf] Doing a tree walk rather than PSL lookup

2020-11-20 Thread John R Levine
Here's a draft about how DMARC might do a tree walk rather than look up an 
organizational domain in the PSL.


https://datatracker.ietf.org/doc/draft-levine-dmarcwalk/

Regards,
John Levine, jo...@taugh.com, Taughannock Networks, Trumansburg NY
Please consider the environment before reading this e-mail. https://jl.ly

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


Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition of NP

2020-11-20 Thread Kurt Andersen (b)
On Fri, Nov 20, 2020 at 5:57 AM Doug Foster  wrote:

>
> However, spoofing of non-existent subdomains is a potential problem for the
> RFC5321.MailFrom domain, which then becomes an attack vector for the
> RFC5322.From address as well.  The problem exists because because SPF has
> no
> organizational default.
>
> We need to think about intermediate nodes, non-mail leaf nodes, and
> non-existent subdomains.  Assume that a spammer tries to spoof a legitimate
> organization by using a non-mail  or non-existing node for both the SMTP
> MailFrom address and the message From Address.   The message will be
> evaluated as
> - SPF=None,
> - DomainAligned=True, and
> - (if checked by some unknown algorithm)  OrganizationReputation=good.
>
>

Presuming no DKIM signature is involved, SPF=None is not the required
"PASS" that DMARC enforces so I don't see the point of your argument.

--Kurt
___
dmarc mailing list
dmarc@ietf.org
https://www.ietf.org/mailman/listinfo/dmarc


Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition of NP

2020-11-20 Thread Doug Foster
To return briefly to the muddy waters that I created.  John is correct that
"mail enabled" is not useful for the RFC5322.From address, and my last note
expanded on reasons why that is correct.   

However, spoofing of non-existent subdomains is a potential problem for the
RFC5321.MailFrom domain, which then becomes an attack vector for the
RFC5322.From address as well.  The problem exists because because SPF has no
organizational default.   

We need to think about intermediate nodes, non-mail leaf nodes, and
non-existent subdomains.  Assume that a spammer tries to spoof a legitimate
organization by using a non-mail  or non-existing node for both the SMTP
MailFrom address and the message From Address.   The message will be
evaluated as 
- SPF=None, 
- DomainAligned=True, and 
- (if checked by some unknown algorithm)  OrganizationReputation=good.  

Can we assume that all such messages will be blocked by all recipients?   It
seems better to have a published policy to say that it should be blocked.
Based on existing specifications, the organization has these defenses:

- All possibilities are protected if the organization DMARC sp policy is
enforceable (p<>none and pct<>0).   However, we know that this is
problematic for many organizations.

- Mail-enabled nodes should have an SPF record, so those domains will be
protected.

- Existing but non-mail domains are only protected if they have an SPF -ALL
policy.   This may be difficult and error-prone for the organization to
maintain.

Conclusions:
Assuming that many organizations are still at sp=none, we have an attack
surface from non-existent domains.  The "must exist" policy provides the
only defense for non-existent nodes when the DMARC sp policy is
non-enforcing.

Assuming that many organizations will have trouble managing deployment of
SPF -ALL universally, we have an attack surface for non-mail subdomains.
The "must be mail enabled" policy provides a simpler defense mechanism than
deploying SPF -ALL to every non-mail node.

DF




-Original Message-
From: dmarc [mailto:dmarc-boun...@ietf.org] On Behalf Of Chudow, Eric B CIV
NSA DSAW (USA)
Sent: Friday, November 20, 2020 6:29 AM
To: 'John Levine'; 'dmarc@ietf.org'
Subject: Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition
of NP

Thank you, John. I agree that it's an edge case and not worth addressing
separately. 

Eric Chudow
DoD Cybersecurity Mitigations

-Original Message-
From: John Levine 
Sent: Thursday, November 19, 2020 11:04 PM
To: dmarc@ietf.org
Cc: Chudow, Eric B CIV NSA DSAW (USA) 
Subject: Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition
of NP

In article
<553d43c8d961c14bb27c614ac48fc03128116...@umechpa7d.easf.csd.disa.mil> you
write:
>Section 2.7. defines a non-existent domain as "a domain for which there 
>is an NXDOMAIN or NODATA response for A, , and MX records.  This is 
>a broader definition than that in NXDOMAIN [RFC8020]." This should be
sufficient for determining that the domain is not intended to be used and
therefore could have a more stringent policy applied.
>
>The idea of looking for a "mail-enabled domain" based on if an "MX record
exists or SPF policy exists" is interesting.
>Although there may be domains that send email but not receive email and so
may not have an MX record.

These days I think you will find that if the domains in your bounce address
and your From: headers don't have an MX or A record, very few recipients
will accept your mail. This seems like an edge case. In practice I find that
the domains caught by the Org domain or I suppose PSD have A records but no
mail server because they're actually web hosts rather than mail hosts.

We have the Null MX to indicate that a domain receives no mail and SPF plain
-all to indicate that it sends no mail so I hope we don't try to reinvent
these particular wheels.

R's,
John


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



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


Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition of NP

2020-11-20 Thread Douglas E. Foster
I fear that I muddied the waters by asking about the RFC5321.MailFrom address.  
 Let's return to the main issue of the RFC5322.From address which DMARC 
protects.

This is not an edge case.   If spam filters were already blocking messages with 
RFC5322.From addresses with non-existent domains, we would not be having this 
discussion.

The RFC5322.From address can be very ethereal.   Consider the following 
situation:

The marketing department of Example.com hires a mass mailer to do a campaign 
from market...@christmassale.example.com.
ChristmasSale.Example.Com does not currently exist.
The email service provider does its due diligence during account setup:

- The client has sent email communication from example.com and account 
paperwork for the same organization.   I have the client identified correctly,.
- The client has no DMARC policy on Christmas.Example.com, and an organization 
or PSD DMARC policy of SP=none, so I do not need to acquire a DKIM signing key.
- But the organization or PSD policy does specify NP, so I need the client to 
prove that ChristmasSale.Example.Com exists.

Requiring the client to create a bogus host record with a bogus IP address 
makes no sense, and is likely to be rejected by the client DNS administrator.

Requiring the client to create a name server record to prove domain existence 
does make sense, and should be easily approved and implemented by the client 
DNS administrator.

Ergo, defining the NP policy based on A, , and MX is not appropriate.

Doug Foster



From: eric.b.chudow.civ=40mail@dmarc.ietf.org
Sent: 11/20/20 6:30 AM
To: 'John Levine' , "'dmarc@ietf.org'" 
Subject: Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition of NP

Thank you, John. I agree that it's an edge case and not worth addressing 
separately.

Eric Chudow
DoD Cybersecurity Mitigations

-Original Message-
From: John Levine 
Sent: Thursday, November 19, 2020 11:04 PM
To: dmarc@ietf.org
Cc: Chudow, Eric B CIV NSA DSAW (USA) 
Subject: Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition of NP

In article 
<553d43c8d961c14bb27c614ac48fc03128116...@umechpa7d.easf.csd.disa.mil> you 
write:
>Section 2.7. defines a non-existent domain as "a domain for which there
>is an NXDOMAIN or NODATA response for A, , and MX records. This is
>a broader definition than that in NXDOMAIN [RFC8020]." This should be 
>sufficient for determining that the domain is not intended to be used and 
>therefore could have a more stringent policy applied.
>
>The idea of looking for a "mail-enabled domain" based on if an "MX record 
>exists or SPF policy exists" is interesting.
>Although there may be domains that send email but not receive email and so may 
>not have an MX record.

These days I think you will find that if the domains in your bounce address and 
your From: headers don't have an MX or A record, very few recipients will 
accept your mail. This seems like an edge case. In practice I find that the 
domains caught by the Org domain or I suppose PSD have A records but no mail 
server because they're actually web hosts rather than mail hosts.

We have the Null MX to indicate that a domain receives no mail and SPF plain 
-all to indicate that it sends no mail so I hope we don't try to reinvent these 
particular wheels.

R's,
John

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


Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition of NP

2020-11-20 Thread Chudow, Eric B CIV NSA DSAW (USA)
Thank you, John. I agree that it's an edge case and not worth addressing 
separately. 

Eric Chudow
DoD Cybersecurity Mitigations

-Original Message-
From: John Levine  
Sent: Thursday, November 19, 2020 11:04 PM
To: dmarc@ietf.org
Cc: Chudow, Eric B CIV NSA DSAW (USA) 
Subject: Re: [dmarc-ietf] Second WGLC for draft-ietf-dmarc-psd: Definition of NP

In article 
<553d43c8d961c14bb27c614ac48fc03128116...@umechpa7d.easf.csd.disa.mil> you 
write:
>Section 2.7. defines a non-existent domain as "a domain for which there 
>is an NXDOMAIN or NODATA response for A, , and MX records.  This is 
>a broader definition than that in NXDOMAIN [RFC8020]." This should be 
>sufficient for determining that the domain is not intended to be used and 
>therefore could have a more stringent policy applied.
>
>The idea of looking for a "mail-enabled domain" based on if an "MX record 
>exists or SPF policy exists" is interesting.
>Although there may be domains that send email but not receive email and so may 
>not have an MX record.

These days I think you will find that if the domains in your bounce address and 
your From: headers don't have an MX or A record, very few recipients will 
accept your mail. This seems like an edge case. In practice I find that the 
domains caught by the Org domain or I suppose PSD have A records but no mail 
server because they're actually web hosts rather than mail hosts.

We have the Null MX to indicate that a domain receives no mail and SPF plain 
-all to indicate that it sends no mail so I hope we don't try to reinvent these 
particular wheels.

R's,
John


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


Re: [dmarc-ietf] org domain and levine-dbound and dns-perimeter drafts

2020-11-20 Thread Alessandro Vesely

On 19/11/2020 21:33, Todd Herr wrote:

On Thu, Nov 19, 2020 at 7:39 AM Alessandro Vesely  wrote:

On 18/11/2020 22:33, John R Levine wrote:

On 11/18/2020 12:44 PM, John Levine wrote:

so I encourage the group to limit the debate to the existing Org/PSL
kludge and a tree walk.


"and a tree walk" is not a minor 'and'.  neither conceptually nor
operationally.  assurances to the contrary notwithstanding.


I didn't say they were equivalent.  But I do think they are the only
options that are likely to get much interest from the WG. >>

I don't think tree walk is a viable option, as it distorts semantics.


Forgive me, but I don't know what you mean by the phrase "distorts
semantics"; can you please help me understand?



The current semantics considers an Organizational Domain to be the expression 
of the organization itself, the organization's master domain.  That's quite 
nearly what the PSL strive for.


Tree walk, instead, discards any organizational boundary.



As for the viability of a tree walk, it is possible in complex environments
to have something resembling the following:

- RFC5322.From domain - a.b.foo.com - _dmarc.a.b.foo.com non-existent
- _dmarc.b.foo.com record exists, p=x, rua=r1
- _dmarc.foo.com record exists, p=y, rua=r2

  - _dmarc.com record doesn't exist, for the time being.



On the other hand, one might infer from the DNS records that are published
that their intent was for a.b.foo.com to inherit x for the policy and r1 as
the destination for aggregate reports from the b.foo.com record; this would
be an error on their part, because DMARC does not currently support
discovery of the record at _dmarc.b.foo.com in this case.



Without asking them directly, we could also infer that folks at b.foo.com are 
sneakily trying to divert feedback traffic.




The way I see it, we can choose one of three paths here:

1. Keep things as they are, where if there is no policy published for
RFC5322.From, the policy is inherited from the org domain, if a policy is
published there



Easiest and safest option.



2. Change the spec so that the only policy lookup done is for the
RFC5322.From domain, and if there's no policy there, then DMARC doesn't
exist for that domain



SPF experience shows that large domains don't have the ability to maintain a 
script that defines suitable DNS records for all their subdomains.  This would 
force inconsistent usage of '*' domains.  BTW, as of your example, we have:


ale@pcale:~$ dig _dmarc.b.foo.com txt

; <<>> DiG 9.11.5-P4-5.1+deb10u2-Debian <<>> _dmarc.b.foo.com txt
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 44418
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: ab33c1fc9c9860b18b1294575fb788126f7a88216eadcab7 (good)
;; QUESTION SECTION:
;_dmarc.b.foo.com.  IN  TXT

;; ANSWER SECTION:
_dmarc.b.foo.com.   600 IN  TXT "v=spf1 -all"

;; AUTHORITY SECTION:
foo.com.250 IN  NS  ns2.digimedia.com.
foo.com.250 IN  NS  ns1.digimedia.com.

;; ADDITIONAL SECTION:
ns1.digimedia.com.  172450  IN  A   23.21.242.88
ns2.digimedia.com.  172450  IN  A   23.21.243.119



3. Change the spec so that policies published between the RFC5322.From
domain and the organizational domain can be discovered, in order to support
the most flexibility across organizations.



Besides making a lot of confusion about where policies and feedback addresses 
might come from, this feature inflates DNS queries more than it is desirable. 
If you have From: DoS  you have to look up each 
subdomain in the required order.  (Maybe you can check if z exists, and in case 
if m.n.o. ... x.y.z exists, and so on in a dichotomic anti-DoS tactic.  Hm...)



Best
Ale
--



























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