Lenovo is having a very bad day. Last night, the company was called out for implanting adware that cut through user security. This morning, researchers uncovered a crucial password in the system, exposing Lenovo users to all manner of malicious attack. It's a major, embarrassing security failure — but unlike breaches like Heartbleed or Shellshock, Superfish isn't a flaw in a protocol or a programming mistake. It's a deliberate program, deliberately installed on Lenovo computers with corporate permission but without user consent.
A deliberate program, installed with corporate permission
At its heart, Superfish is just an unusually mean piece of crapware, the kind of program that has been cluttering up cheap PCs for decades now. Manufacturers pre-install the programs onto low-end machines in exchange for a small fee from the software company. Traditionally, all those programs would do is bug you about paying for an upgrade or throw a pop-up ad onto your desktop. But Superfish goes farther, circumventing web encryption to insert ads into HTTPS-protected sites for secure services like webmail and online banking. It's a major breach of protocol, but it's also a wakeup call for many researchers. The mild annoyance of crapware has turned into a serious security flaw — and this bug may only be the beginning.
The problem isn't just that users don't choose to install the software (although that's a problem too.) For the most part, we don't even know it's there. We see ads pop onto the desktop or into browsers, but we don't see the structure behind them. For web inserts, we don't know if the ads are being served by the original site or a browser site. Even if you know it's coming from adware on your computer, it's rare that you'll know the name of the program. The structure is designed to be invisible, outside of the user's control.
Invisibility leads to some strange incentives
Invisibility leads to some strange incentives. If crapware vendors want to try out a new way of targeting ads, for instance, most users will have no idea. Vendors have to justify the new features to the hardware manufacturer, but that can be as simple as paying a little more money. Without a public check, there's nothing to stop the software from growing more and more invasive, until it spills out into a public embarrassment like Superfish.
Hardware manufacturing tends to be invisible too, which makes it easy for adware to slip in. It's very hard to tell if a manufacturer has included something malicious on a given device — something the NSA has ruthlessly exploited over the years. Researchers can look, but the average consumer has to judge by signals. We can't run a security audit alone, so we flatten complex privacy issues into the simpler question of whether or not we trust a given brand. Do you trust Lenovo? Huawei? Apple? It's a crude measure, but it's all we have. Once that trust is gone, it's very hard to replace.
SSL is invisible too
Superfish crossed the line because it targeted SSL, the web's most basic security protection. In the politically charged world of encryption, SSL is the one thing everyone agrees on — the little green lock that protects passwords and credit card data as it moves across the web. Nearly everyone who makes money on the internet relies on consumers trusting SSL, so any move that threatens it is an existential threat. If Superfish became the industry norm, it's not just users that would be in danger. Everyone from Amazon to Google would have to scramble to keep their data secure.
Superfish's attack is particularly dangerous because SSL is invisible too. We see the little green lock and we have the option to sniff out the certificate behind it, but we almost never do. We trust that someone else has checked it out for us. When there is a certificate hack — like the one that got GoGo in trouble earlier this year — it often lays undiscovered for months. This isn't self-vetted encryption like PGP or its open-source sisters. You don't have to work for SSL; it does the work for you. We want web security to be as painless as possible, so painless that it becomes invisible.
The vulnerabilities of Superfish won't last long. Lenovo has already released instructions for uninstalling the software, and users are beginning to address the trickier certificate problem. The damage will last longer, as attackers make use of the stolen passwords and infected machines, but even that may pale in comparison to system-wide hacks like Heartbleed or Shellshock. The bigger danger may be the invisible systems themselves. To the average consumer, manufacturing will always be invisible and SSL will never be more than a 20-pixel padlock icon. And for anyone trying to break through, in the name of profit or national security, that invisibility will be a powerful tool.