惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Cloudbric
Cloudbric
E
Exploit-DB.com RSS Feed
SecWiki News
SecWiki News
Forbes - Security
Forbes - Security
N
News | PayPal Newsroom
S
Security @ Cisco Blogs
Schneier on Security
Schneier on Security
V
V2EX - 技术
S
Secure Thoughts
W
WeLiveSecurity
Google DeepMind News
Google DeepMind News
C
CERT Recently Published Vulnerability Notes
NISL@THU
NISL@THU
S
Securelist
S
Security Archives - TechRepublic
Know Your Adversary
Know Your Adversary
V
Vulnerabilities – Threatpost
Security Latest
Security Latest
Recent Commits to openclaw:main
Recent Commits to openclaw:main
G
GRAHAM CLULEY
H
Hacker News: Front Page
Microsoft Azure Blog
Microsoft Azure Blog
I
Intezer
Google Online Security Blog
Google Online Security Blog
美团技术团队
阮一峰的网络日志
阮一峰的网络日志
T
The Exploit Database - CXSecurity.com
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Webroot Blog
Webroot Blog
Jina AI
Jina AI
Engineering at Meta
Engineering at Meta
P
Proofpoint News Feed
The Cloudflare Blog
I
InfoQ
L
LangChain Blog
U
Unit 42
P
Proofpoint News Feed
S
Schneier on Security
S
Security Affairs
Y
Y Combinator Blog
T
Tenable Blog
N
News and Events Feed by Topic
MyScale Blog
MyScale Blog
量子位
Google DeepMind News
Google DeepMind News
Cyberwarzone
Cyberwarzone
博客园 - 聂微东
D
Darknet – Hacking Tools, Hacker News & Cyber Security
GbyAI
GbyAI
AWS News Blog
AWS News Blog

RapidFort Blog

