silverhack / silverhack/monkey365
Expose domain-level context for SPF / DKIM / DMARC findings in Exchange Online
@silverhack is already working on this.
Since Jul 17, 2026.
- Dominant language
- PowerShell
- Stars
- 1.3k
- Forks
- 140
- PR merge metrics
- No merged PRs in 30d
Description
Summary
Monkey365 currently surfaces mail-auth findings (SPF, DKIM, DMARC) without specifying which accepted domains are impacted. Adding domain-level granularity will transform raw alerts into actionable intelligence by pinpointing exactly where alignment fails.
Problem Statement
- Ambiguous remediation scope – A single tenant may host dozens of authoritative domains; without domain attribution, responders must manually correlate records.
- Inefficient triage – Security and messaging teams burn cycles querying DNS or Exchange admin center to isolate the affected namespaces.
- Risk prioritisation blind spot – Critical revenue-generating domains (e.g., invoicing.example.com) cannot be surfaced or ranked against low-impact vanity domains.
Proposed Enhancement
-
Domain discovery
- Enumerate tenant domains via Graph
/domainsand/organization/{id}/domainsAPIs. - Include accepted, authoritative, and shared namespaces.
- Enumerate tenant domains via Graph
-
Granular evaluation
- Evaluate SPF, DKIM selector presence, and DMARC policy per domain.
- Record alignment failures individually instead of aggregating at tenant level.
-
Reporting & UX updates
- For each failing check, list the specific domain(s) alongside the recommended fix.
- Provide an optional
--mail-auth-jsonswitch to output raw per-domain status for CI/CD consumption.
Acceptance Criteria
| ID | Condition | Success Metric |
|---|---|---|
| AC-1 | Scan a tenant with 3 domains, only one lacking DKIM | Report exactly 1 DKIM failure with domain name shown |
| AC-2 | Generate export with --mail-auth-json |
JSON array contains objects { domain, spf, dkim, dmarc } |
| AC-3 | Existing non-mail-auth findings unaffected | Regression suite passes |
Business Value
Domain-level insight accelerates fix velocity, reduces mean time to detect & remediate mail-spoofing risk, and enables data-driven prioritisation of high-value brands.
Additional Context
Customer feedback highlights that up to 70 % of false-positive churn in mail-auth audits stems from unclear domain attribution. Early adopters of prototype scripts saw triage time drop from ~2 hours to <15 minutes per tenant.
We’re happy to provide sample tenants and collaborate on testing strategies.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.