Exfiltration via Malicious Versions of Trusted Tools

In the course of just one week, multiple organizations have gone public regarding a breach in their SaaS CRM application. Mitiga’s Threat Hunting & Incident Response team, part of Mitiga Labs, investigated one such case and discovered that a compromised Salesforce account was used in conjunction with a “Salesforce Data Loader” application, a legitimate bulk data tool, to facilitate large-scale data exfiltration of sensitive customer data.

The threat actors began with social engineering: they tricked an employee into approving a malicious connected app during a voice phishing (vishing) call. The approval gave the threat actors API access to the organization’s Salesforce data without exploiting any software vulnerabilities. From there, they could use automated queries to silently export customer data for extortion and resale of PII on the dark web, although attribution of the actors remains under investigation.

This report breaks down the attacks, including:

  • The threat group behind this campaign
  • What this fake Salesforce Data Loader is 
  • The New method of exfiltration
  • Recommendations: How organizations can detect and mitigate such threats

This investigation uncovered a lesser-known but highly effective exfiltration method: threat actors used a trojanized version of Salesforce Data Loader, approved through social engineering, to perform high-volume, authenticated API queries. By chaining legitimate tooling with OAuth access, they extracted millions of records without touching a single credential or triggering traditional perimeter controls.

Attack Methodology: From Vishing to Salesforce API Exfiltration

The breach combined social engineering and abuse of OAuth (connected app authorization) in a multi-step operation. Here’s how the attack unfolded based on our investigation and similar tactics by UNC6040.

Step 1: Initial Social Engineering (Vishing)


The threat actor called an employee pretending to be internal IT support and claimed that there was an open Salesforce issue that required action. The fake IT support caller guided the victim to Salesforce’s webpage for connected apps (e.g., login.salesforce.com/setup/connect) under some pretext.

Step 2: Unknown Connected App Authorization 


Normally, installing a new connected OAuth app in Salesforce requires a user to confirm a code. On the call made by the threat actor, the employee was asked for an 8-digit code on the to authorize an app. Threat actors will also modify the application name – like “My Ticket Portal,” for example – to avoid raising suspicion. In this case, because the user had sufficient permissions, the approval granted the threat actor persistent API access to the Salesforce environment – operating with the compromised user permissions.

Attack path diagram illustrating the threat actor's modus operandi.

Step 3: Stealthy Data Extraction via API


Once authorized, the threat actors leveraged the Data Loader API access to run bulk queries and extract data. The Mitiga team’s threat hunting detected unusual patterns in the Salesforce Event Monitoring logs (specifically, RestAPI logs) revealing how the data was being exfiltrated. The logs showed the compromised user account (let’s call it “User X”) performing numerous API GET requests to the /services/data/v62.0/query endpoint (Salesforce REST API for SOQL queries). Each request was for the Customers_PII object and returned approximately 2.3 MB of data (roughly 1,000 records with 400 fields each) per request.

Step 4: Burst-Based Exfiltration


The attacker ran queries in a methodical, batch-like sequence.

  • Initial Access Test: First, a single GET request was sent from a new IP address, likely used to validate the connected app’s access and confirm API functionality.
  • Burst Execution: Moments later, the same IP would initiate a rapid burst of approximately 170 to 230 GET requests, each retrieving ~2.25–2.3 MB of contact data. This flood of API calls typically lasted about 9 to 11 minutes, then stopped.
  • IP Rotation Strategy: Immediately after, a different IP address (a Tor IP Address) would take over and perform the next batch of ~200 GET requests in the same manner.
  • Volume & Speed: This pattern repeated with about 8 distinct IP addresses, one after the other, over the course of roughly 1 hour and 20 minutes. In total, about 3.9 GB of data (nearly 4 million records) were exfiltrated from the Customers_PII object in that short time frame.