RapidFort Test Blog Blog 4 Test Test Blog 3 Test 2 Mythos Vulnerability Assessment: Eliminate Real Risk, Not Just CVEs Securing Modern AI Workloads for National Security RBOM vs SBOM: The Critical Difference Between Software Inventory and Runtime Reality The Remediation Gap: When AI-Powered Discovery Outpaces Human Defense You Only Control 15% of Your Software. Here's How to Secure the Rest. Free ATO Readiness Cohort: Shorten Your Path to Federal Market US Cyber Strategy & Software Supply Chain Security EU CRA for Containers & Kubernetes: Scope, Deadlines & Steps PyPI, npm, and the New Frontline of Software Supply Chain Attacks GitHub Actions Security Audit: CI/CD Risk & Shell Injection What Is RBOM™? Runtime Bill of Materials vs SBOM Explained EU Cyber Resilience Act & Open Source Risk RapidFort Raises $42M Series A for Software Supply Chain Security Fintech Container Security 2026: SASM & RBOM™ RF Analyzer: Precision Container CVE Intelligence Kimia: Secure Kaniko Alternative for Kubernetes Builds AI-Powered Cyberattacks: How Defenders Must Adapt RapidFort Pioneered DoD Container Hardening | Industry Standard Turn Scanner Output into Verified CVE Elimination RapidFort's Giant Washing Machine: Cleaning Open Source at Scale Why SBOMs Fail: RBOM™ & Near-Zero CVE Images Fix the Gap Defeat NPM Supply Chain Worms: Near-Zero CVE Defense Bitnami & Chainguard Alternatives: Free Near-Zero CVE Images Runtime Profiling: Eliminate up to 99.9% of Container CVEs Flow Defending: AI-Speed Container Hardening & Runtime Visibility AI in Software Supply Chain Security: Defense vs Attackers SBOM vs RBOM™: Why Runtime Bill of Materials Wins AI-Powered Container Stack: Built, Hardened & Defended AI-Generated Code Vulnerabilities: Runtime Defense for Containers Container Vulnerability Management Reimagined | RBOM™ 35,000+ Near-Zero CVE Images: FIPS, STIG & AI-Era Standard RBOM™ Runtime Intelligence: Cut CVE Noise & Improve Accuracy EU Vulnerability Database (EUVD): Impact on CVE Management Critical Infrastructure Cyber Resilience: Near-Zero CVE DoD Software Procurement: SWIFT, cATO & Container Security Stop Fixing CVEs One by One: Eliminate up to 99.9% Before Production Break the Patch-and-Pray Cycle: Proactive CVE Management Beyond FedRAMP Checklists: Continuous CVE Elimination Why RapidFort Outperforms the Competition: The Future of Secure Containers FedRAMP Fast-Track: Near-Zero CVE Images & Zero Patching Hidden Costs of Manual CVE Elimination | Automate with RapidFort PCI DSS, SOC 2, FedRAMP & HIPAA Compliance via CVE Elimination Emerging Cyber Threats 2024: Protect Containers with RapidFort Container Supply Chain Security: From Source to Deployment Build a Robust Security Stack with RapidFort's SASM Platform Securing Containerized Environments: Best Practices Identify & Eliminate Common App Vulnerabilities in 3 Steps Near-Zero CVE Blueprint: Securing Your Software Supply Chain Eliminate up to 99.9% of Container CVEs in 3 Steps | No Code Changes DoD Innovation: SpaceWERX, AFWERX & Defense Tech Firsthand Developer Security Training Do's & Don'ts Top 5 Software Security Myths Debunked AI-Generated Code Security Risks: CEO Insights Using AI in Software Development: Security Tips & Considerations RapidFort Wins Intellyx Digital Innovator Award | Runtime Security 3 Tips to Conquer CVE Alert Fatigue Mature DevSecOps Teams: Key Traits & Security Best Practices Top 3 Software Security Trends 2024: AI, Compliance & SASM Software Security Budgeting 2024: Eliminate CVEs by up to 99.9% & Measure ROI RapidFort 2023 Year in Review: Milestones & Container Security Wins OSS Vulnerability Scanning & Container Hardening RapidFort Joins Microsoft Pegasus Program | Container Security Runtime Container Protection: 90% Attack Surface Reduction Black Hat USA 2023: AI, CISO Trends & Cybersecurity Insights SOC 2 Type 2 Compliance for Container Security RapidFort Achieves SOC 2 Type 2 | Enterprise Security Validated Common Container Security Risks & How to Fix Them 6 Steps to Securing Your Software Supply Chain Harden Containers with Coverage Scripts & RBOM™ Profiling Container Vulnerability Management Best Practices Minimize Software Attack Surface | RBOM™-Powered SASM Docker Container Security Best Practices 2023 | Harden & Scan What Is Container Hardening? Reduce CVEs & Meet Compliance | Guide Securing Popular Docker Containers: Up to 80% Attack Surface Cut How RapidFort Secures Its Own Containers | Dogfooding DevSecOps Why Container Security Tools Fail: Scan vs Eliminate Hidden OSS Trade-Offs: Container Bloat, CVEs & Security Debt OSS Patch Management: Eliminate Container Bloat & CVEs OpenSSL Vulnerability: Scan, Harden & Reduce Risk in Containers Harden Hundreds of Containers Today for Free Customs Bridge Automates CVE Elimination with RapidFort SAST vs DAST vs IAST: Limitations for Container OSS Security Delete 78% of Your Redis Container - It Still Works 100% Free Tool: Copy AMIs to AWS GovCloud Fast | Open-Source Script Stop Chasing CVEs: Smarter Container Test Cycles Why CVSS Severity Alone Fails: Use Exploit Probability Software Supply Chain Security with SCA Scanning What Is Software Supply Chain Risk? Causes & How to Mitigate It Reduce Container Bloat: Remove Unused Components & Cut CVEs What Is Software Optimization? RBOM™ vs SBOM Explained Log4j Response: Harden Containers Now Before the Next Patch
The Limits of Shift Left: How Software Optimization Fills the Gap
Russ Andersson · 2022-04-11 · via RapidFort Blog

When a vulnerability is discovered in production, a non-technical executive is bound to ask, “Why didn’t we discover this before we put it in front of customers?” 

The question is understandable and, frankly, justifiable. After several decades of software development and software testing, why are we still discovering security flaws when it’s too late?

The short-sighted answer might be: “We don’t run the right tests until we’ve written all the code.” The far-sighted answer might be: “Software development processes have evolved over time, but are still largely sequential despite moving from waterfall to agile methodologies.” Even at agile organizations, QA and security operations groups feel like the caboose on the release train.

In actuality, a vast majority of the vulnerabilities are in code we never wrote ourselves. Devs use open-source components and open-source operating systems that can pack hundreds of vulnerabilities in them. But since the devs didn’t write the code, remediation options are limited to: 

  1. Investigate if the vulnerability is exploitable or reachable, reducing lateral movement in case of a breach.
  2. Patch the code if a patch exists. Often, it doesn’t in which case the issue remains unresolved. And if it does it often entails an entirely new QA cycle adding time and expense.
  3. Replace with another component. But these new components often bring their own vulnerabilities.
  4. Try to fix the vulnerability by developing ones own bespoke patch and the ensuing host of backward compatibility nightmares it brings.
  5. Redesign the software to omit the problematic component. This is usually neither feasible nor economical, and it’s hard to determine if a component or dependency is needed at run time.

No matter the option, devs are stuck with limited options and unlimited vulnerabilities to fix.

The industry’s answer is to scan early and often. This shifts scanning processes left, though it’s more of a “spread” of relevant, time-consuming scans across the entire SDLC. It sounds like the right thing to do - but is it?

