Wormable flaws in Symantec products expose millions of computers to hacking
Symantec released patches for the affected products, but while some products were updated automatically, some affected enterprise products could require manual intervention.
The flaws were found by Tavis Ormandy, a researcher with Google's Project Zero team who has found similar vulnerabilities in antivirus products from other vendors. They highlight the poor state of software security in the antivirus world, something that has been noted by researchers.
Most of the new flaws found by Ormandy are in the Decomposer component of the Symantec antivirus engine. This component handles the parsing of various file formats, including archive files like RAR and ZIP. Furthermore, the Decomposer runs under the system user, the most privileged account on Windows systems.
Symantec didn't immediately respond to a request for comments on the vulnerabilties.
Security researchers have criticized antivirus vendors many times for performing risky operations like file parsing with unnecessarily elevated privileges. Historically, such operations have been a source of many arbitrary code execution vulnerabilities in all sorts of applications.
Ormandy found vulnerabilities in the Symantec code used to handle ZIP, RAR, LZH, LHA, CAB, MIME, TNEF and PPT files. Most of these flaws can lead to remote code execution and are wormable, meaning they can be used to create computer worms.
"Because Symantec uses a filter driver to intercept all system I/O [input/output operations], just emailing a file to a victim or sending them a link to an exploit is enough to trigger it -- the victim does not need to open the file or interact with it in anyway," Ormandy said in a blog post.
Even more surprising is the fact that Symantec appears to have used code from open source libraries, but failed to import patches released by those projects over the years.
For example, Ormandy determined that Symantec products were using version 4.1.4 of an open-source unrar package that was released in January 2012. The most current version of that code is 5.3.11. A similar situation was also observed for another library called libmspack.
"Dozens of public vulnerabilities in these libraries affected Symantec, some with public exploits," Ormandy said. "We sent Symantec some examples, and they verified they had fallen behind on releases."
The failure to keep track of vulnerabilities patched in the third-party code used by software vendors and developers in their own projects is a widespread problem. However, there's a natural expectation that security vendors would not make that mistake. After all, they often preach secure software development and vulnerability management to others.
Unfortunately, "when looking at how even a behemoth of a security product vendor like Symantec is bundling ancient code in their products, clearly hasn't subjected this code to security reviews and testing, and to top it off runs this old, unsafe code with SYSTEM/root privileges, it is clear that security vendors don't hold themselves to very high standards," Carsten Eiram, the chief research officer of vulnerability intelligence firm Risk Based Security, said by email.
According to RBS' data, 222 vulnerabilities have been reported this year in security products, representing 3.4 percent of all vulnerabilities seen in 2016 so far.
"It may not sound like much, but it's actually quite significant," Eiram said.
Symantec has published a security advisory that lists the affected products and contains instructions on how to update them. All Norton products -- the consumer line -- should have been updated automatically.