Please ensure Javascript is enabled for purposes of website accessibility

Breach Analysis

Five Hard Truths About the Salesloft Breach That Nobody Wants to Discuss

September 9, 2025

·

9-Minute Read

Table of contents

1. Even sophisticated organizations fell victim to architectural blindspots2. Companies couldn't investigate their own breaches because logs cost extra3. The GitHub-to-everything attack chain proves we're still building eggshells4. This exact attack was predicted months earlier5. Even the most transparent remediation responses miss the architectural problemThis Breach Could Have Been Prevented With a Single Click

Share Article

The Salesloft Drift breach hit 700+ organizations in August 2025. But while everyone's talking about OAuth tokens and remediation steps, nobody's talking about what this breach actually reveals about our industry.

I've spent years working with enterprises helping them preempt such threats and respond to incidents just like this. The patterns are always the same. The uncomfortable truths get buried under technical explanations and PR statements. But if we don't face these truths, we'll keep building the same vulnerable systems.

Here's what nobody wants to say about the Salesloft breach.

1. Even sophisticated organizations fell victim to architectural blindspots

The victim list tells a story: Cloudflare, Palo Alto Networks, Zscaler, CyberArk, Proofpoint, Tanium, BeyondTrust, Tenable, Cato Networks, Elastic, SpyCloud.

These aren't small startups with limited security budgets. These are mature organizations with deep security expertise and resources. Many are security vendors themselves, with teams that understand threat landscapes better than most.

Yet they all fell victim to the same supply chain attack exploiting OAuth token abuse.

Obviously, from the sheer scale of this breach, this isn't about the failures of any individual company. It's about recognizing a systemic blindspot in how we architect integrated systems. This attack wasn't sophisticated. There were no zero-days, no advanced persistent threats (while the threat group UNC6395 is portrayed as an APT actor, there was nothing very advanced about this breach). Just stolen OAuth tokens, used exactly as designed.

The weakness therefore wasn't in the technology, but in the architecture we've all collectively built and adopted over the years, and continue to do so.

When organizations with world-class security teams can't see these attacks coming in their own environments, it reveals that no one is immune. The fundamental challenges remain unsolved because of the architecture of the foundational standards we use for interconnected systems. We keep chasing the next shiny problem space while failing to address acute, fundamental vulnerabilities—which is precisely why we started Clutch Security.

2. Companies couldn't investigate their own breaches because logs cost extra

Companies couldn't investigate their own breaches because logs cost extra

Here's the part that really bothers me. When organizations tried to understand what data was stolen, many couldn't. Not because the logs didn't exist, but because they didn't pay for access to them.

Salesforce published a blog post telling customers to "use your logs" and "you need event monitoring to understand what normal looks like." But many customers can't access these logs because they're behind a paywall.

Think about that for a second. Your company gets breached. Attackers download your Salesforce data. But you can't investigate what they took because investigation capabilities cost extra money.

