The first large-scale analysis of a fundamental type of software known as firmware has revealed poor security practices that could present opportunities for hackers probing the "Internet of Things."
Firmware is a type of software that manages interactions between higher-level software and the underlying hardware, though it can sometimes be the only software on a device. It's found on all kinds of computer hardware, though the study focused on embedded systems such as printers, routers and security cameras.
Researchers with Eurecom, a technology-focused graduate school in France, developed a web crawler that plucked more than 30,000 firmware images from the websites of manufacturers including Siemens, Xerox, Bosch, Philips, D-Link, Samsung, LG and Belkin.
They found a variety of security issues, including poorly-protected encryption mechanisms and backdoors that could allow access to devices. More than 123 products contained some of the 38 vulnerabilities they found, which they reported privately to vendors.
They're due to present their research next week at the 23rd Usenix Security Symposium in San Diego.
Most of the firmware they analyzed is in consumer devices, a competitive arena where companies often release products quickly to stay ahead of rivals, said Aurélien Francillon[cq], a coauthor of the study and an assistant professor in the networking and security department at Eurecom.
"You have to be first and cheap," Francillon said in a phone interview. "All of those things are what you should not do if you want a secure device."
Firmware security practices lag far behind those of the PC software market, where vendors like Microsoft learned the hard way that they need to patch software automatically on a regular, frequent schedule.
That's often not the case with firmware, which may not be designed to patch itself periodically and also relies heavily on third-party software that may not be current. In one instance, the researchers found a Linux kernel that was 10 years out of date bundled in a recently released firmware image.
"On these devices, it's a real nightmare," Francillon said.
The murky world of firmware sometimes makes it hard to figure out which products might be affected. Manufacturers often rely on tools and development kits that are widely used across industries, so the flawed firmware can end up in product sold under lots of different brands.
"As a consequence, some devices will often be left affected by known vulnerabilities even if updated firmware is available," the researchers wrote.
They also found problems in the way different firmware images employ digital certificates to enable encryption. They uncovered 41 digital certificates in firmware that were self-signed and contained a private RSA encryption key. About 35,000 devices were online using these less-secure certificates.
"Backdoors," or ways to access devices that have been cemented into the firmware's code, were also prevalent. It's a bad security practice, but developers often forget to remove backdoors before code is released or underestimate the ability of a hackers to find them.
The researchers searched the firmware images for terms that could indicate the presence of a backdoor, and they found 326 instances.
One of those instances, a backdoor in some Linux-based firmware, could allow a hacker to take control of a home automation device and potentially turn someone's lights off remotely, they discovered.
What was interesting is that they then found the exact same backdoor in 44 CCTV cameras from a different vendor, and in home routers from an unnamed "major networking equipment vendor." But it turned out the weakness wasn't really the fault of those vendors.
All the devices, it turned out, used a networking chip from another manufacturer, who had apparently left the backdoor in the firmware for de-bugging purposes. They weren't sure who the chip vendor was, but they planned to acquire some of the devices and do more research.
The study was also co-authored by Andrei Costin[cq], Jonas Zaddach[cq] and Davide Balzarotti[cq], all of Eurecom.
Send news tips and comments to [email protected] Follow me on Twitter: @jeremy_kirk