The approach is called “shift left” or “shift left security.” It started gaining industry traction in 2018, and for good reason. Product teams rightly decided to stop waiting until the last steps in the SDLC to detect problems. For many development teams, though, it feels less like sharing product security concerns and more like adding work to their increasingly-impossible workloads.

The principle of shift left is a difficult road paved with good intentions. There’s a much better way to prevent vulnerabilities from getting to production that’s a win-win-win for product teams, business leadership, and customers.

What Shift Left Does Right

Devopedia cites a 2016 paper by Stefan Friese saying, “Shift left is less about problem detection and more about problem prevention.” How does the practice accomplish problem prevention?

In principle, “shift left” is about much more than testing and software scanning. All aspects of the software development cycle can be tested. For example, software designs and requirements can be tested for clarity, measurability, completeness, logical consistency, correctness, and security. All of this is achievable when using software requirement specifications and developing maturity around requirements gathering and documentation.

Furthermore, infrastructure and vulnerability scanning don’t need to wait until a staging deployment. In fact, teams can get a good understanding of the security risks and software attack surface well before they get to production.

A holistic shift left approach involves appropriate types of testing and scanning for each stage of the development lifecycle. This is what mature and responsible software organizations do to establish a foundation of good software hygiene.

Organizations with high software maturity are cognizant of the flaws in every stage of the life cycle. Shift left detects and prevents problems using strong automation, governance, and autonomy. As a result, software can be developed faster, at higher quality, and with fewer flaws reaching production. Mature organizations are fixing problems before they surface, increasing developer awareness of SecOps teams’ concerns (and vice versa), and reducing the significant costs of fixing code later in the SDLC.

The theory behind shifting left sounds awesome! At RapidFort, we are all for mature and responsible software development - but there’s more than one flaw to address, even at mature, responsible organizations.

What Shift Left Doesn’t Do Right

There are many good articles describing the problems with shift left in software testing and DevSecOps concerns in pre-production. 

One of the biggest problems is organizational leadership buy-in. Many product companies are paid and incentivized to deliver value to the market with acceptable risk. But what are “acceptable risks” and how are those risks determined? The problems here are multifold: identifying and documenting the risks, adequately communicating the risks, and understanding, accepting, and managing the risks.

The process of shifting left can be dramatic - and for large organizations, quite costly. Changing SDLC processes, adding lightweight governance, incorporating input and involvement from non-software groups (e.g. operations and security teams), and motivating teams to change are huge impediments to delivering value to markets at high velocity.

Furthermore, poor implementation often leads to overworked teams. Despite good intentions, an unclear vision of a functional shift to the left can have catastrophic effects on already overwhelmed delivery and support teams.

It’s not “shift left” specifically that leads to problems: It’s the process of getting there. It’s not unlike the transition from waterfall to agile, or from monolithic software to microservices, or from hosted services to serverless.

In fact, the biggest problem with shifting left cannot possibly be solved by shifting left.

What Shift Left Will Never Accomplish

Shift left is a powerful concept that works really well for discovering software problems in custom code - but 80-90% of the code in a container isn’t custom. None of that third-party code can be fixed or modified by the organization deploying it.

For example, let’s say you’ve built a container with your custom code in it. It’s running a Redis database and an open source operating system like Ubuntu. The SBOM and SCA scan might say you have 500 vulnerabilities in Ubuntu and another 250 in Redis. Your developers have no tools or abilities to modify the operating system or the database.

You decide to make a custom patch for the most critical vulnerabilities and then the next versions of Redis and Ubuntu come out a few weeks later. Now you need to see if your patch is  backwards compatible or if it needs to be updated. From now on, you need to reconcile third-party patches with your custom patch. This creates a massive spider web of problems for your teams to manage.

The only thing you can do for open source software is: ensure you’ve applied all the patches and use the fewest number of components. You can design around the flaws, but the big gap in understanding is that you can’t get rid of OSS vulnerabilities by patching them yourself.

Shift Left Security Needs Software Optimization

There is only one shift left strategy for minimizing the software attack surface: software optimization. The best solution available today is to eliminate unused components from your workload and use shift left to ensure your custom code is safe.

One of our Enterprise clients discovered 108,384 vulnerabilities across 128 containers before using RapidFort. After scanning and optimizing their infrastructure, RapidFort reduced the vulnerability count to 6,503 - a 94% reduction in vulnerabilities!

We strongly believe in shift left, but it’s not a silver bullet for software security. Every day we scan and measure container workloads and find that 50-90% of software components can be eliminated with no risk to workload functionality. 

At the beginning of this article, we outlined five vulnerability remediation options available to dev teams today. If you are looking for a software optimization solution that can eliminate every unused component in your infrastructure, our scanner is available for free.