Skip to content

[User] Block another batch of disposable email domains - #14693

Open
garyhtou wants to merge 1 commit into
mainfrom
block-spam-signup-domains-2
Open

[User] Block another batch of disposable email domains#14693
garyhtou wants to merge 1 commit into
mainfrom
block-spam-signup-domains-2

Conversation

@garyhtou

Copy link
Copy Markdown
Member

Summary of the problem

Another batch of throwaway email domains is being used to create accounts. They run on shared throwaway-mail infrastructure alongside domains blocked in earlier rounds, and none of them is a provider anyone holds a real mailbox at.

Separately, the typo list was still missing a number of common misspellings of gmail.com and outlook.com. Some of those are parked on typosquat mail hosts, so they actively accept misdirected mail; the rest don't resolve at all.

Describe your changes

  • Adds the throwaway domains to hcb_sourced_domains.
  • Adds the misspellings to EmailTypoDomains, so the signup form suggests the intended address instead of returning a generic rejection.

Both validations are on: :create, so existing accounts are unaffected and only new signups (and email changes) are blocked.

Known gap: some signups arrive on randomly generated subdomains of a wildcard domain. The blocklist only matches exact domains, so this change doesn't stop them. Closing that needs parent-domain matching against an explicit opt-in list, which can't be automatic since plenty of legitimate school domains are subdomains.

Adds throwaway email domains to the disposable blocklist. They run on
shared throwaway-mail infrastructure alongside domains blocked in
earlier rounds, and none of them is a provider anyone holds a real
mailbox at.

Also adds more unambiguous misspellings of gmail.com and outlook.com to
the typo list. Several are parked on typosquat mail hosts, so they do
accept misdirected mail; the rest don't resolve at all. Either way
blocking costs nothing, and the signup form suggests the intended
address instead of a generic rejection.

Both validations are `on: :create`, so existing accounts are unaffected.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@garyhtou
garyhtou requested a review from a team August 20, 2026 17:40
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

Successfully merging this pull request may close these issues.

1 participant