Organizations in all industries have secrets that need to be protected. The modern ID landscape is filled with secrets — passwords, encryption keys, cryptocurrency wallets, SQL connection strings, storage account keys, API tokens — and organizations are challenged with storing, managing, and protecting their secrets.
Let's define "secrets" as some knowledge or a piece of data that should be hidden from others, such as unapproved employees, unrelated business units, and competitors. Secrets are often used to encrypt data at rest and in transit. For example, a website will typically access encrypted data, process the information, and present the resulting information to a user in a browser. The data must be unencrypted for processing and transmission to the user.
If secrets aren't managed correctly, they can expose sensitive information that could wreak havoc on an organization, its network, and its data. Currently, 87% of executives lack confidence in their organization's level of cybersecurity, according to EY, a member firm of Ernst & Young Global Limited. Knowing where secrets are kept is the first step, which is easier said than done. They are likely fragmented and scattered everywhere across the organization and beyond: on premises, in the cloud, on servers, on devices, on clients, and even in code. A centralized approach to secrets management is vital for companies to protect their data and assets, while a poorly managed security approach could lead to breach, noncompliance, or outage.
12 Ways to Get a Handle on Secrets Management
- Learn where your company's secrets are kept and inventory them. Secrets are often scattered everywhere: on premises; on servers, devices, and clients; in the cloud, and even in code. Develop a checklist to discover which systems are using keys, and collect information on their secret requirements and integration points.
- Set your goals for security robustness. The more robust your security, the more complex the implementation. You'll need to have guidelines and practices in place for your extended security team to include user access policies, automated systems updates, and secure code deployment.
- Centralize your approach. Place secrets in a private repository with restricted access. Leverage vaulting systems (such as password managers) with access management. Leverage systems such as PKI to utilize keys requiring lower management of keys.
- Separate data from the secrets. You can use location to your advantage and keep the secrets on premises and data in the cloud.
- Define your implementation. Evaluate administration versus technology solutions (see section below). Determine if you will use policy and custom processes or will leverage an existing vendor solution to achieve your goal
- Control access. Consider security around any centralized repository. Manage control of access, authorizations, permissions, and privileges.
- Remove the human factor, if possible. Limit employees' access to the secrets, leverage escrow services when passwords are involved, and consider alternate identity solutions in lieu of passwords.
- Check permissions: users, machines, applications. Determine where secrets are being created and stored and enforce restrictions that prevent unapproved creation and storage in unmanaged places.
- Log use and look for patterns. Anomaly detection will help you better understand and assess data and user behavior.
- Rotate encryption and identity keys. Define lifetimes and rotation strategies so encryption keys are removed from use before their cryptographic lifetimes are exceeded.
- Have an incident response plan ready. With threats and errors occurring with increased regularity, an incident response plan will reduce your risks (and stress) if you are faced with a security incident, requiring urgent incident response.
- Plan ahead for data breach to reduce the impact. Having your breach response plan always updated will help if there is any type compromise.
Once secrets are located by performing an assessment and inventory, it's crucial to separate data from the secrets. For example, make sure the encryption keys that protect the data are separate from the secrets in a central, private repository with restricted access — such as a key management server with limited access to the public and by your employees. One recommendation is to use location to your advantage: secrets on-premises, data in the cloud. Be sure to keep data encrypted using keys and ensure keys are encrypted at rest.
Administration vs. Technology Solutions
The human element will always be the weakest link in any security protocol. Consider this: 80% of data breaches are caused by silly mistakes made by those responsible for managing secrets, according to Rashmi Jha, senior program manager at Microsoft. Here are some principles for tightening up your security:
- Leverage escrow services when passwords are involved.
- Consider alternate identity solutions in lieu of passwords.
- Key management solutions are only part of the equation.
- Audit, compliance, and remediation are critical.
- Consider security around any centralized repository.
Levels of Security
Depending on your resources, there are different levels of security to consider when protecting your organization’s secrets:
- Limited access: Secrets are stored in a repository/server with limited access to the public. Examples include password vaults, hardware security modules, and private Git repositories.
- Encrypted secrets: Before being stored, the secrets are encrypted. Security through obscurity is not acceptable.
- Management: An application that allows high-level control of the secrets. Examples include symmetric key management systems and password escrow services.
The Carrot or the Stick
Managing your organization's secrets is one thing, but what about the third parties that you work with on an ongoing basis? Will secrets management be defined by your vendor's application capabilities? If so, your vendors will be indirectly dictating your security posture. Application support is of utmost importance for the security of your secrets. You'll want to define your own secrets management goals, establish a baseline standard for today, and create a two- to five-year goal for your security standard. You will want to be in control and notify your vendors that they must support the standard or face replacement. Any new RFP and application selection process criteria will factor in new requirements before acquisition.
The Pitfalls of Poor Secrets Management
What happens if organizations have poor secrets management? It can lead to account and network compromise, information leaks, outages, compliance issues, data breach, loss of reputation — and even the business shutting down. Secrets management is an ongoing effort and it's important to follow the "trust but verify" approach.
- 6 CISO Resolutions for 2019
- To Click or Not to Click: The Answer Is Easy
- Quora Breach Exposes Information of 100 Million Users
- Dunkin' Donuts Serves Up Data Breach Alert