All of the involved IP addresses were traced to anonymization networks (Tor exit nodes or VPN services) rather than known corporate or trusted IP ranges. This aligns with known UNC6040 behavior of using services like Mullvad VPN to carry out intrusions and data theft while masking their location. By cycling through IP addresses, and presumably different exit nodes or proxies, the threat actors also attempted to bypass any single-IP rate limits or detections and make their traffic blend in with normal API usage patterns.

Step 5: Detection and Interruption


With Salesforce event monitoring and Mitiga’s detection logic, the activity was flagged before the operation fully completed – in fact, when only about 10% of the data had been exfiltrated, ensuring breach impact was minimized. In this case, alerts were triggered by anomalous query volumes (e.g. 30**+ API queries returning sizable data**) within a short period. An alert described “221 mid-sized GET requests fromContactobject by user X in 10 min – potential data exfiltration.”

Security teams were able to notify the relevant parties about the connected app’s access and reset the compromised user’s credentials, cutting off the threat actor midstream. However, in at least one other incident, the threat actor managed to extract multiple objects (several gigabytes of data) before being noticed, due to the speed and stealth of the operation.

Evidence from the Salesforce Logs

Salesforce Event Monitoring logs were critical to piecing together the incident. Here’s what stood out in the data:

Anomalous Connected App ID


Event Monitoring logs showed the suspicious activity tied to a Salesforce Connected App ID 889Kb100000KFJc. This ID did not match any known legitimate and vetted application in the organization and appeared for the first time on the day of the attack. It corresponds to the malicious Data Loader app that was added by the threat actor. During normal operations, Salesforce’s connected apps are usually known and vetted, so an unknown app ID performing large data queries was a red flag.

REST API Query Spike 


In Salesforce’s Event Monitoring RestApi logs, Mitiga observed an extreme outlier in data query behavior. Over a short period, the compromised user 005Kd000006mU2MIAU performed hundreds of GET requests to the REST API endpoint /services/data/v62.0/query (Salesforce API version 62, SOQL query resource). Each request targeted the Contact object, visible in the log as ENTITY_NAME:CONTACTS, and succeeded with a 200 OK status. The response sizes for these queries were consistently around 2,380,000 bytes (~2.3 MB) —each multiple thousands of requests—indicating a large volume of data.

Burst Patterns and Multiple IPs


The timeline in the logs showed the queries came in bursts of approximately 200 calls in ~10 minutes from one source IP, then a new burst from a different source IP address, atypical to the victim’s network (e.g., AS27284 Fourplex Telecom LLC, AS214503 QuxLabs AB, AS53667 PONYNET). These ASN’s and IP addresses are known for Tor exit nodes or VPN egress points. In total, at least eight distinct IP addresses were seen, matching the pattern of the threat actor rotating through anonymization services.

“User Agent” and Tool Fingerprint


Interestingly, the logs had a field for USER_AGENT which in this case was set to a numeric or blank value ("USER_AGENT":"9999" was observed). This is basically an unknown UA (classified by Salesforce). Combined with the CONNECTED_APP_ID, it painted a picture of a potentially automated data extraction at work rather than any standard user activity.

Event-Derived Alerts

Mitiga’s detection platform raised an alert after observing: 

"221 mid-sized GET requests from 'Contact' by user '005Kd000006mU2MIAU' 
in 10 min indicate a potential data exfiltration." 

This triggered based on an Indicator of Attack (IOA) pattern we’d developed for high-volume API queries from single users. By defining a threshold (e.g., more than 30 API queries returning small packets of data), we can catch the behavior of bulk data theft. Salesforce Shield’s Threat Detection events and Transaction Security Policies can similarly be configured to flag or block anomalous data downloads (for example, unusually large report exports or API calls) from salesforce.com.

Detection and Mitigation Strategies

This breach did not rely on malware or brute-force tactics. The threat actor used trusted Salesforce functionality: a connected app authorized by a user and authenticated API queries that operated within standard platform limits.

