There has been much discussion about open e-mail relays, but very little about open HTTP redirectors. An open redirector is hosted by foo.com, but will unintentionally send you to bar.com. This can have interesting effects on PageRank or can trick users into clicking on something that isn’t what it seems.
After many months of abuse by spammers, the rd.yahoo.com redirect server is now closed.
Yahoo! has used a redirect server for a long time for tracking clicks from one Yahoo! website to another.
Last year, spammers started using rd.yahoo.com in email messages to trick unsuspecting users into thinking that they were clicking on a Yahoo! website. They started sending out emails with links that looked like this:
Users saw the yahoo.com domain name and figured it must be some official Yahoo! site, not realizing that the server would redirect to another IP address. So we started blocking those types of URLs (easy to do since we’d never use a dotted-quad for anything legit). So the spammers switched to something a little more clever:
The trick here was a misuse of the clear-text “username:password@server” authentication feature. It made it look like you were accessing a yahoo.com URL, but in fact were going somewhere else. These were particularly insidious, since they didn’t even go through our redirect servers, so there was nothing we could do to block them. Microsoft got rid of the problem for us with an update to Internet Explorer 5 and 6 that simply disabled the feature altogether. Mozilla followed suit by displaying a warning dialog box when this type of URL is used:
You are about to log into the site “126.96.36.199″ with the username “finance.yahoo.com,” but the website does not require authentication. This may be an attempt to trick you.
Is “188.8.131.52″ the site you want to visit?
So the spammers went back to abusing Yahoo!, but this time with actual hostnames:
This not only tricks email users, but when used on the web can (in theory) also influence PageRank-type algorithms.
We had no choice but to either maintain a whitelist (lots of server-side state to manage) or implement a digital signature algorithm. We went with the digital signature approach. So now you can safely click through to partner sites:
But if you try to recycle the same signature with a different URL, you’ll get a 403 Forbidden:
Finally, rd.yahoo.com does what it’s supposed to do and nothing else. Frustrated spammers out there have probably already started to abuse someone else.