From 9984cadee112e3603734df6194212ec313b8d8d4 Mon Sep 17 00:00:00 2001 From: Fatih AKTAS Date: Wed, 29 Jul 2026 10:12:41 -0400 Subject: [PATCH] Expand email alias domain lists Add fastmail.ca to the Fastmail domain set and myyahoo.com to the Yahoo domain set, so more equivalent addresses normalize to the same value before hashing. Both are confirmed to run on their provider's own mail platform with no third-party migration history. --- src/MinFraud/Util.php | 2 ++ tests/MaxMind/Test/MinFraud/UtilTest.php | 20 ++++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/src/MinFraud/Util.php b/src/MinFraud/Util.php index 8057b80b..77514613 100644 --- a/src/MinFraud/Util.php +++ b/src/MinFraud/Util.php @@ -127,6 +127,7 @@ class Util 'fastemailer.com' => true, 'fastest.cc' => true, 'fastimap.com' => true, + 'fastmail.ca' => true, 'fastmail.cn' => true, 'fastmail.co.uk' => true, 'fastmail.com' => true, @@ -223,6 +224,7 @@ class Util * @var array */ private static $yahooDomains = [ + 'myyahoo.com' => true, 'y7mail.com' => true, 'yahoo.at' => true, 'yahoo.be' => true, diff --git a/tests/MaxMind/Test/MinFraud/UtilTest.php b/tests/MaxMind/Test/MinFraud/UtilTest.php index 6c50757d..e6d073c6 100644 --- a/tests/MaxMind/Test/MinFraud/UtilTest.php +++ b/tests/MaxMind/Test/MinFraud/UtilTest.php @@ -188,6 +188,16 @@ public function testMaybeHashEmail(): void ], ], ], + [ + 'name' => 'Fastmail Canada alias domain', + 'input' => ['email' => ['address' => 'alias@user.fastmail.ca']], + 'expected' => [ + 'email' => [ + 'address' => md5('user@fastmail.ca'), + 'domain' => 'user.fastmail.ca', + ], + ], + ], [ 'name' => 'Domain with multiple host parts', 'input' => ['email' => ['address' => 'foo@bar.example.com']], @@ -208,6 +218,16 @@ public function testMaybeHashEmail(): void ], ], ], + [ + 'name' => 'Alternate Yahoo signup domain', + 'input' => ['email' => ['address' => 'test-alias@myyahoo.com']], + 'expected' => [ + 'email' => [ + 'address' => md5('test@myyahoo.com'), + 'domain' => 'myyahoo.com', + ], + ], + ], [ 'name' => '.com.com', 'input' => ['email' => ['address' => 'foo@example.com.com']],