After the SolarWinds breach that infected thousands of organizations and at least 250 federal agencies and businesses, and with new complex attacks like the one on the Vietnam Government Certification Authority, companies and executives are realizing how susceptible their own systems are to supply chain attacks.
As industry experts have pointed out, the SolarWinds incident shows how some cyberattacks are nearly impossible to detect. It also raises questions about the overall vulnerability of government and private sector networks and prompted the National Security Council to stand up a task force, the Cyber Unified Coordination Group, to coordinate the investigation and remediation of this incident.
As is typical in a supply chain attack, in the SolarWinds incident, the malicious code was inserted during a legitimate software update — in this case, to SolarWinds' Orion platform — and hidden within a digitally signed software component.
When it comes to supply chains, blind trust and long, complex chains are two key ingredients for disaster. However, these are two constants in nearly every Web application and website that is online right now.
The Web supply chain is a mash-up of third-party code with thousands of ramifications. Today, Web applications have 1,000 modules (also known as code dependencies) on average. Each of these modules has dependencies of its own and so each Web app can quickly rack up thousands of pieces of third-party code. Don't forget that each of these pieces also represents an increase of the attack surface, especially considering that these third parties often have fewer resources dedicated to security. As we've seen several times, it just takes one ill-intentioned user to launch a serious Web supply chain attack.
A 2019 study explored the possible side effects of this reliance on third-party code on the Web. One key problem the authors outlined is the lack of privilege separation on the Web — all pieces of third-party code have the same privileges as code that is developed internally. A breach on a single piece of third-party code can silently send malicious code down the supply chain and into a legitimate software update — just like what happened in the SolarWinds incident. But in the case of the Web supply chain, the picture gets much worse. The same team of researchers found that 20 maintainer accounts can reach more than half of the entire Web ecosystem — meaning that a single breach in one of these accounts can trigger a global Web supply chain attack and affect millions of organizations.
Another approach to Web supply chain attacks, known as Magecart or Web skimming, has also been gaining momentum. This approach consists of injecting malicious code into a third-party script, such as a live chat widget, to load the infected code whenever end users access a certain webpage. In Magecart Web skimming attacks, the code collects all credit card data submitted on payment forms and covertly sends it to attackers' drop servers.
Could either or both of these approaches lead to massive state-sponsored attacks on the Web? Researchers have spotted clear links between Web supply chain attacks and state-sponsored hacking crews on multiple occasions. We know that attackers always go after the weak links first, and the Web supply chain provides an abundance of weak links to target.
Just like the SolarWinds incident showed, companies can't risk the critical impact of a supply chain attack. Solving Web supply chain attacks requires taking action now, understanding this security weakness, and actively finding ways to reduce the attack surface.
In practice, organizations must reduce their reliance on third-party code whenever possible, reinforce their vetting practices, and employ mechanisms to detect malicious client-side behavior at runtime. This latter strategy has gained momentum because it allows organizations to detect all signs of malicious behavior in real time without relying on signatures. As such, runtime monitoring can vastly reduce the time needed to detect and block the source of the attack.
Web supply chain attacks keep growing in complexity, taking advantage of the overall chaos of client-side code. A strong commitment to improved application security is surely the best weapon that organizations can bring to this Web supply chain battle.