Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(611)

Unified Diff: components/url_formatter/url_formatter_unittest.cc

Issue 2784933002: Mitigate spoofing attempt using Latin letters. (Closed)
Patch Set: add similarity check unittests Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: components/url_formatter/url_formatter_unittest.cc
diff --git a/components/url_formatter/url_formatter_unittest.cc b/components/url_formatter/url_formatter_unittest.cc
index a59b4b6b4d668585ce36df1064df0b2e0e118e92..90bb318dd1f83461eb4cd94d3651183f3d746b53 100644
--- a/components/url_formatter/url_formatter_unittest.cc
+++ b/components/url_formatter/url_formatter_unittest.cc
@@ -275,6 +275,22 @@ const IDNTestCase idn_cases[] = {
// музей (museum in Russian) has characters without a Latin-look-alike.
{"xn--e1adhj9a.com", L"\x043c\x0443\x0437\x0435\x0439.com", true},
+ // Similarity checks against the list of top domains. "digklmo68.com" and
+ // 'digklmo68.co.uk" are listed for unittest in the top domain list.
+ {"xn--igklmo68-nea32c.com", L"\x0111igklmo68.com", false}, // đigklmo68.com
+ {"www.xn--igklmo68-nea32c.com", L"www.\x0111igklmo68.com", false},
+ {"foo.bar.xn--igklmo68-nea32c.com", L"foo.bar.\x0111igklmo68.com", false},
+ {"xn--igklmo68-nea32c.co.uk", L"\x0111igklmo68.co.uk", false},
+ {"mail.xn--igklmo68-nea32c.co.uk", L"mail.\x0111igklmo68.co.uk", false},
+ {"xn--digklmo68-6jf.com", L"di\x0307gklmo68.com", false}, // di̇gklmo68.com
+ {"xn--digklmo68-7vf.com", L"dig\x0331klmo68.com", false}, // dig̱klmo68.com
+ {"xn--diglmo68-omb.com", L"dig\x0138lmo68.com", false}, // digĸlmo68.com
+ {"xn--digkmo68-9ob.com", L"digk\x0142mo68.com", false}, // digkłmo68.com
+ {"xn--digklo68-l89c.com", L"digkl\x1e43o68.com", false}, // digklṃo68.com
+ {"xn--digklm68-b5a.com", L"digklm\x00f8" L"68.com", false}, // digklmø68.com
+ {"xn--digklmo8-h7g.com", L"digklmo\x0431" L"8.com", false}, // digklmoб8.com
+ {"xn--digklmo6-7yr.com", L"digklmo6\x09ea.com", false}, // digklmo6৪.com
+
// Mixed digits: the first two will also fail mixed script test
// Latin + ASCII digit + Deva digit
{"xn--asc1deva-j0q.co.in", L"asc1deva\x0967.co.in", false},
@@ -308,15 +324,15 @@ const IDNTestCase idn_cases[] = {
// U+115F (Hangul Filler)
{"xn--osd3820f24c.kr", L"\xac00\xb098\x115f.kr", false},
{"www.xn--google-ho0coa.com", L"www.\x2039google\x203a.com", false},
- // Latin small capital w
+ // Latin small capital w: hardᴡare.com
{"xn--hardare-l41c.com", L"hard\x1d21" L"are.com", false},
// Minus Sign(U+2212)
{"xn--t9g238xc2a.jp", L"\x65e5\x2212\x672c.jp", false},
- // Latin Small Letter Script G
+ // Latin Small Letter Script G: ɡɡ.com
{"xn--0naa.com", L"\x0261\x0261.com", false},
// Hangul Jamo(U+11xx)
{"xn--0pdc3b.com", L"\x1102\x1103\x1110.com", false},
- // degree sign
+ // degree sign: 36°c.com
{"xn--36c-tfa.com", L"36\x00b0" L"c.com", false},
// Pound sign
{"xn--5free-9ga.com", L"5free\x00a8.com", false},
@@ -328,7 +344,7 @@ const IDNTestCase idn_cases[] = {
{"xn--oogle-qmc.com", L"\x0261oogle.com", false},
// Small Katakana Extension(U+31F1)
{"xn--wlk.com", L"\x31f1.com", false},
- // Heart symbol
+ // Heart symbol: ♥
{"xn--ab-u0x.com", L"ab\x2665.com", false},
// Emoji
{"xn--vi8hiv.xyz", L"\U0001f355\U0001f4a9.xyz", false},
@@ -338,7 +354,7 @@ const IDNTestCase idn_cases[] = {
{"xn--registered-25c.com", L"registered\x01c3.com", false},
// ASCII '!' not allowed in IDN
{"xn--!-257eu42c.kr", L"\xc548\xb155!.kr", false},
- // 'GOOGLE' in IPA extension
+ // 'GOOGLE' in IPA extension: ɢᴏᴏɢʟᴇ
{"xn--1naa7pn51hcbaa.com",
L"\x0262\x1d0f\x1d0f\x0262\x029f\x1d07.com", false},
// Padlock icon spoof.

Powered by Google App Engine
This is Rietveld 408576698