Cloudflare and Akamai — security research summary
TL;DR: Cloudflare and Akamai sit on the trust boundary for a huge fraction of the public web. They are simultaneously defenders (WAF, DDoS scrubbing, bot management) and platforms (Workers, R2, D1, EdgeWorkers, Image Manager) that introduce new attack surface. Researching them well means treating them as targets and as components: study their bug-bounty scopes, their own incident history (Cloudbleed, Akamai 2021/2022 outages), and bypass research that targets their WAFs and origin protections. Companion to cdn-trust-chain-bypass, waf-bypass-research-deep, cloudflare-workers-audit, and cloudflare-tenant-attacks.
Why it matters
Cloudflare and Akamai are not just CDNs. They are the policy enforcement point in front of millions of origins, and they also host code via Workers and EdgeWorkers. That means a single vulnerability or misconfiguration can have systemic impact, similar in spirit to case-study-solarwinds-2020 or case-study-3cx-supply-chain but at network plumbing scale.
For an offensive researcher this matters in three ways:
- A platform-level finding (Worker isolate escape, EdgeWorker sandbox flaw, control-plane auth bug) cascades to every tenant.
- A bypass of the edge (WAF, bot, origin protection) reduces every customer’s effective defence in depth back to whatever the origin shipped, which is rarely much.
- The edge is also a detection blind spot: if logs only exist at the edge and not at the origin, a smuggling or cache trick can be invisible to defenders downstream. Tie this back into detection-engineering-pyramid-of-pain and siem-detection-use-case-catalog.
For a defender, picking and configuring one of these vendors is one of the highest-leverage security decisions a web property makes.
Platform attack surface
Cloudflare Workers, Durable Objects, R2, D1
Cloudflare Workers run JavaScript and WebAssembly on V8 isolates rather than full containers, with a strict CPU and memory budget per request. Research angles include:
- Isolate boundary: V8 sandbox escapes apply, but Cloudflare also constrains APIs (no raw filesystem, no arbitrary sockets unless granted). Researching the runtime means reading the
workerdopen source code and the bindings exposed to scripts. - Bindings and secrets: KV, R2, D1, Queues, Durable Objects, and service bindings let one Worker talk to another. Misconfigured service bindings can become privilege escalation within a tenant. See cloudflare-workers-audit.
- R2 (object storage) presigned URLs and bucket policies mirror the S3 attack surface; treat them like any other object store and look for public listing, predictable keys, and overly broad CORS.
- D1 (SQLite at the edge) inherits classic SQLi if developers concatenate query strings; the surface is small but real.
- Tenant control plane: account API tokens, Workers for Platforms dispatch namespaces, and the dashboard itself. Cross-tenant or dispatch-namespace abuse is covered in cloudflare-tenant-attacks.
Akamai EdgeWorkers and EdgeKV
EdgeWorkers run JavaScript at Akamai PoPs with a similarly constrained runtime, plus EdgeKV for key-value storage. Research angles:
- Strict CPU and wall-clock budgets push developers to write terse code, which often hides input validation bugs.
- Property Manager rules and EdgeWorker bundles are deployed together; an attacker who can influence a CI pipeline pushing those bundles has effectively rewritten the WAF for that property. Tie into supply-chain thinking from case-study-3cx-supply-chain.
- EdgeKV access tokens, like Cloudflare Worker secrets, often end up in repos. Same hygiene rules as any cloud credential.
Image, video, and transform pipelines
Both vendors run image and video transform services (Cloudflare Images, Akamai Image and Video Manager). These have historically been fertile ground for SSRF, parser bugs, and path traversal because they fetch user-controlled URLs and run image libraries. Cross-link with ssrf.
Edge as defender: WAF, DDoS, bot management
WAF and rule engines
Cloudflare’s Managed Rules (and the older OWASP rule set) and Akamai’s Kona Site Defender plus Adaptive Security Engine are the de facto WAF layer for a large fraction of the web. Bypass research that matters:
- Protocol-level smuggling and desync that change which body the WAF inspects versus what the origin executes. See http-request-smuggling and http-smuggling-modern-variants.
- Encoding tricks (charset, gzip with malformed trailers, chunked-with-trailer headers) where the edge parses one way and the origin parses another. Companion to waf-bypass and waf-bypass-advanced-techniques.
- Cache key confusion that turns the WAF into a poisoning helper. See cache-poisoning and cache-poisoning-modern-chains.
- Direct-to-origin discovery (Censys, certificate transparency, SPF, historical DNS, misconfigured mail records) that lets attackers skip the WAF entirely. Covered in depth in cdn-trust-chain-bypass and domain-fronting-and-cdn-abuse.
DDoS posture
Both vendors regularly publish DDoS trend reports. From a research perspective:
- Cloudflare has reported HTTP/2 Rapid Reset (CVE-2023-44487) at extreme volumes; Akamai and Google reported the same protocol class. The interesting research angle is protocol-level amplification, not raw bps numbers.
- Layer-7 DDoS now blurs with credential stuffing and scraping, which is why bot management has grown so much.
- For defenders, the DDoS posture is usually fine; the failure mode is the origin not enforcing edge-only ingress, so a botnet that finds the origin IP makes the edge irrelevant.
Bot management
Cloudflare Bot Management, Turnstile, and Akamai Bot Manager all rely on a mix of TLS fingerprinting (JA3/JA4), HTTP/2 fingerprinting (Akamai’s H2 fingerprint), client-side challenges, and behavioural signals. Bypass research includes curl-impersonate, undetected-chromedriver, and headless browser farms. Knowing what these fingerprints actually check is also useful defensively.
Own-incident history
Treating the edge providers as targets means reading their incident history honestly.
Cloudbleed (2017)
A buffer over-read in Cloudflare’s HTML parser (originally cf-html, derived from Ragel) leaked memory from one request into the response of another, across tenants. Initially scoped narrowly; ultimately required mass token rotation. Lessons:
- A single parser bug in a multi-tenant edge equals universal data exposure.
- Out-of-bounds reads in C parsers are still a thing; modern equivalents would be in Rust panics or unsafe blocks, or in workerd’s C++ paths.
Cloudflare outages
Public post-mortems include the 2019 regex catastrophic backtracking incident and the 2020 BGP misconfiguration. They are required reading: Cloudflare’s post-mortems are blameless and technical, and they show how a single config push can take down a huge slice of the public internet. Reliability incidents are also security incidents when they fail open or when failover takes properties offline that depend on edge auth.
Akamai outages (2021, 2022)
Akamai had high-profile outages in 2021 (Edge DNS configuration push) and again in 2022, taking down banks and airlines for hours. The security relevance is the systemic risk of single-vendor edge dependency. For risk-modelling work this matters more than it sounds.
BGP and routing incidents
Both vendors have been involved in BGP incidents (sometimes as victims of hijacks, sometimes as the path through which others hijacked). See bgp-hijack-attacks.
Bypass research that targets them
A non-exhaustive class list to study and reproduce in a lab:
- Origin discovery via certificate transparency, historical DNS, mail records, and IPv6 leakage. See cdn-trust-chain-bypass.
- WAF rule probing: send corpus payloads through Cloudflare and Akamai and diff which signatures fire. Repeat after each managed-rule update.
- Smuggling and desync against specific edge versions; treat each major release like a one-day-from-patch-diff candidate.
- Cache key manipulation (header injection, parameter pollution, encoded path tricks) leading to cache poisoning or deception. See cache-deception.
- Bot management bypass with TLS and H2 fingerprint impersonation, plus behavioural mimicry; this is its own subfield now.
Bug-bounty programs
Both vendors run programs that are worth reading and engaging with:
- Cloudflare runs a HackerOne program with a defined scope covering the dashboard, API, Workers runtime, and edge behaviour. Out-of-scope items are explicit (volumetric DDoS, social engineering of staff, etc.).
- Akamai runs a program via HackerOne with scope covering corporate properties and certain product surfaces; EdgeWorkers and control plane have been added over time.
For both, the highest-paying bugs historically have been control-plane auth issues, tenant-isolation breaks, and edge-platform sandbox escapes. Cross-reference ctf-to-bug-bounty-transition and h1-disclosed-report-reading-method for how to mine their disclosed reports.
Defensive baseline
If you operate behind Cloudflare or Akamai:
- Lock origin ingress to the vendor’s IP ranges plus an authenticated tunnel (Cloudflare Tunnel, Akamai Site Shield). Do not allow direct internet hits.
- Enforce mTLS or signed-request headers between edge and origin so that an origin-discovery bypass does not equal full access.
- Mirror edge logs to your own SIEM; do not rely solely on the vendor dashboard.
- Treat Workers and EdgeWorkers as production code: code review, secret scanning, and dependency review apply. See cloudflare-workers-audit.
- Have a documented failover for vendor outage; the 2021 Akamai and 2022 Cloudflare events made the cost of single-vendor dependency very tangible.
- Test WAF rules with a small attack corpus per release; rules drift and bypasses appear. Reuse the workflow in testing-methodology-checklists.
Workflow to study
- Read each vendor’s public docs end-to-end for one product surface (start with Workers or EdgeWorkers).
- Replicate one published research piece (e.g. a smuggling primitive or an origin-discovery bypass) in a lab. Lab guidance lives in building-a-research-home-lab.
- Pull the last two years of their engineering blog and post-mortems. Note recurring failure modes.
- Re-read both bug-bounty scopes and pick one target surface; track it via keeping-up-with-research-feeds.
- Diff one managed-rule release against the previous version; map signatures to known CVEs.
- Write up findings using report-writing-step-by-step and demonstrate impact per demonstrating-impact.
Related
- cdn-trust-chain-bypass
- waf-bypass
- waf-bypass-advanced-techniques
- cloudflare-workers-audit
- cloudflare-tenant-attacks
- vercel-edge-and-middleware-audit
- domain-fronting-and-cdn-abuse
- http-request-smuggling
- http-smuggling-modern-variants
- cache-poisoning
- cache-poisoning-modern-chains
- cache-deception
- ssrf
- bgp-hijack-attacks
- keeping-up-with-research-feeds
References
- Cloudflare engineering blog and incident post-mortems: https://blog.cloudflare.com/
- Cloudflare Workers runtime (workerd) source: https://github.com/cloudflare/workerd
- Cloudbleed disclosure post: https://blog.cloudflare.com/incident-report-on-memory-leak-caused-by-cloudflare-parser-bug/
- Akamai security research and threat reports: https://www.akamai.com/security-research
- HTTP/2 Rapid Reset coordinated disclosure (CVE-2023-44487): https://blog.cloudflare.com/technical-breakdown-http2-rapid-reset-ddos-attack/
- HackerOne Cloudflare program: https://hackerone.com/cloudflare