Infrastructure as Code: Is It as Secure as It Seems?

SecurityTrails Blog - En podkast av SecurityTrails

Kategorier:

Alongside the rise of public clouds, managing the infrastructure of private clouds has never been easier. Tools like Terraform are available, but increasing dependence on them means it's necessary to understand the security implications they present. After all, your entire infrastructure is dependent on, and accessible through, such a configuration—it's essentially infrastructure as code, or "IAC", passed through a tool like Terraform. IAC has effectively become the go-to for most modern infrastructure, given the scale and complexities involved in managing everything manually. For users already using IAC-based setups, we'll look into how one can assess and manage the various security risks present in IAC-powered setups and examine the various tools available for reducing attack surface. For users looking into setting up or switching to IAC-based setups, we'll look at the various advantages of IACs as well. What is infrastructure as code (IAC)? Infrastructure as code is, as its name suggests, a modern way of managing infrastructure in the form of formatted code or simply defined templates which are system readable. These allow for rapid scaling up and down of infrastructure. IAC applies to commonly used cloud infrastructure as well as any other infrastructure that goes along with it, for example, bare-metal systems. IACs allow for easier management, understanding and monitoring of the infrastructure in place, as IACs combine everything into one infrastructure template. IAC definitions or templates are fed into tools like Terraform, Ansible or Saltstack. These tools parse the templates written to manage the infrastructure as defined in the templates. Benefits of IAC IAC provides multiple benefits to DevOps teams, with advantages seen from development to deployment that include the following: Automation IAC allows Devops teams to skip all of the manual work involved in the setting up or scaling upf of infrastructure in use. Automating setup of all the parts of the infrastructure in use can save hours—and in many cases, days—when considering the major deployments found in numerous large organizations. Financial savings Cost savings are possible when using IACs. With infrastructure as code, infrastructure deployments are known well in advance and tested over time, allowing for streamlining and cleaning up. With manual deployments, bits of infrastructure are often found to be in excess or even missing, leading to last-minute delays and unnecessary expense. IAC templates show that every single element of the infrastructure to be deployed is present and accounted for, allowing for better understanding. Replication of infrastructure Tried and tested IAC templates allow for replication of infrastructure from development and testing environments into production environments. This saves time, as templates can be re-used when setting up new production environments as applications are shipped to customers. With the entire infrastructure defined in code, it's possible to amend or remove bits of infrastructure as needed, depending on customer requirement. This also allows for easier customer infrastructure documentation between support and DevOps teams as well. Easier documentation and understanding IAC allows for easier understanding of the infrastructure in place. Having all of the infrastructure defined in a file, or set of files, makes it possible to keep track of everything in use. This prevents teams from forgetting any part of their infrastructure when dealing with system updates, patches, and the like, better ensuring overall security. Infrastructure as code security risks With all the benefits that IAC carries, there are risks as well. As the whole of your infrastructure defined in a file or set of files, let's examine the following considerations: Credential management risks The storing of passwords and other access information (such as SSH keys) is a major security point to keep in mind. T...

Visit the podcast's native language site