Why the "Shift Left" Is Not Enough in a Digital Transformation World
October 04, 2022

Ravi Maira
Snyk

The term "shift left" has been thrown around by the AppSec industry for years. "Left" refers to the earlier stages of the development process when depicted in a traditional waterfall process that begins with planning and ends with operations, and usually takes several months to complete. Traditionally, security testing was done near the end of this process, by dedicated security engineers, rather than the development team. Thus, "shifting left" meant moving security testing earlier in the development process, often automating into CI/CD. It can also include giving developers security tools to test their applications as they build.

The concept is a good one. The shorter the gap between adding a vulnerability and finding it, the cheaper it is to fix. But today, in the DevOps era, shifting left isn't quite as clear. Two key parts are missing.

The Left-To-Right Process Is Infinite

Firstly, there is no "left" in the continuous process that essentially does not end. The reason the DevOps process is often depicted as an infinite loop is because, well, it is one. The most innovative companies have realized that a process of rapid iteration, with smaller changes and enhancements, deployed quickly — often multiple times per day — will produce better results over time. Deploying small changes, and then observing the effect, allows these companies to be much nimbler and provide better digital experiences to customers.

However, this model does not leave room for a lengthy security testing phase. Automating security testing into the CI/CD process is a good step because it can prevent critically severe vulnerabilities from being deployed — by "breaking the build" if one is detected. But even though that is a bit late in the process, the developers have already checked in their code and are ready to move on to the next step. Breaking the build too often will become disruptive, so it should be reserved for the most critical vulnerabilities. But letting too many vulnerabilities through to avoid breaking the build isn't a good option either. Security needs to be built into the overall process rather than just one step — no matter how "left" that step is.

Secondly, the shift left doesn't reflect the change in ownership and drive for independent teams. The truly important change isn't whether you shift security testing, but rather, whether you shift the ownership of security to the developers. Pipeline tests that require security teams to review their results, either from false positives or required expertise, are also disruptive to the development process. Each developer team should be equipped and empowered to test for security issues as they work, and where they work — as they code in their IDEs, merge in repositories, and build in CI/CD, adapting to their workflows and skills. This doesn't involve handing developers a list of issues to remediate or giving them a tool designed for the security team. That causes friction and is likely to lead to developers failing to adopt the tools. They need developer-friendly tooling and the ongoing support of the security team, working in tandem toward one common objective.

So what does the shift left mean in 2022, in the midst of a digitally transforming world and where every company is essentially a technology company?

Application Security in the Digitally Transforming World

In today's environment, the shift-left strategy is something every enterprise is embracing for application security, which essentially involves putting security controls in at earlier stages of development. It's a nip-the-problem-in-the-bud approach where security controls in their respective domains highlight potential security weaknesses related to vulnerabilities in code, vulnerabilities in third-party packages and code-quality issues. It also allows security to keep pace with agile development methodologies while managing new risks introduced by cloud technologies.

However, if you have to pick a direction, you should focus less on shifting left and more ongoing top to bottom. This means replacing a controlling, dictatorial security practice with an empowering strategy. One where developers are able to move faster whilst simultaneously reducing the risk of deploying broken infrastructure. Security should not be viewed as a tool that slows things down, but rather as a key aspect of the development process that enables developers to ship secure, reliable solutions without too much trouble.

Moving testing earlier in the process, essentially left, does not help organizations scale. The most tech-forward companies in the world are setting the pace through rapid iteration and multiple deployments each day. Moving left will identify problems earlier, but can increase the backlog of vulnerabilities that require addressing. To move at scale and in sync with the cloud, a top-to-bottom approach focused on three changes called dev-first security should be implemented.

Empowering Developers to Build Securely Through the Entire Process

The dev-first approach to security requires organizations to move security into the heart of the development delivery life cycle, changing ownership of actions and adjusting existing attitudes towards security. The mindset that "developers build" and "security secures" must be adjusted as it does not and will not work in the digital era. Developers should be encouraged to move fast and directly provision applications to the cloud through existing applications by removing manual processes and the need for additional IT assistance. Developer teams need to have access to all the pieces of security controls that, as of today, are being built into the pipeline.

To further modernize the shift-left approach to security, responsibilities must be passed on to those creating software. Continuous security must be integrated throughout, starting as far left as the Integrated Development Environment (IDE) where the code is built, extending all the way into monitoring applications and production once deployed. This way vulnerabilities are found as early as possible when it is the easiest and least costly to fix them, which is where and how you scale security.

App development is so critical to every company's success these days — getting new apps and capabilities delivered to drive strategic goals. This approach to security supports the pace of innovation that is too fast for security alone to handle. With the scale of developer teams compared to security currently sitting at 8 to 1 per company, security teams must be given the tools to make developers successful during the development process.

This approach doesn't involve companies skimping out on security and focusing solely on developers, but maintaining security as the overarching goal for each department including the CISO and those working across AppSec, DevSecOps and ProductSec.

Ravi Maira is Global VP - Partnerships, Alliances, Channel and GSI at Snyk
Share this

Industry News

May 01, 2024

Amazon Web Services (AWS) announced the general availability of Amazon Q, a generative artificial intelligence (AI)-powered assistant for accelerating software development and leveraging companies’ internal data.

May 01, 2024

Red Hat announced the general availability of Red Hat Enterprise Linux 9.4, the latest version of the enterprise Linux platform.

May 01, 2024

ActiveState unveiled Get Current, Stay Current (GCSC) – a continuous code refactoring service that deals with breaking changes so enterprises can stay current with the pace of open source.

May 01, 2024

Lineaje released Open-Source Manager (OSM), a solution to bring transparency to open-source software components in applications and proactively manage and mitigate associated risks.

May 01, 2024

Synopsys announced the availability of Polaris Assist, an AI-powered application security assistant on the Synopsys Polaris Software Integrity Platform®.

April 30, 2024

Backslash Security announced the findings of its GPT-4 developer simulation exercise, designed and conducted by the Backslash Research Team, to identify security issues associated with LLM-generated code. The Backslash platform offers several core capabilities that address growing security concerns around AI-generated code, including open source code reachability analysis and phantom package visibility capabilities.

April 30, 2024

Azul announced that Azul Intelligence Cloud, Azul’s cloud analytics solution -- which provides actionable intelligence from production Java runtime data to dramatically boost developer productivity -- now supports Oracle JDK and any OpenJDK-based JVM (Java Virtual Machine) from any vendor or distribution.

April 30, 2024

F5 announced new security offerings: F5 Distributed Cloud Services Web Application Scanning, BIG-IP Next Web Application Firewall (WAF), and NGINX App Protect for open source deployments.

April 29, 2024

Code Intelligence announced a new feature to CI Sense, a scalable fuzzing platform for continuous testing.

April 29, 2024

WSO2 is adding new capabilities for WSO2 API Manager, WSO2 API Platform for Kubernetes (WSO2 APK), and WSO2 Micro Integrator.

April 29, 2024

OpenText™ announced a solution to long-standing open source intake challenges, OpenText Debricked Open Source Select.

April 29, 2024

ThreatX has extended its Runtime API and Application Protection (RAAP) offering to provide always-active API security from development to runtime, spanning vulnerability detection at Dev phase to protection at SecOps phase of the software lifecycle.

April 29, 2024

Canonical announced the release of Ubuntu 24.04 LTS, codenamed “Noble Numbat.”

April 25, 2024

JFrog announced a new machine learning (ML) lifecycle integration between JFrog Artifactory and MLflow, an open source software platform originally developed by Databricks.

April 25, 2024

Copado announced the general availability of Test Copilot, the AI-powered test creation assistant.