SPADE: Side-channel Platform Abuse & Data Exfiltration

Sep 10, 2025 min read

Hero image generated by ChatGPT

This is a personal blog and all content herein is my own opinion and not that of my employer.


Enjoying the content? If you value the time, effort, and resources invested in creating it, please consider supporting me on Ko-fi.

Support me on Ko-fi

Introduction

Over the past few years, enterprises have dramatically expanded their use of SaaS platforms, cloud-native runtimes, and browser-based IDEs. This has brought incredible flexibility – but also new attack surfaces that legacy tooling struggles to monitor or control.

SPADE - Side-channel Platform Abuse & Data Exfiltration - is a term I’m proposing to describe a novel class of attacker techniques that take advantage of trusted SaaS-hosted compute environments (like Google Colab, make.com, or online IDEs) to perform stealthy, difficult-to-detect data exfiltration or abuse.

This isn’t a bug or a misconfiguration in one vendor’s product. It’s an architectural blind spot - a way to weaponize “everything works by design” against organizations even with the latest and greatest enterprise security controls.

And yes - it works. I’ve tested it. With test data. Multiple ways. With multiple SaaS services. And the endpoint controls? Mostly silent.


What Is SPADE?

SPADE techniques rely on one foundational idea:

🎯 If an attacker can get access to a trusted SaaS platform that lets them execute code or trigger workflows, they can use that platform as a proxy to exfiltrate or manipulate data – outside the reach of local agents and proxies.


Example: Google Colab

Google Colaboratory, or Google Colab for short, is a free, cloud-based Jupyter Notebook environment provided by Google. It allows users to write and execute Python code through the browser, especially suited for machine learning, data analysis, and education. Google Colab provides an online integrated development environment for Python that requires no setup and runs entirely in the cloud.

Although it saves notebooks to Google Drive and imports from Drive, you might think that disabling Drive would prevent its usage but I could still:

  • Authenticate
  • Open example notebooks (even if Drive was off)
  • Paste test data directly into code cells
  • Use Python requests to commit that data to a private GitHub repo

💥 Result? The data left the environment via Colab’s runtime, not the local browser.

Not a single security tool observed far less blocked it!

I even watched the browser’s DevTools:

  • POSTs to colab.research.google.com
  • Background fetches from colab.dev infrastructure (e.g., not your compute or your prefered data region)
  • No file upload or clipboard activity detected by SASE or EDR

Even GitHub commits - normally blocked by policy - succeeded.
Because the Colab VM was the one doing the commit. Not me.

If you use the Enterprise version of Colab, you can have more control over the runtime execution including disabling public internet access: https://cloud.google.com/colab/docs/runtimes

With enterprise you can also create some organisation policies: https://cloud.google.com/colab/docs/custom-constraints

This also allows you to use compute that you control e.g. within your own Google Cloud organisation.

However, the free version of Colab is enabled by default in all Google tenants - even if you think you only use Google Cloud, there is an associated workspace instance that any directory account (local or federated from another Identity Provider) can access if you haven’t turned Colab off (this is true of many google workspace apps).


Key Characteristics of SPADE Techniques

CharacteristicDescription
Platform-native executionCode runs inside trusted SaaS compute (e.g., Jupyter, Python, flows)
API-based exfiltrationData siphoned via approved/trusted API domains (e.g., GitHub, S3)
Tenant obfuscationOperations occur in cloud runtimes with opaque tenancy boundaries
Control evasionEDR, CASB, and SWG controls see only trusted destinations and traffic
Browser artifact evasionNo clipboard, no drag/drop, no file upload - often just keyboard input

Example TTPs (Tactics, Techniques, Procedures)

PhaseTechnique
Initial AccessReuse of corporate SaaS credentials (e.g., via OAuth SSO to Colab, make.com, etc)
ExecutionPython code, API keys, curl/wget inside notebook/flow runners
ExfiltrationUse of API calls (e.g., GitHub, AWS S3, Webhooks) to push data
Defense EvasionRuns from remote cloud infra, no logs on endpoint
Command & ControlRemote callbacks or script triggers via cloud function scheduling

Why This Works

Because SaaS runtimes are trusted.
They’re not your users’ laptops. They don’t have your endpoint agents installed.
They operate from Google’s IP ranges, or AWS, or Microsoft.

If your tooling is scoped to:

  • “traffic from managed devices”
  • “browsers controlled by endpoint agents”
  • “uploads via corporate network”

…you’ve already lost the plot.


Relevant MITRE ATT&CK Techniques