Unfortunately, this gap isn't new. Earlier this year, I wrote about this exact problem in response to Pat Opet's prescient letter (which we'll discuss more in point 4). The pattern back then was clear: vendors were treating audit logs for non-human identities as premium features. The accounting part of AAA (Authentication, Authorization, Accounting) was being monetized when it should be fundamental.

We've normalized charging for basic security. First we had the "SSO tax" where single sign-on costs extra. Now we have the "audit log tax" where the ability to investigate your own breach is a premium feature.

This creates two classes of security: companies that can afford to investigate incidents and companies that can't. When hackers steal OAuth tokens and download your data, being able to see what happened should be standard. Not a premium add-on.

How many companies today are suffering breaches in their Slack environments, prompting them to investigate Slack logs, only to be directed to their Slack sales rep to upsell them on the Enterprise Grid plan? Nothing I love more than spending time with a sales rep to hear about the great features that await me after we pay, while biting my nails and climbing the walls because I have zero visibility into Slack logs. Oh, and Slack is also owned by Salesforce—are we noticing a pattern here?

We made this broken system normal. Investigation capabilities are now luxury features. That's not acceptable.

3. The GitHub-to-everything attack chain proves we're still building eggshells

The GitHub-to-everything attack chain proves we're still building eggshells

Everyone focuses on the OAuth token theft. But look at how the attackers got those tokens in the first place.

  • March 2025: Attackers compromise Salesloft's GitHub account
  • June 2025: Use GitHub access to pivot into Drift's production AWS environment
  • August 2025: Extract OAuth tokens and breach 700+ customer organizations

GitHub to AWS to OAuth tokens to mass customer compromise. A perfect domino effect.

This is the modern attack chain. Developer environments are the new perimeter. Code repositories contain the keys to cloud infrastructure. Cloud infrastructure holds the tokens to customer systems.

We've spent decades building "defense in depth." Layer upon layer of security tools. Yet one compromised GitHub account cascaded into hundreds of customer breaches.

This is an important point. We do not lack security tools. The problem is that we're still building eggshell architectures. Hard shell, soft center. One crack and everything breaks.

But defense-in-depth doesn't have to be theoretical. Your GitHub environment was breached? As long as there are no hardcoded secrets in your code, there's still work the attacker needs to do—you've bought yourself time. This is the assume leak mentality we've recommended time and time again. Assume your code will be exposed. Assume your repositories will be compromised. Design systems that don't rely on the secrecy of your development environment.

Attackers understand this. They target developer infrastructure because they know it's the path to everything else. We keep treating symptoms while ignoring the architectural disease.

4. This exact attack was predicted months earlier

This exact attack was predicted months earlier

In April 2025, JPMorgan Chase CISO Pat Opet published an open letter that reads like a prophecy:

"Modern integration patterns dismantle essential boundaries, relying heavily on OAuth to create direct, often unchecked interactions between third-party services and firms' sensitive internal resources."

He warned that OAuth integrations "collapse authentication and authorization into overly simplified interactions, effectively creating single-factor explicit trust between systems on the internet and private internal resources."

The Salesloft breach is exactly what he predicted. OAuth tokens bypassed every control. MFA didn't matter. Network segmentation was irrelevant. The attacker authenticated as a trusted application and walked out with data.

Opet's letter was published four months before the attack. The blueprint was there. The warning was clear. Yet the industry continues building systems with the same fundamental flaws.

This wasn't a failure of detection. It was a failure of architecture. We know the risks and choose convenience over security.

5. Even the most transparent remediation responses miss the architectural problem

Cloudflare deserves credit for their response transparency. Unlike most organizations that issued generic statements, they published detailed technical analysis of the attack timeline, shared specific indicators of compromise, and openly discussed their remediation steps. This kind of transparency helps the entire industry learn from incidents.

Their response included rotating "all external services and accounts" and implementing weekly credential rotation going forward. Other affected organizations followed similar playbooks—rotate everything, change all passwords, reset all tokens.

But this approach, while comprehensive, highlights a deeper architectural challenge.

Let's go back to first principles. Why do we rotate credentials? To limit how long an attacker has access to valid secrets. The theory is that time-boxing reduces risk.

But the problem is blatant and obvious: attackers don't wait for your rotation schedule. As we've demonstrated in our Debunking Rotation research, they exploit credentials immediately. If you have a 90-day rotation policy, attackers get 90 days of access. If you rotate weekly, they get a week.

Therefore, the goal shouldn't be faster rotation. The goal should be eliminating static credentials entirely.

OAuth refresh tokens are static by design. They don't expire until explicitly revoked. This creates a fundamental tension in the OAuth standard itself. We built a system that requires long-lived, reusable secrets to function.

Frequent rotation is a response to architectural limitations, not a solution to them. We need ephemeral credentials and just-in-time access, not faster rotation of permanent secrets.

This Breach Could Have Been Prevented With a Single Click

These aren't just technical problems. They're business problems. Architecture problems. Trust problems.

But here's what might surprise you: this entire breach could have been prevented easily. Yes, really. With just a click of a button.

Don't believe me? Salesloft provided a list of their production IP addresses for customers to whitelist. Organizations could have restricted their Salesforce OAuth integrations to only accept connections from Salesloft's known infrastructure. The attackers were connecting from Tor nodes and random cloud instances—none of which were on Salesloft's IP list.

One simple network restriction would have blocked this attack entirely. Sometimes the most important security measures that actually move the needle are too simple and boring for anyone to notice them and take action. We've included a video with this blog post showing exactly how to implement this protection.

But prevention is only part of the solution. We also need to embrace the assume leak mentality. Don't trust any identity, especially non-human identities that fly under the radar. Every OAuth token, API key, and service account should be continuously assessed in real-time for anomalous behavior.

The uncomfortable truth is that this breach was preventable. Not through better detection or faster response, but through better architecture. Systems designed with the assumption that every token can be stolen. Every integration can be compromised. Every trust relationship can be abused.

That's the conversation we should be having. Not how to respond to the next breach, but how to build systems where breaches like this become impossible.

The technology exists. The knowledge exists. What we need now is the courage to admit our current approach isn't working and the discipline to build something better.

Building secure systems requires facing uncomfortable truths. At Clutch, we help organizations understand and secure the non-human identities that attackers are targeting. Because when machines have more access than humans, traditional security approaches fail.

Secure Non-Human Identities. Everywhere.

Ofir is the Co-Founder and CEO of Clutch Security. With over 15 years of experience in cybersecurity, including leadership roles at Sygnia and Hunters, he’s helped global enterprises respond to the most advanced cyber threats. At Clutch, Ofir is focused on tackling one of the industry’s most overlooked risks: securing the explosion of Non-Human Identities across modern infrastructure.