DKIM2 and DMARCbis Have Landed

(stalw.art)

57 points | by StalwartLabs 2 days ago

13 comments

  • edoceo 1 minute ago
    Maybe it's time to call it CMTP
  • qurren 2 hours ago
    Aw hell. How many things do I have to set up just so that I can send e-mails from my own domain?

    The effect of all this seems to be less "making e-mail secure" and more "making it so that only Google, Apple, and Microsoft can send e-mail successfully"

    • OneDeuxTriSeiGo 1 hour ago
      DKIM2 and DMARCbis are actually the opposite of this. They are long awaited fixes of brittle and often broken systems that are designed to now make providing secure email easier rather than harder.

      They both have fairly clean migration paths and resolve a lot of the annoying edge cases that currently exist with authenticating and verifying email.

    • doubled112 1 hour ago
      And sometimes if you do everything right, it still doesn’t work.

      Recently I checked the IP against blacklists, waited a few months, did all of the other things, and then found out Microsoft bounces my entire VPS’s IP range. Appealing did not help.

      They intermittently block Cloudflare email routing IPs too. All of these security measures and still it comes down to the IP address of your sender.

      • 1over137 1 hour ago
        Is it an el cheapo VPS?
        • doubled112 54 minutes ago
          Is Cloudflare a cheapo VPS?

          It is a cheap VPS, but it would still be nice if there was a way to know (not assume) beforehand.

          > 550 5.7.1 Unfortunately, messages from [IP ADDRESS] weren't sent. Please contact your Internet service provider since part of their network is on our block list (S3150).

          > Your IP(s) qualify for conditional mitigation.

          Still blocked. The system is working as expected.

          • jeffbee 51 minutes ago
            I would simply like to point out that 550 at SMTP time is not a bounce.
            • doubled112 45 minutes ago
              You get an email bounce back with an error code in it. Is there some other definition I'm unaware of?

              Wait, that is probably from the local mailer, and otherwise the sender may never know about the rejected messages.

    • hinkley 1 hour ago
      This sort of Regulatory Capture is quite old in the software field. People were already noticing it in the 90's.

      Making a spec that contains a venn diagram of most of the features each of the signatories to the specification have implemented themselves ends up pulling the ladder up behind them. Each non-academic committee member discovers they're already more than 75% of the way to having completed the spec and any junior members or amateurs have years of work to do in order to catch up to Now. If any upstarts threaten to get within striking distance of an implementation you can always convene the committee again and discuss version 2 of the spec.

      Mobile devices tamped this down just a little bit but mostly they lowered the slope of the line a hair and changed where the focus was a bit.

    • brightball 1 hour ago
      DMARC isn't for sending email successfully, it's for preventing other people from impersonating your domain. Without it, there's nothing stopping anybody from sending an email saying it is from you@qurren.com. SPF tried. DKIM tried. Both of them had gaps.

      When you use them together and have a DMARC policy that requires one of them or the other for successful delivery, it's the best current solution.

      • qurren 1 hour ago
        Except I think I've had 1:1 personal e-mails from my domain go into a legitimate recipient's spam filter just because I didn't have DMARC set up and their mail server was flagging that "DMARC not set up == spammy domain"
        • bombcar 2 minutes ago
          Too many admins just had it set to “no valid DMARC? Spam” instead of the more proper “failed DMARC? spam”.

          Which is subtly different.

        • drdexebtjl 19 minutes ago
          That is perfectly reasonable. Set it up correctly.
          • bombcar 1 minute ago
            It is so much easier to set these things up with a frontier AI to walk you through the Byzantine steps.
    • AceJohnny2 1 hour ago
      > Aw hell. How many things do I have to set up just so that I can send e-mails from my own domain?

      ... said every spammer.

      I'm sorry for your pain, and I'm in the same boat.

      But it's important to understand that any sufficiently large, distributed-agent system (like federated email), will see the rise of parasites that will pump resources and diminish the value of the system.

      What we're seeing here is an "immune" response to those parasites. We all pay for it.

      I think this is an important lesson for anyone designing a distributed-agent system [1]. How do you design it so as to keep the bad actors out, or at least so their impact is negligeable?

      [1] imma make my own email system! With blackjack, and hookers! oh wait...

    • braiamp 1 hour ago
      Eh, I read the article, and at most you only have to wait for your MTA to update to add the required headers and update your DNS records and you are golden. It still uses the same key you generated as far I'm aware.
  • peanut-walrus 1 hour ago
    Missed opportunity to get rid of SPF. What I want to my DMARC policy to say: if someone is sending you an email that claims to be from my domain and it's not signed by one of the keys I have published under my domain, you should reject it, regardless where it came from.

    And on the receiving side, the policy is similarly simple: if I receive any unsigned or unaligned email, I will reject it.

    Edit: to clarify, I want there to be an option where I specify my DMARC policy to explicitly tell well-configured receiving servers "ignore whatever I have configured as my SPF record, only look at the signatures". There will no doubt be a long tail of mail servers where I will still need an SPF record for them to accept my mail.

    Edit2: Another feature that I feel is lacking is ability to give dkim selectors a scope - e.g. this key is only valid for these particular From addresses.

    • AceJohnny2 1 hour ago
      I suspect SPF is used because it's cheaper than performing cryptographic checks for each email. A (cached) DNS lookup and IP check on a connection is comparatively cheaper.
  • braiamp 1 hour ago
    Despite what everyone said, I'm excited specifically for DKIM2. As someone that had managed a mailing list, that one is probably the hardest thing to juggle around and DKIM2 layering seems to fix that issue neatly. I hope postfix has a guide proto.
  • drhagen 31 minutes ago
    They spent a huge amount of complexity supporting mailing lists that claim mutated messages came FROM the original sender instead of FROM mailinglist@example.com. Is that use-case worth the additional effort?
    • bombcar 0 minutes ago
      Yes. Mailing lists are incredibly useful and very hard to change.
  • jeroenhd 2 hours ago
    First time I'm reading about this, I'm glad there's progress in this area.

    The JSON DSL for rewriting emails feels like a spammer/exploit vector waiting to happen. Some product is going to spam filter before applying reconstruction rules, or get tricked into applying reconstruction rules when it shouldn't, and spammers and scammer are going to abuse it.

    Until either Google or Microsoft will adopt these standards, they'll remain effectively meaningless most likely. But even so, it's good to know people haven't given up on fixing email's spam problem entirely.

  • dataflow 1 hour ago
    I really don't understand what the original DKIM was not sufficient. Can someone ELI5? If you can verify that a message (including headers, which DKIK can sign) was signed by the outgoing server, then why isn't that the end of the story? Who cares how or why it got forwarded, or whatever else?
    • brightball 1 hour ago
      There are a few gaps with DKIM.

      1. You have to set it up on every sending server. It's easier today but it wasn't always

      2. You have to periodically rotate each of the keys that you setup because they can be cracked/stolen. Soon as somebody steals your key, they can impersonate anyone sending email from your domain.

      3. Receiving email servers have no way of knowing if a message they received without a DKIM signature is supposed to include a DKIM signature, so simply not including one creates a scenario where receiving mail servers have to guess if the message was really from you.

      • yasaheblasa 49 minutes ago
        1&2 sound worse after this update as described.. I'm not really sure why we are still bothering with this when DNSSEC progress means DANE like setups could solve the original E2E S/MIME issues of payment and domain indicating expectation of what its email senders are required to have for S/MIME.

        There are some aspects of (possibly positive) deniability by an individual that probably still remain with DKIM but they kind of remain anyway with domain anchored S/MIME.

      • crote 57 minutes ago
        2b. You have to publish the retired private keys, or else a recipient will retain undeniable proof of message authenticity.

        Depending on your perspective, this can be either a feature or a bug.

      • dataflow 54 minutes ago
        1. I can't say I buy this excuse, but okay.

        2. Is this an actual problem that has arisen with a worrying frequency in the past, or just a hypothetical? And how is it different from someone stealing your SSH key or TLS certificate?

        3. Isn't it obvious from previous emails you've received from the same server?

  • meysamazad 2 days ago
    well done

    you're among the first few who have done it:

    https://github.com/mjl-/mox/issues/404#issuecomment-43627498...

  • stefan_lec 1 hour ago
    Sounds pretty cool! I wonder if it closes enough holes that we could finally stop using SPF at all?
  • lousken 1 hour ago
    Anyone migrated from exchange to stalwart? Curious about results
  • bigbuppo 1 hour ago
    Can someone distill this down to how it will be used by the big three email providers to make it impossible to use email except through them?
    • braiamp 1 hour ago
      If anything, this moves it towards anyone having more access to everything. For example, reject isn't going to be treated anymore as a bounce. Now, provider policies still can and would be BS, but the standard doesn't tell them to do it certain way.
    • TacticalCoder 1 hour ago
      > by the big three

      Which big three?

      Gmail has something like 1.8 billion users. iCloud mail around 1 billion.

      Microsoft with 400 million users of its email is closer to Yahoo! Mail (225 million users) than to the big two.

      • AlotOfReading 1 hour ago
        User numbers aren't the only factor. Microsoft has a much larger presence in commercial email than Apple. I suspect an outbound email from a personal provider is far more likely to be destined for an outlook inbox than one on iCloud.
  • roshanroyj 1 day ago
    [flagged]