Leading vendors have teamed up to release a patch to fix a serious bug that has affected the DNS protocol that underlies the entire Internet. Microsoft, Cisco, Red Hat, Sun Microsystems and the Internet Software Consortium, makers of the most widely used DNS server software, have all updated their software to address the vulnerability

The bug was discovered some months ago by Dan Kaminsky, a researcher with security vendor IOActive, and since then he and the leading vendors have been working to address the problem.

By sending certain types of queries to DNS servers, the attacker could then redirect victims away from a legitimate website to a malicious website without the victim realising it. This type of attack, known as DNS cache poisoning, doesn't affect only the Web. It could be used to redirect all Internet traffic to the hacker's servers.

The bug could be exploited "like a phishing attack without sending you e-mail," said Wolfgang Kandek, chief technical officer with security company Qualys.

Although this flaw does affect some home routers and client DNS software, it is mostly an issue for corporate users and ISPs that run the DNS servers used by PCs to find their way around the Internet, Kaminsky said. "Home users should not panic," he said.

After discovering the bug several months ago, Kaminsky immediately rounded up a group of about 16 security experts responsible for DNS products, who met at Microsoft on 31 March to hammer out a way to fix the problem. "I contacted the other guys and said, 'We have a problem,'" Kaminsky said. "The only way we could do this is if we had a simultaneous release across all platforms."

The Internet Software Consortium's open-source BIND software runs on about 80 percent of the Internet's DNS servers. For most BIND users, the fix will be a simple upgrade, but for the estimated 15 percent of BIND users who have not yet moved to the latest version of the software, BIND 9, things might be a little more difficult.

That's because older versions of BIND have some popular features that were changed when BIND 9 was released, according to Joao Damas, senior programme manager for the Internet Software Consortium.

Kaminsky's bug has to do with the way DNS clients and servers obtain information from other DNS servers on the Internet. When the DNS software does not know the numerical IP address of a computer, it asks another DNS server for this information. With cache poisoning, the attacker tricks the DNS software into believing that legitimate domains map to malicious IP addresses.

Security researchers have known about ways to launch these cache poisoning attacks against DNS servers for some time now, but typically these attacks require that attackers send a lot of data to the DNS server they are trying to infect, which makes the attacks easier to detect and block. However, Kaminsky discovered a far more effective way to launch a successful attack.

Because Kaminsky's flaw lies in the design of DNS itself, there is no easy way to fix it, Damas said. Instead, companies like ISC have added a new security measure to their software that makes it harder for cache poisoning to work.

In the long run, however, the most effective way to deal with cache poisoning will be to adopt a more secure version of DNS, called DNSSEC said Danny McPherson, chief research officer with Arbor Networks. Tuesday's fix is basically "a hack that makes it a lot more difficult," he said. "But it doesn't fix the root problem."

Kaminsky says he will give network administrators a month to patch their software before revealing more technical details on the flaw at next month's Black Hat conference in Las Vegas. In the meantime, he has posted code on his website that allows users to see if their corporate or ISP's DNS server has been patched.