angler-fishThe Vulnerability History Project

CVE-2015-1296
aka Lock-alike

You could place special unicode characters in the URL so that a padlock character would be displayed at the beginning of the URL which could fool the user into thinking that they had a secure connection over HTTPS. Attackers could post links anywhere on the web that include these special characters so when people click on them and see the padlock icon they'd think that they're safe. The padlock icon verifies that the server is in fact who they claim to be. If you go on Facebook.com and see the padlock then it verifies that there isn't a third party impersonating Facebook. They could hide them with a hyperlink so that the characters don't appear in the link visible to the user, but when they click on it the web browser would copy it to the omnibox and display the padlock character. The omnibox is the address bar in chrome, they just call in the omnibox internally.



This issue happened at the Requirements phase. They should have considered all of the complex unicode inputs that people could use to attempt to spoof URLs. In order for this type of vulnerability to be caught they would have needed to have someone who is very familiar with unicode to be on the team. This person would have to know about the padlock character and know that there are RTL characters that can be used to move characters to appear at the beginning of the string. Throughout all of development no one must have thought of an attack like this. It's a really complex input so it's understandable that they never considered it originally though. They couldn't remove all unicode characters though because people who speak languages whose alphabet doesn't fit in ASCII need to be able to search for things with the omnibox.

Timeline

Hover over an event to see its title.
Click on the event to learn more.
Filter by event type with the buttons below.

expand_less