After authorization, they extracted nearly four million records through automated queries that resembled typical administrative activity. This method exposes a gap in many SaaS security models, where actions appear legitimate unless viewed in a broader behavioral context.

Here are several steps that could help detect and prevent similar attacks in the future:

  • Restrict and Monitor Connected Apps
  • Review which users can authorize new connected apps
  • Limit “Manage Connected Apps” or “Customize Application” permissions to a small number of admins. 
  • Use App Allowlisting in Salesforce to whitelist known good applications and block unapproved ones.
  • Employee Security Training (Social Engineering) 
    • Since the initial entry vector was a vishing phone call, reinforce security awareness training for all staff. 
    • Train staff to verify any unsolicited IT support calls – for instance, by independently contacting their real IT department. 
    • Emphasize that they should never be asked to install software or provide authentication codes via a phone call without validation. 
    • Conduct periodic simulated phishing/vishing exercises to keep awareness high. In this case, the attacker’s ask, entering an 8-digit code on a Salesforce page – should have raised suspicions. Encouraging a culture of “trust but verify” can prevent that crucial lapse.
  • Threat Hunting and Anomaly Detection
    • Even with preventive measures, assume a breach can happen. Proactively hunt for signs of data exfiltration. 
    • For example, look at your Salesforce logs for patterns, including but not limited to:
      • A single user performing a high volume of queries, especially if from atypical IPs or at odd hours
      • Large report exports or CSV downloads
      • Multiple login attempts from new locations
    • Leverage tools that analyze cloud logs using machine learning, which can flag anomalies that deviate from normal user behavior. 

Conclusion

The Salesforce Data Loader abuse case highlights a troubling trend: threat actors are directly targeting high-value data in cloud services by exploiting human trust and built-in tools. By masquerading as IT support and getting a malicious app authorized, the threat actors bypassed traditional perimeter defenses and operated with the permissions of a legitimate user – essentially hiding in plain sight.

Mitiga’s Threat Hunting/IR team was able to identify and stop this breach by correlating subtle indicators, like unusual API calls and Tor/VPN IP usage, and by tracking emerging threats such as UNC6040. Salesforce has since issued guidance to customers on protecting against these social engineering tactics and emphasizing the shared responsibility model for cloud security.

With the right controls in place, organizations can significantly reduce the risk of falling victim to such well-known attacks. The case of the fake Data Loader and slow exfiltration reminds us that even trusted tools can be weaponized when threat actors find a way in – but with preparedness and quick response, the damage can be contained.

Hunting Leads

Network IOCs:

AS27284 (FOURPLEX-ASN)
AS214503 (QuxLabs AB)
AS210558, (1337 Services GmbH)
AS53667 (PONYNET)
AS58087 (Florian Kolb)
AS51852 (Private Layer INC)
AS200195 (Verasel, Inc.)
AS60729 (Stiftung Erneuerbare Freiheit)

User and Entity Behavior (UEBA)

  • Fragment data exfil e.g. 2,300,000 bytes + each packets
  • Unrecognized User Agent as Categorized by SalesForce: 9999


Sigma Rule:

title: Salesforce Mid-Sized Chunk Exfiltration via GET Requests 
status: experimental 
description: Detects potential data exfiltration in Salesforce by identifying multiple mid-sized successful GET requests to the query API endpoint within a short time window. 
logsource:
 product: salesforce 
 service: restapi 
 category: application 
detection: 
 selection: 
   EVENT_TYPE: "RestApi" 
   METHOD: "GET" 
   STATUS_CODE: "200" 
   URI|re: '^/services/data/v\d+.\d+/query$' 
 size_filter: 
   RESPONSE_SIZE|gte: 1200000 
   RESPONSE_SIZE|lte: 6400000 
  timeframe: 10m 
  condition: selection and size_filter | count(USER_ID_DERIVED) >= 30 
fields:
 -USER_ID_DERIVED
 -ENTITY_NAME
 -RESPONSE_SIZE
 -URI
 -ORGANIZATION_ID
 -TIMESTAMP_DERIVED
 -STATUS_CODE
 -METHOD 
