Hacker News .hnnew | past | comments | ask | show | jobs | submit | _jg's commentslogin

Should be: 'John@Gıthub.com'.toUpperCase() === 'John@Github.com'.toUpperCase()


The example doesn't seem to work at all for GitHub's explanation.. they say that their outgoing email server didn't support unicode in the domain part anyway. What am I missing? Was your actual attack on the local part?


Our team at Wisdom has done the exact same. It's been confusing at times, but much better once we got going.


This was a very real and demonstrated vulnerability. Perhaps I've misunderstood your comment.


There are no emails with Turkish characters. The whole attack vector hinges on emails that exist with Turkish characters in the first place.


That’s incorrect. The attack vector hinges on the ability to create email addresses with Turkish characters. There is nothing stopping an attacker from creating addresses with Turkish characters to attack existing addresses without Turkish characters.


https://en.wikipedia.org/wiki/Email_address#Internationaliza...

Turkish emails are not supported in the first place.

Internationalization examples[edit] The example addresses below would not be handled by RFC 5322 based servers, but are permitted by RFC 6530. Servers compliant with this will be able to handle these:

Latin alphabet with diacritics: Pelé@example.com

Greek alphabet: δοκιμή@παράδειγμα.δοκιμή

Traditional Chinese characters: 我買@屋企.香港

Japanese characters: 二ノ宮@黒川.日本

Cyrillic characters: медведь@с-балалайкой.рф

Devanagari characters: संपर्क@डाटामेल.भारत


RFC 6530 doesn't mention those character sets explicitly. It proposes allowing all Unicode characters, apart from some control characters.

It is true that the RFC recommends mailbox providers take normalization into account. A mailbox provider that allows i and dotless-i addresses to be routed to different mailboxes is careless, if not actually uncompliant. I don't know if any popular provider does this: I'm guessing the authors created their own to demonstrate this attack.


Unicode is such a disaster for data processing that it's unfair to call anyone careless for getting it wrong.


Turkish characters are not part of RFC 6530.

There are no email addresses with Turkish characters at all. They all use Latin characters.

It just does not exist - yet at least.


Yes, they are part of RFC 6530, via its references to RFC 3629 (UTF-8) and the Unicode standard.


EAI email addresses are legal email addresses, even if it's not guaranteed that all servers are capable of delivering to them.


Unfortunately convention has normalised user expectations that email addresses are now case-insensitive. It's now a standard business requirement. Too bad few devs fully handle Unicode.


Yes! Add in a toLowerCase() in there as well.

An apparently small deviation with surprisingly large repercussions.


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: