
26,400 credentials that developers left in public code on Gitee, a Chinese code-hosting service, still worked when a researcher tested them. Anyone who copied one from that code could have used it.
Independent researcher Ben Zimmermann found them by scanning 7.25 million public Gitee repositories and reported the results on October 28. Most were keys for cloud and AI services, led by 9,473 Alibaba Cloud AccessKey pairs.
Zimmermann sent the vendors with the most exposed keys a list of their credentials, but he did not contact the developers who leaked them. When he published, he had not confirmed that any of the reported credentials had been revoked. So anyone who has pushed a key to a public Gitee repository cannot assume it has been revoked.
The scan ran for about a month, but Zimmermann did not provide the dates, so it is unclear how long ago the credentials were tested. He also did not say whether anyone else had used them.
He ran two secret scanners, TruffleHog and Kingfisher, over every repository. Both tried each credential against the service that issued it and kept only those that worked, he wrote.
The scanners read each repository's full commit history. A key that a developer later removed from the code could still be found and counted there.
The 26,400 figure counts each credential once, regardless of how many repositories it appeared in. By commit date, 12,242 of the credentials came from 2025, nearly half the total. Some dated to the late 2000s.
What Was Exposed
After the Alibaba Cloud keys, the largest groups were 3,805 YouTube API keys, 3,170 DeepSeek keys, 1,489 keys for Zhipu's BigModel AI platform, and 1,348 OpenAI keys. Smaller numbers were found for GitHub, AWS, Google Cloud and Google's Gemini.
One of the credentials was "an active organization-admin credential for a major enterprise AI platform," Zimmermann wrote. He did not name the platform or say what the credential could reach.
What a working key lets someone do depends on the service. OpenAI says that a compromised key allows another person to use the account's quota without the owner's consent. That can cause "data loss, unexpected charges," a used-up monthly quota, and interrupted API access.

A YouTube API key is a Google Cloud API key that identifies a project, Google says. Without API restrictions, such a key can be used with every API that accepts Google Cloud keys.
What to Do If You Committed Keys
Treat any key that has ever been in a public Gitee repository as exposed, and revoke it at the provider. Deleting a key from the code or rewriting the repository's history does not revoke it, as noted by TruffleHog's maker, Truffle Security.
- Alibaba Cloud: create a new AccessKey pair, switch your apps to it, then disable and delete the old pair. Check for unexpected charges and for resources created or deleted that you did not need, Alibaba Cloud's leak response plan says. ActionTrail shows the key's API calls for the last 90 days, but data operations in services such as OSS and SLS have to be checked in each service's own logs.
- Google and YouTube API keys: rotate the key, which creates a new key with the same restrictions, update your apps to use it, then delete the old key. Add API restrictions so the key works only with the APIs you need.
- OpenAI: rotate the key immediately from the API Keys page, as OpenAI advises, and set spend limits to help limit charges from a leaked key.
Two Scanners, Different Results
MongoDB makes Kingfisher, and Zimmermann's post was developed with its Kingfisher team.
In this scan, TruffleHog found 12,737 credentials that worked, and Kingfisher found 14,664, but only 1,001 were found by both. Each tool alone found about half of the total.
TruffleHog found almost all of the Alibaba Cloud keys. Kingfisher found all 1,489 BigModel keys, because TruffleHog has no detector for Zhipu's keys, Zimmermann wrote.
Teams that rely on a single scanner should verify its detectors against the services they use.
Gitee and Other Code Hosts
China's Ministry of Industry and Information Technology chose Gitee in 2020 as the base for a national open-source code-hosting platform.
Gitee's public API is limited, and a 2021 attempt to study leaked credentials on the site gave up because of it.
Gitee's rate, 3.64 working credentials per 1,000 repositories scanned, is higher than the rates from earlier scans of GitLab (3.11) and Bitbucket (2.39). Those scans used only TruffleHog, Zimmermann wrote.
Based on TruffleHog's results alone, Gitee's rate is 1.76, but that count excludes services TruffleHog does not cover, such as Zhipu. So neither figure shows which platform leaks more.