Insights into Hardcoded Secrets and Keys in Corporate Repositories
June 21, 2022

Moshe Zioni
Apiiro

Corporations can spend millions to install effective cybersecurity infrastructure, but what they might fail to notice is that vulnerabilities could be hiding in plain sight in developer repositories. To make database connections, calls to APIs, and many other functions more convenient, developers will often hardcode various credentials, keys, and secrets into a configuration file, or sometimes directly into a function itself. While this practice makes it convenient for developers, it opens up a myriad of vulnerabilities and cybersecurity challenges.

Our recent research dove deep into over 25,000 repositories, almost 2 million commits, and 820,000 pull requests. The results give in-depth insights into the growing issue of hardcoded secrets. Hardcoded secrets can be usernames and passwords, access tokens, API keys, private keys in public-private encryption, and any other authentication or authorization secrets that lets the application execute functionality specific to a corporate account. In the report we came up with, over 45,000 secrets were found and analyzed. The results show that many organizations are unaware that the "keys to their kingdom" are publicly available, leaving them vulnerable to unauthorized access to infrastructure and sensitive data.

The report separates encrypted and encoded secrets from "exposed" secrets. Exposed secrets are categorized as those disclosed without encryption. These secrets, when stolen, are the most dangerous to an organization, because they can be used without any other effort, such as brute forcing weak encryption or performing dictionary attacks on encoded secrets.

Even more concerning, for every 1,000 repositories with exposed secrets, 7 of them were publicly available to anyone on the internet. Of all repositories with secrets, 38.15% of them were in repositories that work with Personally Identifiable Information (PII), leaving these organizations open to compliance violations and critical data theft.


A surprising insight drawn from the analysis is that corporations experience a seasonal cadence to secrets creeping into code bases, which might correlate with their efforts of periodic rotations of secrets across the board or, alternatively, engineering cadence, ramp up and churn.

With a high-performance development and DevOps environment, it’s not unusual for secrets to slip into repositories during rapid deployment. Speed and convenience are often the nemesis of good cybersecurity, but you can fit security into automated deployment procedures. With only one repository, it can be easy to spot a mistake, but enterprise development involves potentially thousands of repositories. Even with numerous repositories, you can automatically discover and remediate hardcoded secrets with the right tools.

Here are a few practical ways you can remediate secrets in code now without interrupting and impeding current development operations:

1. Always scan for new and existing hardcoded secrets

If you remove every secret today, a developer could accidentally deploy a configuration file with stored secrets tomorrow. You need tools in place that continually scan and discover any sensitive information before developers deploy files to a production environment. A good scanning tool will discover, categorize and classify files with hardcoded secrets to make it easier for DevOps to prioritize remediation.

2. Prioritize remediation based on risk

Not every vulnerability is created the same, and hardcoded secrets are no different. Hardcoded secrets to your AWS dashboard have a much higher impact on corporate security than secrets used to read non-sensitive data. Collaboration at this step is critical to create a remediation plan that prioritizes the most vulnerable infrastructure.

3. Rotate keys and revoke any exposed secrets

As you refactor code and remove hardcoded secrets, you should revoke any passwords and keys found in your repositories. For all you know, your sensitive data was already discovered by an attacker, indexed in search engines, or saved for later use. Rotation of keys is also important to reduce the window of opportunity for an attacker should they obtain access to secrets in the future.

4. Educate and train developers

Developers don’t think like hackers, so they need training on the myriad of ways that certain code architecture and structure can leave an application vulnerable to attacks, including hardcoded secrets in configuration files and directly embedded in functions. They might also need help working with preferred ways of storing keys, such as using environment variables.

5. Add new security to code procedures

Every organization has their own rules to code performance, but they all have commits and pull requests in a team environment. The right tools will scan and alert developers of hardcoded secrets during a commit, or it will block a developer from merging code with hardcoded security during a pull request. These two safeguards put you into a "shift left" approach to cybersecurity to protect from disclosing secrets in production.

Conclusion: Taking a Shift Left Approach to Code Deployment Reduces Risk of a Compromise

As more corporate developers deploy hardcoded secrets into public repositories, organizations must put the right safeguards in place. Our research shows the need for more implementation of automation tools to catch these issues before attackers discover them. You can better protect your data, your infrastructure, and greatly reduce risk by implementing automation that supports a shift left approach to DevOps cybersecurity.

Moshe Zioni is VP Security Research at Apiiro
Share this

Industry News

November 20, 2024

Spectro Cloud completed a $75 million Series C funding round led by Growth Equity at Goldman Sachs Alternatives with participation from existing Spectro Cloud investors.

November 20, 2024

The Cloud Native Computing Foundation® (CNCF®), which builds sustainable ecosystems for cloud native software, has announced significant momentum around cloud native training and certifications with the addition of three new project-centric certifications and a series of new Platform Engineering-specific certifications:

November 20, 2024

Red Hat announced the latest version of Red Hat OpenShift AI, its artificial intelligence (AI) and machine learning (ML) platform built on Red Hat OpenShift that enables enterprises to create and deliver AI-enabled applications at scale across the hybrid cloud.

November 20, 2024

Salesforce announced agentic lifecycle management tools to automate Agentforce testing, prototype agents in secure Sandbox environments, and transparently manage usage at scale.

November 19, 2024

OpenText™ unveiled Cloud Editions (CE) 24.4, presenting a suite of transformative advancements in Business Cloud, AI, and Technology to empower the future of AI-driven knowledge work.

November 19, 2024

Red Hat announced new capabilities and enhancements for Red Hat Developer Hub, Red Hat’s enterprise-grade developer portal based on the Backstage project.

November 19, 2024

Pegasystems announced the availability of new AI-driven legacy discovery capabilities in Pega GenAI Blueprint™ to accelerate the daunting task of modernizing legacy systems that hold organizations back.

November 19, 2024

Tricentis launched enhanced cloud capabilities for its flagship solution, Tricentis Tosca, bringing enterprise-ready end-to-end test automation to the cloud.

November 19, 2024

Rafay Systems announced new platform advancements that help enterprises and GPU cloud providers deliver developer-friendly consumption workflows for GPU infrastructure.

November 19, 2024

Apiiro introduced Code-to-Runtime, a new capability using Apiiro’s deep code analysis (DCA) technology to map software architecture and trace all types of software components including APIs, open source software (OSS), and containers to code owners while enriching it with business impact.

November 19, 2024

Zesty announced the launch of Kompass, its automated Kubernetes optimization platform.

November 18, 2024

MacStadium announced the launch of Orka Engine, the latest addition to its Orka product line.

November 18, 2024

Elastic announced its AI ecosystem to help enterprise developers accelerate building and deploying their Retrieval Augmented Generation (RAG) applications.

Read the full news on APMdigest

November 18, 2024

Red Hat introduced new capabilities and enhancements for Red Hat OpenShift, a hybrid cloud application platform powered by Kubernetes, as well as the technology preview of Red Hat OpenShift Lightspeed.

November 18, 2024

Traefik Labs announced API Sandbox as a Service to streamline and accelerate mock API development, and Traefik Proxy v3.2.