Juniper VPN-code falls victim to cyber espionage

Late last week, Juniper Networks announced that an internal review had uncovered 'unauthorised' code that had been inserted into key ScreenOS VPN-communication software, which enabled the miscreant to monitor the content of VPN traffic. The company has discovered two distinct corruptions of its code: the first allowed "unauthorized remote administrative access" which could lead to the complete compromise of a targeted system, while the second enabled VPN traffic to be decrypted and monitored. Juniper believes that the two sets of code are unrelated, however their conjunction would mean that a party with knowledge of both of the illicit back-doors would essentially have full and open access to a target's VPN traffic. It is likely that the rogue code was added in late 2013, and experts emphasise that detection is impossible, as the attackers would have had full access rights and hence the ability to erase all tracks. The FBI is investigating what appears to be a clear case of cyber-espionage, and the key question has to be how many other internet security products have undiscovered rogue code lurking within them?

Security researchers today expressed deep concern over the disclosure by Juniper Networks this week that it had discovered unauthorized code in its ScreenOS firewall operating system that could allow an attacker to decrypt VPN communications or take complete administrative control of a compromised system.

In an out-of-cycle advisory issued yesterday, Juniper senior vice president and CIO Bob Worrall said the company discovered the code during a recent internal review and moved quickly to patch the vulnerabilities. “We launched an investigation into the matter, and worked to develop and issue patched releases for the latest versions of ScreenOS,” Worrall said.

According to the company, all Juniper NetScreen devices running versions OS 6.2.0r15 through 6.2.0r18 and 6.3.0r12 through 6.3.0r20 of ScreenOS are vulnerable and need to be patched immediately.

In a separate advisory, Juniper said the code causes two security issues. “The first issue allows unauthorized remote administrative access to the device over SSH or telnet. Exploitation of this vulnerability can lead to complete compromise of the affected system,” the company noted. Certain entries in the log file would indicate if someone had exploited the vulnerability, Juniper said.

The second issue allows someone with the know-how to monitor and decrypt VPN traffic. Enterprises would have no way of knowing if the vulnerability has been exploited to snoop in on their encrypted VPN traffic. Juniper said the two issues are separate and distinct from each other.

Security experts described the disclosure as being deeply troubling and said it raised several questions about who might have had access to the source code, how they might have tampered with it unnoticed and most importantly, why.

Edward Snowden’s leaks about U.S. surveillance practices at home and abroad included details about the National Security Agency’s Tailored Access Operations (TAO) and the tools the agency apparently used as part of the operation to infiltrate systems. One of the tools allegedly was a software exploit for Juniper’s firewalls dubbed Bananaglee.

It’s quite possible that Juniper’s disclosure this week has nothing to do with Bananaglee at all and is a completely separate issue. But that does not mitigate the serious nature of the disclosure, analysts say.

“This is extremely worrisome,” says Richard Stiennon, chief research analyst at IT-Harvest. “It has all the hallmarks of a very sophisticated infiltration and corruption [campaign] ... One can’t help wonder if Juniper has discovered a TAO backdoor.”

Though documents leaked by Snowden listed Juniper as one of several equipment manufacturers that may have been targeted as part of TAO, the company, like others has never publicly disclosed any known backdoors in its products, Stiennon says. Businesses using unpatched firewalls run the risk of having all the network traffic routed through a VPN being read by an attacker and having additional APT-style code installed on their systems, Stiennon says.

There are several possible ways the code could have been inserted into Juniper’s operating systems, says John Pescatore, director at the SANS Institute. An insider, for instance, could easily hide unauthorized code in such a manner as to evade detection during the testing and QA process.

If Juniper hadn’t taken adequate measures to protect its source code, an external attacker could have gained access to it as well, Pescatore says. “A variant is someone compromising tools Juniper developers used,” he says. “[But] that doesn’t seem too likely here.”

It’s important for enterprises to find out from Juniper what exactly happened, Pescatore says, and how and what the vendor has changed to prevent it from occurring again. “Then make sure to ask your other vendors why this won’t happen. This is all part of supply chain integrity in IT,” Pescatore says.

Rich Mogull, CEO of security research firm Securosis, says it appears that the backdoor code was inserted into the Juniper supply chain. “We can’t really speculate as to how it happened, but some options include everything from malicious employees to compromise of development pipeline servers and repositories, to compromise of employee systems with access to any of those assets," he says.

This is not the first example of a company’s code development and release process being compromised -- and it won't be the last, he says. In fact, this sort of compromise happens far more commonly than most vendors, especially security companies want to admit, Mogull says.