Security researchers from Croatia-based security firm DefenseCode claim to have found a critical remote code execution vulnerability in the UPnP (Universal Plug and Play) implementation developed by Broadcom and used by many routers with Broadcom chipsets.
The news comes after researchers from security firm Rapid7 earlier this week reported critical vulnerabilities in two other popular UPnP implementations -- the Intel/Portable UPnP SDK (software development kit) and MiniUPnP SDK -- that are used in tens of millions of network-enabled devices.
The UPnP standard defines a set of networking protocols that allow devices to discover each other and automatically establish working configurations to enable data sharing, media streaming, media playback control and more. The UPnP service is intended to be used on local networks, but Rapid7 found that there are over 80 million devices on the Internet that respond to UPnP discovery requests, making them vulnerable to remote attacks.
The Broadcom UPnP implementation contains a format string vulnerability that can be exploited by sending a specifically crafted SOAP (Simple Object Access Protocol) request to it, the DefenseCode researchers said in an advisory published Wednesday.
The vulnerability can be exploited to read the memory of a device that uses the vulnerable Broadcom UPnP stack or to write arbitrary values at arbitrary addresses in its memory. If exploited correctly, the vulnerability allows an unauthenticated attacker to execute arbitrary code with root (administrator) privileges on the device, they said.
DefenseCode's researchers originally discovered this vulnerability in the Cisco Linksys WRT54GL router model and reported it to Cisco earlier this month. However, they later realized that the vulnerability is actually located in the Broadcom UPnP stack and most likely affects other Cisco routers, as well as routers from other manufacturers.
DefenseCode hasn't compiled a complete list with affected router models, but believes that some devices from Broadcom, Asus, Cisco, TP-Link, Zyxel, D-Link, Netgear, USRobotics and other vendors probably use the vulnerable Broadcom UPnP stack, said Leon Juranic, CEO of DefenseCode, Friday via email.
Broadcom, Asus, TP-Link, Netgear and D-Link did not immediately respond to a request for comment.
Cisco already developed a fix for the vulnerability reported in the WRT54GL model and is working with DefenseCode to validate it, a Cisco representative said Friday via email. "The fix will be released for customers as soon as possible, but in the meantime those using the WRT54GL can stay safe by ensuring their wireless network is securely configured, and the only people using an Ethernet cable for connecting to the router are friends," according to the Cisco official.
The Cisco Product Security Incident Response Team (PSIRT) is investigating DefenseCode's claim that additional Cisco products, including WRT54G3G and WRT310N, might be vulnerable, but nothing can be confirmed at this time, the Cisco representative said.
However, customers who wish to disable the UPnP functionality in Linksys routers can follow the instructions in a technical support document published earlier this week in response to the UPnP vulnerabilities reported by Rapid7.
DefenseCode focused its investigation of this vulnerability on routers, but if the Broadcom UPnP stack is also used in other network-enabled devices like printers, media servers, IP cameras and smart TVs, then those devices are probably vulnerable as well, Juranic said. "But we didn't research other devices, so we can't be sure," he said.
Rapid7 researchers said Monday in their UPnP research paper that more than 15 million devices that responded to UPnP requests from the Internet were using "a commercial stack that is likely developed by Broadcom." They referred to this implementation as "Unknown SDK 1" and said that it was the third most commonly used UPnP stack after Intel/Portable UPnP SDK and MiniUPnP SDK.
Juranic is confident that "Unknown SDK 1" from Rapid7's paper is the vulnerable Broadcom UPnP SDK identified by DefenseCode.
Rapid7 did not immediately respond to a request to confirm this on Friday, but a Thursday Twitter message from HD Moore, Rapid7's chief security officer, suggests that Juranic is correct. "DefenseCode identified a format string in the Broadcom UPnP SOAP service (around ~15m hosts as identified by Rapid7)," he wrote.
However, though having the UPnP service exposed to the Internet increases the chances of a device being attacked, it is not a prerequisite for exploiting the vulnerability found by DefenseCode or the ones found by Rapid7 in UPnP implementations. An attacker who gains access to a local network can also exploit these vulnerabilities to hack into UPnP-enabled networked devices.
Juranic advised all users to disable UPnP in their routers because the risks outweigh the benefits of having the service enabled. "At the moment, there is no reason to have router UPnP enabled, since it's probably vulnerable to one of the discovered UPnP security vulnerabilities," he said.