“`html

A complex supply chain assault has allegedly breached data across numerous organizations, connecting the incident to a significant integration between the customer success platform Gainsight and the CRM powerhouse Salesforce.

The infamous hacking group ShinyHunters claims to be accountable for the breach, which reportedly impacts more than 200 firms. Rather than compromising Salesforce directly, the attack exploited the trusted link created through third-party applications.

On November 20, 2025, Salesforce took urgent measures to mitigate the danger. The firm officially terminated the link between Gainsight-published applications and the Salesforce network after noticing “suspicious activity.”

According to a comment from Salesforce, their probe indicates that the activity allowed unauthorized access to customer data, specifically through the app’s external link.

Utilizing Trusted OAuth Tokens

The dynamics of this operation underscore an increasing trend in contemporary cyber conflict: focusing on the “keys” instead of the “locks.”

The Google Threat Intelligence Group (GTIG), featuring researchers from Mandiant, recognized the threat actors as associates of ShinyHunters. These adversaries compromised third-party OAuth tokens.


google

Within the SaaS landscape, OAuth tokens operate like digital permission slips, enabling applications such as Gainsight to communicate with Salesforce without necessitating a user to log in repeatedly.

By acquiring these tokens, the attackers could potentially sidestep multi-factor authentication and regular login safeguards, posing as the trusted application to exfiltrate sensitive corporate data. This tactic enables threat actors to maneuver laterally in cloud environments while evading detection by traditional perimeter defenses.

While the extent of the data loss may be enormous, Salesforce has clearly articulated its position regarding the source of the fault. The company stressed that there is “no evidence that this issue stemmed from any vulnerability within the Salesforce platform.” Instead, the breach is solely connected to the external linkage and the management of credentials for the Gainsight integration.

At present, customers are unable to link their Gainsight-published applications to Salesforce until further notice. Both Salesforce and Mandiant are actively alerting organizations that exhibit signs of compromise.

This occurrence reflects similar campaigns observed recently, including efforts targeting Salesloft Drift, hinting at a coordinated initiative by threat groups to scrutinize and exploit SaaS ecosystems where third-party permissions are frequently granted and neglected.

Immediate Actions for SaaS Administrators

This incident acts as a crucial wake-up call for enterprises relying on interconnected SaaS systems. Security teams are encouraged to promptly treat this as an indicator to thoroughly audit their entire cloud framework.

The primary advice is to review all linked applications within Salesforce instances and revoke OAuth tokens for any integrations deemed unused, suspicious, or associated with the compromised Gainsight applications.

Organizations using Gainsight integrations should watch for official updates from both vendors, Salesforce and Gainsight.

However, a proactive stance is essential. If any irregular activity is detected from an integration, administrators should immediately change credentials and assume a possible compromise.

As threat actors increasingly shift toward identity-based attacks and token theft, managing third-party permissions has become as critical as applying patches to software vulnerabilities.

Below is the table of Indicators of Compromise (IoCs) linked to the ShinyHunters campaign targeting Salesforce and Gainsight integrations.

IOC Type Value First Seen (UTC) Last Seen (UTC) Observed Activity
IP Address 104.3.11[.]1 2025-11-08 13:11:29 2025-11-08 13:15:23 AT&T IP; reconnaissance and unauthorized access. ​
IP Address 198.54.135[.]148 2025-11-16 21:48:03 2025-11-16 21:48:03 Mullvad VPN proxy IP; reconnaissance and unauthorized access. ​
IP Address 198.54.135[.]197 2025-11-16 22:00:56 2025-11-16 22:06:57 Mullvad VPN proxy IP; reconnaissance and unauthorized access. ​
IP Address 198.54.135[.]205 2025-11-18 10:43:55 2025-11-18 12:09:35 Mullvad VPN proxy IP; reconnaissance and unauthorized access. obsi
IP Address 146.70.171[.]216 2025-11-18 20:21:48 2025-11-18 20:50:13 Mullvad VPN proxy IP; reconnaissance and unauthorized access. ​
IP Address 169.150.203[.]245 2025-11-18 20:54:02 2025-11-18 23:04:12 Surfshark VPN proxy IP; reconnaissance and unauthorized access. ​
IP Address 172.113.237[.]48 2025-11-18 21:23:29 2025-11-18 21:51:32 NSocks VPN proxy IP; reconnaissance and unauthorized access. ​
IP Address 45.149.173[.]227 2025-11-18 22:05:15 2025-11-18 22:05:18 Surfshark VPN proxy IP; reconnaissance and unauthorized access. ​
IP Address 135.134.96[.]76 2025-11-19 08:26:18 2025-11-19 10:30:37 IProxyShop VPN proxy IP; reconnaissance and unauthorized access. ​
IP Address 65.195.111[.]21 2025-11-19 10:57:37 2025-11-19 10:59:19 IProxyShop VPN proxy IP; reconnaissance and unauthorized access. ​
IP Address 65.195.105[.]81 2025-11-19 11:17:51 2025-11-19 11:48:07 Nexx VPN proxy IP; reconnaissance and unauthorized access. ​
“““html
IP Address
65.195.105[.]153 2025-11-19 12:23:17 2025-11-19 12:23:35 ProxySeller VPN proxy IP; surveillance and unauthorized entry. ​
IP Address 45.66.35[.]35 2025-11-19 12:47:43 2025-11-19 12:47:45 Tor VPN proxy IP; surveillance and unauthorized entry. ​
IP Address 146.70.174[.]69 2025-11-19 12:47:49 2025-11-19 12:47:49 Proton VPN proxy IP; surveillance and unauthorized entry. ​
IP Address 82.163.174[.]83 2025-11-19 14:30:36 2025-11-19 22:26:46 ProxySeller VPN proxy IP; surveillance and unauthorized entry. ​
IP Address 3.239.45[.]43 2025-10-23 00:17:22 2025-10-23 00:45:36 AWS IP; surveillance against clients with compromised Gainsight access token. ​
User Agent python-requests/2.28[.]1 2025-11-08 13:11:19 2025-11-08 13:15:01 Not an anticipated user agent string utilized by Gainsight connected app; use alongside other IOCs shared. ​
User Agent python-requests/2.32[.]3 2025-11-16 21:48:03 2025-11-16 21:48:03 Not an anticipated user agent string utilized by Gainsight connected app; use alongside other IOCs shared. ​
User Agent python/3.11 aiohttp/3.13[.]1 2025-10-23 00:00:00 2025-10-23 00:01:00 Not an anticipated user agent string utilized by Gainsight connected app; use alongside other IOCs shared. ​
User Agent Salesforce-Multi-Org-Fetcher/1.0 2025-11-18 22:05:13 2025-11-19 22:24:01 Exploited by threat actor for unauthorized access; also seen in Salesloft Drift activity. ​

“`