Microsoft Corp. has announced in a support document that it will be releasing a software update to Internet Explorer and Windows Explorer to disable the use of certain syntax in HTTP URLs. The syntax, designed to allow a username and password to be passed to a password-protected page, has a history of abuse. The company did not give a timeline for the release of the patch.
The syntax takes the form http[s]://username:password@server/file.html, such as http://joe:blow@www.microsoft.com/, where “joe” is the username and “blow” is the password. But a site that does not look for the username and password will ignore the values passed, and only the string after the “@” symbol is used for the domain name. Other browsers support this syntax to varying degrees.
Because the values before “@” are ignored, attackers have often attempted to use them to confuse users into believing that they are going to a different site than they are actually visiting. For example, the URL http://www.microsoft.com%2F@10.11.12.13/ might appear to be going to www.microsoft.com, but it is actually going to the IP address 10.11.12.13.
The problem was compounded by the recent discovery of a display bug in Internet Explorer that stops the browser from displaying parts of the URL. This allows an attacker utilizing both techniques to display only the legitimate looking portion of the URL to the user.
Microsoft took some time deciding how to address the problem, but on Tuesday released the support document. After installing the patch, Internet Explorer will react to the syntax with a Web page containing the following error message: “Invalid syntax error.”
A registry entry will be available for users to re-enable the feature, or to enable it in third-party software that uses the IE Web browser control.