Ready or not, IPv6 is finally visible on the horizon... And researchers are already finding major security problems with it.
IPv6, which is supported in some of the latest OSes and network devices, is all about end-to-end, or peer-to-peer communications. Aside from offering more address space than its IPv4 predecessor -- which has made it immediately popular in some parts of the world -- it offers a redesigned IP packet format that simplifies route processing, making it ideal for applications such as voice over IP or instant messaging.
But IPv6 presents a whole range of new security problems, experts say. French researchers recently found problems in the IPv6 protocol specification itself, namely in the routing header. Bottom line: The specification lets the sender add an arbitrary number of extra headers on IPv6 packets, and the IPv6-based routers or hosts must process these headers. It's a denial-of-service attacker's dream come true.
Speaking at last month's CanSecWest conference, researchers Philippe Biondi and Arnaud Ebalard disclosed details of problems they found in IPv6's routing header feature -- specifically type 0 routing headers.
The problem isn't new. The Internet Engineering Task Force's own IPv6 draft security overview actually recommends "forbidding" or "limiting" type 0 routing headers in hosts and some routers. And IETF member Jari Arkko recently wrote on the standards group's mailing list that the IETF should modify this problematic part of the spec, and make a decision about this routing header feature in IPv6. "This feature needs to be retired," he wrote.
The routing header problem is only the beginning of IPv6's security woes, observers say. "IPv6 is a complex protocol, and its weaknesses and bugs are not theoretical," says Ivan Arce, CTO of Core Security Technologies , which recently discovered a memory-corruption bug in the OpenBSD kernel's code that handles IPv6 packets -- a vulnerability unrelated to the routing header feature.
"As its adoption and deployment grows, security researchers with a practical focus will continue to uncover IPv6 issues," Arce says.
In the meantime, here's a list of some key security flaws to look out for. The first four are all related to the IP type 0 routing header feature:
IPv6's advanced network discovery lets you select the path for your packets, but it could also let an attacker go where he or she should not go. "You can have them reach places they should not reach, and interact with equipment not in direct sight," according to Biondi and Ebalard. And an attacker could drill down and get more information on your remote networks, too.
2. Filtering device bypass
Many currently-installed filtering devices, such as firewalls, were not designed for IPv6. DMZ protection for IPv6 traffic varies in many products, as does firewall filtering of IPv6 packets. Experts worry that with such devices in place, an attacker could hide traffic or a payload using Route Header 0.
3. Denial-of-service (DOS)
DOS attacks can occur when IPv6 packets are sent back and forth through the same link until they overwhelm bandwidth. And you know what can happen after that -- not just the service disruption itself, but other attacks that are masked by the DOS.
"According to Philippe, you can mark a single packet such that it'll go around and around and around in these huge routing loops, such that a single packet will be able to consume far more link bandwidth than it could have previously," says Dan Kaminsky, director of penetration testing services for IOActive. "An 88x bandwidth amplifier is actually a fairly big deal, and will allow someone with a 1.5Mbit link to kill a 100Mbit upstream. That would be pretty bad."
4. Anycast: Not safe anymore
"Anycast works by announcing the same IP at many places on Internet so that each box can go to the nearest one," explains Biondi and Ebalard.
Trouble is, IPv6's routing header 0 feature "can single out all instances of an anycast service," according to the French researchers, and basically negate the benefits of anycasting.
The researchers concluded that IPv6's type 0 routing headers "have no applications, and only bring security issues." The only way to protect yourself for now is to disallow "RH0" in your network, and to prevent your host systems from processing it as well, they said.
5. IPv6 puts IPv4 at risk
There are bigger-picture problems than routing headers. Once you enable IPv6, you may open up your IPv4 network and devices to its vulnerabilities as well. This is a hot button for service providers testing out IPv6, but the problem applies to enterprises with large WANs also, says Nicholas Fischbach, senior manager of network engineering/security for COLT Telecom Group plc (Nasdaq: COLT; London: CTM.L).
"Turn on IPv6, and a number of DOS conditions may put your revenue- generating [IPv4] backbone at risk," Fischbach says.
And IPv6 isn't just a network issue, either. "It will also impact security devices, operating systems, and applications," he says. "Making an application IPv6-ready requires changes, some minor, some major, depending on the application and how it's written. But at the end of the day, it could mean another exposure of a security hole that no one thought of, or [had] only fixed in the IPv4 part."
Kelly Jackson Higgins, Senior Editor, Dark Reading