Truffle Security's Secrets Revocation Program: 1.4 million leaked API keys still work, 16 issuers join
Truffle says 81% of keys it reported still worked six months later; its free program has issuers revoke leaked keys, and here is what developers should do now.
· 7 min read
Written by AI from the sources linked below. How we use AI

On this page
Truffle Security, the company behind the open-source TruffleHog scanner, has launched a free program to get leaked API keys switched off by the companies that issued them. The Secrets Revocation Program, announced on 4 November 2026, starts from a pile of 1.4 million keys that Truffle says it has confirmed are leaked in public and still work, and from a measurement it says explains why: telling developers about a leak rarely gets the key turned off. If you publish code, container images or datasets, the practical advice at the end applies to you whether or not any issuer you use joins.
Key points
- Truffle Security launched the Secrets Revocation Program on 4 November 2026 to have issuers revoke some of the 1.4 million live, publicly leaked secrets it has verified since 2022.
- Sixteen issuers have joined, including Hugging Face, Notion, Vercel, Resend, RubyGems and Twilio, and Truffle says another 43,699 verified keys are waiting for issuers that have not.
- Truffle says 81% of the keys it reported last year still worked six months later, and that 72% of leaked Google Cloud keys from before Google began auto-disabling them still work, against 11% afterwards.
- Of the 543,699 keys Truffle found still working in a public GitHub snapshot (The Stack v3), most had been public for more than two years.
- Truffle also reports 2,655 working keys in AI coding tools' config files since January 2025, including a live GitLab token inside
.claude/settings.local.jsonin a published Docker image.
What to do
- If you ever committed a key, rotate it, do not just delete it. GitHub's own documentation says to rotate an exposed credential immediately; removing it from Git history is slow and often unnecessary once the key is revoked.
- Check places other than GitHub. Truffle says three of every four Resend keys it delivered came from Docker images, and more than half of the Vercel keys in its analysis came from Hugging Face datasets. Neither is covered by GitHub's secret scanning partner program.
- Keep AI tool config out of images and repositories. Files such as
.claude/settings.local.jsoncan hold tokens. Add them to.gitignoreand.dockerignore, and check what aCOPY . .step in a Dockerfile pulls in. Our guide to Claude Code's local settings file explains what that file stores. - Scan yourself. TruffleHog is open source and can test whether a key it finds is live. GitHub secret scanning runs for free on public repositories, and push protection can block a commit that contains a known key pattern.
- If you issue API keys, Truffle's program is free, takes a two-page agreement, and offers two modes: Truffle revokes through an endpoint you provide, or it sends you verified keys by webhook and you revoke within 14 days or explain why you cannot.
What happened
On 4 November 2026 Truffle Security published "Introducing the Secrets Revocation Program: revoking 1.4 million live secrets", by Luke Marshall and Dylan Ayrey. BleepingComputer covered it the next day. The two accounts differ slightly in the headline figure: BleepingComputer's headline says 1.5 million, while Truffle's own post and the body of the BleepingComputer piece say 1.4 million. We use Truffle's figure.
The pipeline Truffle describes has three steps. First, it scans public places: GitHub, GitLab, Docker Hub, npm, PyPI, Hugging Face, Android apps and Firefox add-ons. It says it scanned 6 petabytes in October alone and more than 20 petabytes this year. Second, TruffleHog tests every key it finds, so a key is only forwarded if it works at that moment. Third, the issuer revokes it, either automatically through a revocation endpoint (Truffle revokes for the issuer) or after receiving the key by webhook, with 14 days to act.
Truffle says this adds a route to keys that GitHub's existing partner program misses. That program covers public GitHub repositories and npm; the program announced here also reaches Docker images and datasets. For issuers already partnered with GitHub, Truffle describes the new program as an additional route to exposed customer keys.
Background
Leaked credentials are an old problem, and the standard response has been to notify. Someone emails the developer, or the issuer is told and emails the developer. Truffle's central claim is that notification does not work well enough. It says that of 21,981 live keys it reported on GitLab and Bitbucket last year, 81% still worked six months later.
Its comparison case is Google Cloud. Google announced in May 2024 that, starting 16 June 2024, exposed service account keys detected in public repositories would be disabled automatically by default for new and existing customers, with an opt-out. Google said it works with secret-scanning programs at public repositories including GitHub and GitLab, and that it notifies project owners and security contacts when keys are detected and disabled.
Truffle sorted every leaked Google Cloud key in The Stack v3, a public snapshot of GitHub that closed in August 2025, by commit date and tested which still worked in July 2026. The result: 72% of keys leaked while Google only notified customers still work, and 11% of keys leaked after the switch. The decline begins right at the policy change:
| % still working | |
|---|---|
| Q1 2023 | 67 |
| Q2 2023 | 64 |
| Q3 2023 | 72 |
| Q4 2023 | 75 |
| Q1 2024 | 71 |
| Q2 2024 | 66 |
| Q3 2024 | 21 |
| Q4 2024 | 7 |
| Q1 2025 | 7 |
| Q2 2025 | 8 |
Source: Truffle Security, The Dig, 4 November 2026 (read from the post's chart, in label order)
Truffle adds a caveat of its own: the rate is not zero because customers can opt out and Google only disables the leaks it detects. It also says that of the 69,041 Google Cloud keys in The Stack that still work, 96% leaked before the switch. For other issuers that kill keys reported to them (Hugging Face, GitHub, Anthropic, OpenAI and Slack), Truffle says at most 2.2% of their keys in The Stack still work. Telegram, which Truffle says offers no way for outsiders to report a leaked bot token, is the other extreme at 53%.
The numbers
Truffle tested every key in The Stack v3 in July 2026 and found 543,699 that still worked. Most had been public for more than two years, and the oldest working AWS key it found was committed in November 2009. Counted by commit year, the pile grows steeply:
| live keys | |
|---|---|
| 2014 | 1678 |
| 2015 | 4308 |
| 2016 | 9043 |
| 2017 | 14234 |
| 2018 | 18230 |
| 2019 | 21286 |
| 2020 | 39547 |
| 2021 | 54703 |
| 2022 | 68943 |
| 2023 | 95062 |
| 2024 | 108006 |
| 2025 | 107701 |
Source: Truffle Security, The Dig, 4 November 2026
The per-year numbers also reflect how much code was committed each year, so they show the size of the leftover pile rather than a leak rate. Across all places it scans, Truffle says more than one million leaked keys passed its tests in the past year and 1.4 million since 2022, and that in October it found a new working key every two and a half minutes. It also says its pipeline holds 43,699 verified keys for issuers that have not yet joined.
What it means
For developers, the lesson is that a leaked key is live until the issuer says otherwise, so the fix is to revoke it, which only you or the issuer can do. Truffle's data suggests a key left in a public place for years is probably still exploitable.
For AI-assisted coding, Truffle makes a specific claim worth noting, attributed to its own analysis. It says that until mid-2025 not one commit leaking a working key was signed by an AI coding agent, but by May 2026, 6.8% were. It also cites GitHub as saying more than 40% of pull requests in September started as an agent's first draft, up from 17% in March. We have not checked GitHub's figure; it is Truffle's citation. Agents leak keys the way people do, Truffle argues, and in new places such as tool config files. For the related risk of untrusted code in repositories, see how to check a GitHub repo before you build it, and for an example of stolen tokens being abused, our report on stolen GitHub tokens planting a workflow to dump secrets.
For API providers, the Google comparison is the argument: auto-revocation beats notification on Truffle's numbers. The cost is some risk of breaking a customer's production system, which Google flagged by offering an opt-out and notifying owners.
A note on the source. Truffle sells TruffleHog and related services, so the figures come from an interested party that runs the program. They are measured on its own pipeline and on one public GitHub snapshot, and we could not reproduce them independently.
What we don't know yet
- Who else will join. Sixteen issuers are in. Truffle names six; the other ten are not named in its post.
- Whether big issuers will opt in. Major cloud providers are not named among the partners, though Google already disables leaked service account keys itself.
- Independent verification. The 1.4 million and 81% figures are Truffle's.
- Customer impact. Auto-revoking a key that a live service depends on can cause outages; how issuers will warn customers is up to each of them.
What to watch next
- New issuers announcing they have joined, particularly those whose keys appear in Docker images and AI datasets.
- Whether GitHub extends its partner scanning to more sources.
- A second round of numbers from Truffle showing how many of the 1.4 million have actually been revoked.
Sources
- Truffle Security: Introducing the Secrets Revocation Program, 4 November 2026 (primary)
- BleepingComputer: Truffle Security launches program to revoke live secrets
- Google Cloud blog: Automatically disabling leaked service account keys, 15 May 2024
- GitHub Docs: About secret scanning
- Truffle Security: partner sign-up page
Written by
The official account of the people who run audiotale.net: announcements, conversation starters and the newsroom's drafts. Posts written with AI say so. Every other account here is a real person.
Read next
Trojan.Loader.3261: fake GitHub security tools infect 2,000+ Windows PCs, Dr.Web says
Dr.Web reports trojanised Visual Studio, Python and Go projects posing as scanning and log-analysis tools that deploy AsyncRAT, a crypto clipper and an infostealer.
audiotale.net team6 min read
GitHub blocks pull_request_target by default on December 2: brownouts Nov 9 and 16
Public repositories without an Actions event policy will lose the pull_request_target trigger; here is how to check your workflows and what GitHub changed from its earlier date.
audiotale.net team7 min read
Hidden GitHub issue text: Radware finds 47 attacks on AI agents, 61 repos hit in an hour
Radware scanned 145 million GitHub items; The Register reports a one-hour campaign that hid shell commands in 83 issues and comments across 61 public repositories.
audiotale.net team6 min read