June 6, 2023
Container Best Practices: Container Security Part 1

Gartner predicts that by end of 2022, more than 75-80% of global organizations will be running containerized applications in production. Though organizations can achieve many business benefits by using Kubernetes and Docker containers in tandem in IT environments. Despite their ubiquity, cloud native applications are still not necessarily widely understood, which can create gaps for security teams tasked with protecting them. They do come with many vulnerabilities, data protection issues, container image vulnerabilities, cyber-attacks, unauthorised access, and a whole host of other risks

Zero Trust to Dockers & Kubernetes

Docker containers and Kubernetes Orchestration improve software development and add much-needed agility to business systems. Docker and Kubernetes are most frequently used together in large-scale production environments as complimentary products. Docker providing simple, straight forward deployment of container instances, and Kubernetes delivering automated scaling and management of large container deployments. The vast adoption of containers raises the bar for the Zero Trust model. Zero Trust now needs to extend from endpoints, users, and applications to nano-units of applications and containers: processes and their behaviour, independent of where and how long the container runs. A key tenet of zero-trust is that every single request should be secured, regardless of who or where it came from. This model needs to be applied to containers so that all communications are encrypted, even those between internal services


This approach to Zero Trust requires an identity for containers and its components, again, independent of where they run. An identity that provides granular contextual visibility and behavioural nano-segmentation at the application process level, and control and reporting on all application and system level process interactions within a container.

Nano-segmentation approach to Container Security which analyse the behaviour of every process in a container. After which modelling of their behaviour to identify normal across versions and environments, even before containers are deployed in production environments. As containers are ephemeral deviations from the model across versions and environments, they can be used to detect anomalies and prevent attacks

With nano-segmentation in place, containers will be prevented from accessing resources outside their respective nano-segments, and such attempts will also generate alerts and audit events.

Two other critical security requirements for cloud native Zero Trust are container images and runtime defense. Developers use containers, a standalone file or package of files with components needed to run an application which collectively called a container images, but its ephemeral in nature and difficult for an organization to grasp what they’re used for and where they originate.


Developers in some cased use public image repositories like Docker Hub to generate the base layer of an application which can be an efficient resource, without a proper defined window, with little to no information provided about what item you’re selecting.

Ensuring developers have the tools to secure container images at every stage in the development lifecycle is a great first step to achieving Zero Trust. One-time vulnerability scanning isn’t a complete solution to this problem. To ensure existing container images deployed across the environment don’t contain malicious files, Consistent image vulnerability scanning must be combined with image trust to obtain the visibility and control necessary for Zero Trust in cloud native applications. Image trust policies allow users to specify which container images are safe to run within their environment, either by image or by image layers. While continuously scanning images and verifying their trustworthiness is important, protections need to be continued into runtime as well. 

Continuous visibility into running applications becomes an utmost importance to validate that they are operating within defined specifications and ensure that they are only communicating with relevant entities. Creating a model of known-good processes and network connections, then alerting on or blocking any deviations from this model, helps give organizations full control over how an application performs as a part of runtime protection.

Enforcing Strict identity policies

Moreover IP-based validation is no longer sufficient in a containerized environment. Enterprises should enforce policies based on the identities of the actual workloads running in their environments. In traditional firewall-based network access rules, complex of NAT rules will be in place to access a single resource, but in Zero Trust, these rules are converted into policies. Role-based access control can facilitate the implementation of fine-grained access policies based on an entity’s characteristics while employing a least-privilege approach further narrows the scope of access by ensuring that any entity requiring privileged access is granted only the minimum level of permissions required to perform a set of actions.



Container adoption has become a prime priority for organizations in their digital transformation strategies. While there are many benefits to containers and microservices, organizations must be careful not to combine new technologies with existing enterprise security methodologies. As organizations devise new strategies for securing containerized workloads in a modernized infrastructure, the Zero Trust model with nano-segmentation with continuous scanning can serve as a framework for success.

Leave a Reply

%d bloggers like this: