Company Historically Provides H1B Sponsorship
Cloudflare operates a network that protects websites, delivers online content and runs applications closer to their users. Businesses connect websites and internal systems to its services to filter malicious traffic, control access and improve performance, with security and computing running on shared infrastructure. Developers combine application code, object storage and databases with the network used for content delivery and traffic protection. Cloudflare earns revenue from subscriptions and usage charges, with free plans for basic features and negotiated contracts for larger organizations. Cloudflare was founded in 2009 and is headquartered in San Francisco, California.
Work here?Claim your company
Industries
Company Size
1,001-5,000
Company Stage
IPO
Headquarters
San Francisco, CA
Founded
2009
See people who can refer or advise you
Help us improve and share your feedback! Did you find this helpful?
Total Funding
$5.4B
Above
Industry Average
Funded Over
9 Rounds
Cloudflare's GLM-5.3 leak: vendor risk in shared AI inference. On October 26, Cloudflare disclosed that 155 responses from its GLM-5.3 model on Workers AI contained data from other customers' requests. If your team sends sensitive prompts to a shared inference service, this incident is a useful test of how you assess AI vendor risk. The failure happened below the model, in GPU memory handling that no customer can see. The incident was small in count and narrow in trigger. It still shows that "multi-tenant" is a property of the runtime, which a contract clause cannot enforce. What Cloudflare says happened. According to Cloudflare's post, the exposure ran from August 27, 2026, the model's launch date, to September 9. All 155 affected responses were to prompts longer than 681,280 tokens, and they contained data from other customers' requests to the same model made shortly before. Cloudflare says no other Workers AI model was affected and that it found no evidence of deliberate exploitation. Security researcher Gadi Evron of Knostic reported it through Cloudflare's HackerOne program on September 8. Cloudflare declared an incident at 13:22 UTC on September 9, set the model to private at 14:00 UTC, and restored it at 19:40 UTC after rebuilding the deployment with a configuration fix and an engine patch. Two details are missing from the disclosure. The post does not say how many distinct customers were affected or what kinds of data were exposed, and it does not describe whether affected customers were notified. 155 counts responses, not customers. Treat any larger or smaller number you read elsewhere as unconfirmed. Two small problems that added up. The root cause was a combination of two issues, and neither looks dramatic alone. * Configuration: GLM-5.3 was deployed with a 1,048,576-token context window, but the prefill KV cache pool held only 681,280 tokens. Cloudflare knew about the mismatch before launch and expected the engine to return an error for oversized prompts. Its long-context tests returned successful responses, so it did not treat the gap as a problem. * Engine bug: in SGLang's disaggregated prefill/decode mode, a rejected over-length request was swapped for a one-token placeholder instead of being aborted. Prefill transferred KV pages to decode, and decode then attended over stale pages left by earlier requests. The client got HTTP 200, not an error. The second problem had been visible upstream for a while. Cloudflare notes that the bug was reported as SGLang issue #30233 on July 6, 2026, which describes aborted over-length prefill requests making decode generate garbage from incomplete KV cache. The issue was later closed by a bot for inactivity on September 5, four days before Cloudflare declared its incident. The fix has two parts. Cloudflare raised the prefill KV pool to about 2.04 million tokens, roughly twice the context length, and the engine now retires rejected requests at the admission queue before any KV transfer happens. Those engine fixes landed in SGLang v0.5.20 and v0.5.21, and Cloudflare recommends operators run v0.5.22 or later. Why a 200 OK is not a safety signal. The failure returned a normal response code. Nothing in the client logs would have flagged it, and the leaked content arrived inside an otherwise valid completion. As one write-up on DEV Community puts it, a clean HTTP status does not rule out leakage. That post also suggests a customer-side canary test: send a unique marker string, send unrelated requests from a fresh session, and scan the responses for the marker. Its own caveat matters, though: a clean run proves little, because this bug only appeared with prompts beyond the pool size. That caveat is the real lesson. You cannot black-box test your way to isolation assurance. AI Weekly raises the open question of whether other inference providers ran vulnerable builds, and nobody outside those providers can answer it today. The gap between policy and runtime. Cloudflare's Workers AI data usage documentation says inputs and outputs are Customer Content, that Cloudflare does not retain them for standard stateless inference once they are no longer needed, and that it does not make them available to other customers. That is the right commitment. The incident shows how a runtime defect can break it without any policy being changed or ignored. The OWASP Top 10 for LLM Applications entry on sensitive information disclosure lists this exact failure class as an example: a user receiving another user's data in a response. Its mitigations are mostly about sanitization, least-privilege access and published retention policies. It does not address tenant separation in the serving layer directly, which is where this incident happened. Your checklist needs to cover that part yourself. A due diligence checklist for shared inference. Cloudflare's own remediation list is a good template for what to ask any provider. Here is how it translates into vendor questions: * Capacity checks: does the provider verify that KV cache pool size is at least the advertised context length before a model goes live? Cloudflare now runs that check before deployment. * Failure behavior: what happens when a request exceeds limits? The right answer is an explicit error before any memory allocation or transfer, not a silent downgrade. * Corruption detection: is KV checksum or canary detection enabled in production? Cloudflare lists options such as -disaggregation-enable-kv-checksum and -kv-canary for SGLang where the model supports them. * Upstream tracking: how does the provider triage open bugs in the inference engines it runs? A July bug report matched a September incident. * Disclosure: will you be told which of your requests were affected, and on what timeline? This is the one question Cloudflare's post leaves unanswered. * Your own exposure: do you need to send full long-context documents to a shared endpoint at all, or can you redact, chunk or run that workload on dedicated capacity? If you run SGLang yourself in disaggregated mode, the same advice applies to you. Measure KV pool size against context length on every prefill and decode node after any relevant change, upgrade to v0.5.22 or later, and confirm corruption detection is actually active in the logs. What to do this week. Inventory which workloads send long prompts to shared inference endpoints, since those were the only ones exposed here. Check which providers and engine versions sit behind them. Then rank the data by what you could not accept appearing in a stranger's response, and decide whether that data belongs on shared capacity at all. Cloudflare deserves credit for publishing a detailed timeline, including the part where its own tests passed when they should have raised a flag. Most vendors will not give you that much detail, so ask for it before an incident, not after. If you want a second pair of eyes on how AI vendors fit into your architecture and risk review, talk to the Luby team.
Cloudflare's GLM 5.3 data exposure: how a KV cache mismatch leaked responses. Cloudflare disclosed 155 Workers AI responses exposed across customers through a GLM 5.3 cache misconfiguration and an SGLang bug. Root cause, timeline and lessons. Cloudflare disclosed on October 26, 2026 that a configuration mismatch in its Workers AI service, combined with a bug in the SGLang inference engine, caused some long-prompt requests to the GLM 5.3 model to receive another customer's data. The company identified 155 affected responses between August 27 and September 9 and found no evidence of deliberate exploitation. All details below come from Cloudflare's remediation post. What happened. An inference server keeps a key-value (KV) cache, the stored attention state for tokens already processed, so it does not recompute them. In a disaggregated setup, one set of nodes does the prefill (reading the prompt) and another does the decode (generating the answer), and the cache is transferred between them. Cloudflare launched GLM 5.3 on Workers AI on August 27 with a prefill KV pool of 681,280 tokens, smaller than the model's 1,048,576-token context window. The company says it knew of the mismatch before launch but did not treat it as a problem, because its long-context tests returned successful HTTP responses. Cache pool versus context window. Tokens. A prompt longer than the pool could not be held safely, but the context window allowed it. GLM 5.3 prefill KV pool at launch GLM 5.3 context window Prefill KV pool after fix (about) The launch pool held about 65% of the context window (681,280 / 1,048,576). The second ingredient: an engine bug. The mismatch alone should have produced rejections. Cloudflare says a bug in SGLang's disaggregated mode turned a rejection into a leak: an over-length request was marked rejected and replaced with a one-token placeholder instead of being aborted. The admission queues checked whether a request was finished, not whether it was rejected, so the request continued through KV transfer. The decode stage then attended over stale KV pages left by earlier requests, and the client received an HTTP 200 containing another user's data. Affected prompts were all longer than 681,280 tokens, and Cloudflare said the affected requests looked like ordinary long-context use. Timeline. | Date (UTC) | Event | | Aug 27 | GLM 5.3 launches with the smaller pool | | Sep 8, 23:11 | Researcher report received via HackerOne | | Sep 9, 13:22 | Incident declared and leak reproduced with two accounts | | Sep 9, 14:00 | Model set to private, returning HTTP 400 | | Sep 9, 14:52 | Prefill nodes rolled to corrected configuration | | Sep 9, 19:40 | Model restored to public | | Oct 2 and Oct 19 | SGLang v0.5.21 and v0.5.22 released | | Oct 26 | Coordinated publication | Remediation. Cloudflare matched the GLM 5.3 configuration to GLM 5.2, raising the prefill pool to about 2.04 million tokens, roughly twice the context length. It patched SGLang so requests with pending rejections are retired at the admission queue with their original error before any allocation or transfer, and validated both changes against the researcher's reproduction and internal canaries. Upstream fixes landed in SGLang v0.5.20, v0.5.21 and v0.5.22, with deferred KV release enabled by default, bounded transfer batches, and per-transfer checksums added for observability. Deployment checks now compare KV pool size against context length. Longer term, the company says it is developing page-level integrity tags in SGLang to detect reads of pages a request does not own, noting that an internal prototype cost under 1% in throughput and tail latency but was disabled for reliability reasons, and applying formal verification to its RDMA-based KV transfer protocol. What the incident teaches. * A 200 is not correctness. Success codes and throughput checks cannot detect a response that is well formed but wrong. Cloudflare names this as its own gap. * Two safe-looking components can combine unsafely. A known configuration mismatch and a rejection-path bug were each tolerable alone. * Shared inference needs isolation checks. Multi-tenant caches are a new class of boundary, similar in spirit to the cross-tenant risks discussed in its coverage of AI provider concentration. * Scope is narrow but real. 155 responses is small against total traffic, but the content of each is by definition someone else's data. For teams choosing where to run models, the practical question is what tests a provider runs on output integrity, not only availability. Metir supports several model providers, so an incident at one host does not have to halt a workflow. Sources: Header and in-body image: Cloudflare office entrance area by HaeB, Wikimedia Commons, CC BY-SA 4.0 (source).
Cloudflare's new tools help spot the hidden dangers in your vibe code. Cloudflare is tackling corporate security risks from AI-generated code with Void, a new open-source self-hosted platform designed to give non-technical workers guardrails while vibe-coding internal apps. Oct 28, 2026 With the assistance of code building agents, nearly anyone can vibe-code and launch an app. Sometimes that's great - as in the case of smart TV owners jailbreaking their TVs to escape ads and surveillance. But AI-generated code comes with hidden dangers. The Cloud Security Alliance found that 45 percent to 70 percent of AI-generated code fails security tests. From the report: The core problem is structural: large language models produce code by predicting plausible continuations of patterns from their training data. They do not reliably reason about threat models, do not consistently apply authorization logic across multi-role systems, and do not spontaneously anticipate how a given code path will interact with the rest of a system under adversarial conditions. Security controls that require explicit, system-wide intent - such as row-level database access policies, API authentication middleware, or cross-service authorization checks - are exactly the category where AI code generators perform worst. They are also the controls most likely to be invisible to developers who lack a security background and are relying on AI tools to handle implementation details. The consequences are real, and for companies, they can come in the form of legal problems, reputational damage, and monetary loss. So imagine what happens when these tools are unleashed on the workplace with the expectation that non-technical workers can vibe code their own apps. Oftentimes because everyone has access to these tools at a company, people can unintentionally bypass IT and forgo important data security and accessibility concerns. Cloudflare is offering a way to bring some security and structure to the vibes. Enter Void, a new set of open-source programs derived from VoidZero available to those on the Cloudflare Workers for Platforms plan. This Morning The daily digest for entrepreneurs and business leaders Featured Video This Founder Built a Better Business by Refusing to Work All the Time VoidZero acquisition. Cloudflare acquired VoidZero in June 2026 and officially released the open-source programs on October 15. "Since Void is open source, other companies can adjust the platform to their needs," Christoph Nakazawa, former product lead at VoidZero and now director of engineering at Cloudflare, said to The New Stack. "After the Cloudflare acquisition of VoidZero, we rebuilt the platform from the ground up to work as a self-hosted platform that anyone can install and self-host on Cloudflare," Michael Dong, a strategy lead at Cloudflare who came over from VoidZero told The New Stack. "Companies want to encourage vibe-coded internal apps, but are concerned about security and do not want to give cloud access to every employee," Cloudflare said. "Void addresses this problem."
Cloudflare AI leak crossed customer boundaries - and access controls couldn't stop it. Oct 28, 2026 Cloudflare's AI data leak highlights security risks that access controls alone cannot address in shared inference infrastructure. Image: Generated via Google's Nano Banana 2 eWeek content and product recommendations are editorially independent. eWEEK may make money when you click on links to its partners. Learn More Cloudflare's AI data leak exposed a weakness that user permissions alone could not prevent. Some authenticated customers received AI responses containing information from other customers' requests, without needing access to those customers' credentials. In an Oct. 26 disclosure, Cloudflare confirmed that 155 responses from its GLM-5.3 model on Workers AI contained cross-customer information between Aug. 27 and Sept. 9, 2026. The failure occurred within shared AI inference infrastructure, where safeguards intended to separate customer workloads broke down. How Cloudflare's AI data leak happened. Security researcher Gadi Evron of Knostic reported the vulnerability through HackerOne on Sept. 8. Cloudflare reproduced the issue the following morning and temporarily disabled the affected model, according to its incident report. The problem involved SGLang, the open-source inference engine running GLM-5.3. Cloudflare configured a 1,048,576-token context window, but the GPU key-value (KV) cache could accommodate only 681,280 tokens. That cache temporarily stores information used during AI processing. Oversized requests should have returned errors. Instead, a software bug allowed rejected requests to proceed through the distributed inference pipeline, where response generation could draw on cached data belonging to earlier requests. In its independent investigation, Knostic documented responses containing names, invoice details, source-code information, filesystem paths, and AI agent records. Such information poses confidentiality risks for enterprises using AI in software development and other sensitive workflows. Cloudflare said GLM-5.3 was the only Workers AI model affected and found no evidence of deliberate exploitation. It restored service on Sept. 9 after correcting the configuration and patching the engine. Additional memory-management safeguards followed. An SGLang security advisory documents related fixes and deployment-specific guidance. Why access controls could not prevent the exposure. The failure occurred below the identity and access management layer. Enterprise AI agent identity controls restrict access and delegated permissions, but cannot independently enforce memory isolation inside shared inference infrastructure. The need for isolation testing also applies to enterprise platforms offering shared AI models. Broadcom says VMware Cloud Foundation supports tenant-specific data separation, although its published documentation does not establish how those protections compare with the inference-memory safeguards involved in Cloudflare's incident. Cloudflare's incident also differs from data exposure addressed by Microsoft's AI data protection controls, which help prevent sensitive information from reaching untrusted AI destinations. Here, information crossed customer boundaries after requests entered an authorized service. What eWeek Found: Successful API checks missed an isolation failure Cloudflare's configuration exposed a measurable gap between accepted context length and available memory. The 1,048,576-token limit exceeded prefill cache capacity by 367,296 tokens, approximately 54% more than the cache could accommodate. Engineers knew about the mismatch before launch but expected oversized requests to fail safely. Prelaunch benchmarks returned successful HTTP responses without validating generated output integrity. Knostic's later tests demonstrated that such responses could contain unrelated customer information. Cloudflare subsequently corrected the capacity mismatch, patched request handling, and added direct deployment checks. These changes addressed the reported failure without establishing that every potential memory-isolation vulnerability had been eliminated. Enterprise security assessments should therefore examine how providers validate cache ownership, reject oversized requests, and test isolation under failure conditions. Cloudflare has remediated the reported exposure, but the disclosures do not establish how widely comparable vulnerable configurations were deployed elsewhere. Want to learn more AI tips, tricks, and prompting techniques? Let eWEEK teach you How to Talk to AI for free! Try its six-minute course at The Neuron Academy, its practical learning platform designed to help professionals use AI more confidently at work. Learn a few simple ways to write better prompts and get more useful results from AI, or browse its other AI course for free for seven days. eWeek readers get free 7-day access. Check out all the lessons here
Researchers chain cloudflare security flaws to bypass CSP and execute malicious JavaScript. October 28, 2026 Security researchers at Searchlight Cyber chained several small flaws in Cloudflare's image feature. The chain let them run JavaScript on a site that was meant to block it. Kevin Gervot and Adam Kues published the work on October 28, 2026, in a write-up titled Cache Me If You Can. They showed a working cross-site scripting (XSS) bug through the /cdn-cgi/image/ endpoint on cloudflare.com. The write-up does not list a CVE or a patch status, so readers should check with Cloudflare. Discover more Cybersecurity news subscription Computer security consulting Cloudflare XSS flaws. Cloudflare sits in front of 24.3% of all websites. When a site joins Cloudflare, the company adds a managed /cdn-cgi/ path to that site's own domain. Features such as bot checks, Web Analytics, Access, and Image Transformations live there. Because these pages load from the customer's own domain, a bug in them runs with that site's trust. Other researchers had already found Content Security Policy (CSP) bypasses in this path. CSP is a browser rule set that limits which scripts a page may run. Cloudflare cleans SVG images with svg-hush, a Rust tool built on the xml-rs library. The tool checks the file, then writes it back out. The researchers found that xml-rs escapes normal attribute values but writes namespace values (the xmlns setting) raw. An attacker can hide a quote mark in that value and break out of it. The filter has already approved the file by then, so the script tag slips through. Cloudflare serves these images with a strict policy of default-src 'none', which blocks scripts. However, the endpoint passes along Cache-Control headers from the source image. The HTTP rules allow a form such as no-cache="Content-Security-Policy", which tells a cache to drop the named header. Only Chromium follows this rule, and it accepts any header name. The CSP stays in place on the first load. After Chromium saves the page, the policy is gone. A known CTF trick then forces Chromium to reload the saved copy. The attacker opens the page in a new window, moves that window to another site, and calls history.back. The opener link keeps the page out of the back/forward cache, so Chromium uses its disk cache, and the script runs. A related cache-based CSP bypass covered earlier by Cyber Security News relied on the same bfcache fallback. Image Transformations only fetches images from allowed sources. The default setting is "This zone only". The fetcher follows redirects without checking the final address. Any open redirect on an allowed site therefore lets an attacker load an image from anywhere. Discover more Buy Routers Computer security tools Cyber attack prevention The team wanted a method that needed no open redirect. They found that once Cloudflare Access is on for any hostname in a zone, /cdn-cgi/access/logout works on every hostname in that zone. Its returnTo setting accepts any cloudflare.com subdomain. A redirect on a Cloudflare research host then sent the fetcher to the attacker's file. That completed the chain on zones with strict source settings. The team then tested the cache trick elsewhere. On Netlify Image CDN, they used it to drop both the CSP and the Content-Type header. Chromium then guessed the file type from its content and treated an SVG starting with a doctype as HTML. A processing instruction hid the script from the SVGO cleaner, which only checks elements. The researchers say Netlify's hosted code is not public, so they could not confirm it matches the open-source version. Amazon S3 and Google Cloud Storage also allow signed links to override response headers. Such links can set response-content-type and response-cache-control. This matters for buckets behind custom domains or proxies that pass query strings along. The idea builds on earlier Content-Type override research and the S3 GetObject overrides. The main lesson is that you shouldn't trust only a file's body. Headers passed through by an image service or storage layer become part of your security. Teams should avoid forwarding Cache-Control and X-* headers from untrusted sources. They should also set X-Content-Type-Options: nosniff and review which sources their image tools may fetch. Closing open redirects helps too. Past work shows that even strong filters can fail, as in WAF bypass research on XSS payloads. Layered defenses still matter. Gurubaran KS is a cybersecurity analyst, and Journalist with a strong focus on emerging threats and digital defense strategies. He is the Co-Founder and Editor-in-Chief of Cyber Security News, where he leads editorial coverage on global cybersecurity developments. 0-Hour Cyber Security Alerts! Get the latest Cyber security News sent directly to your inbox. Discover more Cyber attack news Security alerts service Audit Security
Find jobs on Simplify and start your career today
Don't see your dream role? Check out thousands of other roles on Simplify.Browse all jobs
Industries
Company Size
1,001-5,000
Company Stage
IPO
Headquarters
San Francisco, CA
Founded
2009
Find jobs on Simplify and start your career today
Don't see your dream role? Check out thousands of other roles on Simplify.Browse all jobs