falsepositives:
 -Large volume legitimate downloads by integration or sync apps
 -Bulk exports triggered by scheduled jobs 
level: medium 
tags:
 -attack.exfiltration
 -detection.salesforce
 -technique.T1030

LAST UPDATED:

August 11, 2025

Don't miss these stories:

Why Visibility Drives Everything in Modern Cybersecurity with Sevco’s Greg Fitzgerald

In this episode of Mitiga Mic, Brian Contos sits down with Greg Fitzgerald, co-founder of Sevco Security, for a candid conversation on the real state of asset visibility, prioritization, and the evolving challenges facing security teams. With nearly three decades in the industry, Fitzgerald brings perspective on how cybersecurity has shifted from endpoint tools to orchestration-wide awareness. And why that shift is critical for cloud, SaaS, AI, and identity defense. Watch the episode or read the full transcript below.

God-Mode in the Shadows: When Security Tools and Excessive Permissions Become Cloud Security Risks

By the time the alarms go off, it’s often too late. A trusted third-party security tool, one that promised to protect your cloud and SaaS environments, has been operating with unchecked ‘god-mode’ privileges. These tools, usually classified as SaaS Security Posture Management (SSPM) or Data Security Posture Management (DSPM), have been granted near-unrestricted access to your data, configurations, and secrets.

How AI Is Transforming Cybersecurity: Detection, Response & Threat Evolution with Mitiga’s Ofer Maor

In this episode of Mitiga Mic, Brian Contos, Field CISO at Mitiga, sits down once again with Ofer Maor, CTO and Co-founder, to break down one of today’s most urgent cybersecurity challenges: the intersection of Artificial Intelligence (AI) and Detection & Response. From the Automated SOC to AI-powered attackers and cloud-based AI infrastructure threats, Ofer outlines the three pillars of AI-DR (AI Detection and Response) and what organizations need to know now and in the near future.

Meet Mitiga in Las Vegas at Black Hat, DEF CON, and BSides

From August 4 to 11, Mitiga will be on the ground in Las Vegas for Black Hat USA, DEF CON, and BSides Las Vegas. If you’re responsible for cloud security, SaaS threat detection, or incident response, this is your opportunity to connect directly with our team.

Why Wi-Fi Isn’t Enough: Joseph Salazar on Wireless Airspace Security

In this episode of Mitiga Mic, we sit down with cybersecurity veteran Joseph Salazar, now with Bastille Networks, to uncover the vast and often invisible world of wireless attack surfaces. From Bluetooth-enabled coffee mugs and smart thermostats to malicious USB cables that launch attacks from parking lots, Joseph walks us through real-world threats that operate outside your firewall and beyond traditional security tools.

From Breach Response to Platform Powerhouse: Ofer Maor on Building Mitiga for Cloud, SaaS, and Identity Security

Solutions Platform Helios AI Cloud Security Data Lake Cloud Threat Detection Investigation and Response Readiness (TDIR) Cloud Detection and Response (CDR) Cloud Investigation and Response Automation (CIRA) Investigation Workbench Managed Services Managed Cloud Detection and Response (C-MDR) Cloud Managed Threat Hunting Cloud and SaaS Incident Response Resources Blog Mitiga Labs Resource Library Incident Response Glossary Company About Us Team Careers Contact Us In the News Home » Blog Main BLOG From Breach Response to Platform Powerhouse: Ofer Maor on Building Mitiga for Cloud, SaaS, and Identity Security In this premiere episode of Mitiga Mic, Mitiga’s Co-founder and CTO Ofer Maor joins host Brian Contos to share the journey behind Mitiga’s creation—and how it became the first purpose-built platform for cloud, SaaS, and identity detection and response. Ofer discusses why traditional incident response falls short in modern environments, how Mitiga built its platform from real-world service experience, and the crucial role of automation and AI in modern SOC operations.