SPADE aligns with and likely extends the following ATT&CK entries:

  • T1567.002 – Exfiltration to Cloud Storage
  • T1567.001 – Exfiltration to Code Repository
  • T1553.xxx – New Sub-Technique? (Abuse of Trusted Cloud Execution Runtimes)
  • T1648 – Serverless Execution Environment (Colab, make.com, JupyterHub)

This technique blurs the lines between exfiltration, command & control, and execution.

It doesn’t just exfiltrate – it executes on trusted SaaS compute.

TechniqueFocusSPADE Fit
T1648Where the execution happens✅ Serverless (Colab, Replit, etc.)
T1553Why it evades controls✅ Abuses trusted SaaS environments
T1567Where the data is exfiltrated✅ GitHub, GCS, etc. via trusted APIs

Together, they frame a 3D model of the attack path:

  • Execution origin (T1648)
  • Control bypass (T1553)
  • Exfiltration vector (T1567)

Other Platforms At Risk

Any platform that supports remote code execution, API-based workflows, or cloud-based runtimes could be abused in a similar way:

PlatformRisk Description
Google ColabJupyter notebooks with internet access and GitHub integration
make.comWorkflow orchestration with webhook input/output, token auth
Labs.iximiuz.comOnline containers with public IP and shell access
KASM WorkspacesStreamed desktop/browser with clipboard + network access
Online IDEs (e.g. Replit, Glitch)Persistent storage + Git + webhooks + exec
ANY.RUN, Joe Sandbox, etcMalware sandboxes with potential abuse of callback channels

These tools are designed to be programmable, convenient, and networked.
And they often live outside your enterprise monitoring perimeter.


Detection and Mitigation Ideas

Detection

MethodDescription
Runtime-aware loggingEnable session recording, IP detection, notebook usage monitoring in SaaS
API traffic profilingMonitor outbound calls from SaaS tenants to unusual external domains
Behavioral analyticsFlag unusual clipboard activity, long paste bursts, or large code payloads
Anomaly detectionLook for SaaS runtimes making commits, uploads, or API calls not typical of the org

Mitigation

ControlImpact
CASB (Clipboard + Upload Control)Can block paste/file uploads into untrusted SaaS IDEs
Policy Hardening (SaaS Restrictions)Restrict access to SaaS runtimes to approved user groups only
Privileged Access WorkstationsOnly allow services such as those mentioned within environments where access to sensitive data is restricted.

CASB: A Partial Hero

While CASB tools can’t prevent remote runtime execution once the notebook or sandbox is running, they can block how data gets into the notebook/sandbox in the first place.

  • Blocking clipboard paste
  • Blocking file uploads
  • Blocking browser extensions or copy/paste shortcuts

Combined with app detection and isolation policies, CASB becomes a partial but powerful control layer.


Variants and Naming Options

Originally dubbed SPADE, I’ve also toyed with:

  • ALIENAbuse of Legitimate Integration ENgines

But SPADE feels right. Because you’re not digging a tunnel - you’re flipping the dirt over the fence using SaaS shovels.


Tying Into LOTS and Compliance frameworks

The LOTS project aims to catalogue “Living Off Trusted Sites” abuses - this technique fits right in.

And if you’re applying Compliance frameworks such as CIS or SCuBA (Secure Cloud Business Applications) guidance, ask yourself:

  • Does it fully account for execution inside SaaS-hosted runtimes?
  • Are your coverage gaps visible to you today?
  • Where does Colab, make.com, or KASM fall in your sanctioned app posture?

Because if it’s not in your policy, and it’s not in your logs, it might be in your breach.


Mapping it out

I’ve added mind maps for this to my GitHub Repository:

KuShu-Atama/
├── artifacts/                   # Exported visualizations (PDF/PNG)
│   ├── SPADE_MindMap_v1.pdf
│   └── SPADE_MindMap_v1.png
├── src/                         # Source mind maps
│   ├── SPADE_MindMap_v1.mm
│   └── SPADE_MindMap_v1.smmx

Who doesn’t love a demo?

I have now recorded a video demo of abusing Colab and Iximiuz Labs:


Final Thoughts

This isn’t just about Colab. Or GitHub. Or test data.

It’s about a whole class of trusted compute surfaces that live in SaaS -

  • where enterprise visibility fades, and attacker opportunity blooms.

SPADE is one more reminder that trust boundaries are dynamic. And our tooling? Often too static.

If we want to make modern enterprise cloud environments safer, we need to account for SaaS-native runtime abuse - before attackers do.

comments powered by Disqus