Skip to content

external destination verification and report aggregation missing in DMARC reporting #232

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
Ashiq5 opened this issue Jan 2, 2023 · 1 comment

Comments

@Ashiq5
Copy link

Ashiq5 commented Jan 2, 2023

I am using the latest version of OpenDMARC and while playing with DMARC reporting, I came across a few issues that could raise opportunities for attackers to exploit.

  1. There is no verification check if an external email address is specified in the rua tag of the sender's DMARC record. RFC recommends a verification strategy as defined here (https://datatracker.ietf.org/doc/html/rfc7489#section-7.1).
  2. If multiple emails come from the same organizational domain, OpenDMARC shoots out separate reports for each received email even if the rua addresses are the same. This with the absence of an external destination verification mechanism can open up an opportunity for the attackers to flood any mailbox they want. Therefore, reports for the same organizational domain within the same reporting window should be aggregated.

Thanks.

@thegushi
Copy link
Collaborator

thegushi commented May 5, 2025

  1. I believe the check you're talking about is done in libopendmarc/opendmarc_policy.c at around line 650. If you have evidence that this is not happening, please contact me privately (github at gushi dot org) with examples of this so I can reproduce.

  2. Aggregate reports absolutely should be aggregated, via the usual database/sendind periodically via cron. The "individual" reports are forensic reports. Could you possbily get me samples of the reports being sent (again, if you need to do so confidentially, the address is above).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants