Dark Reading is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

Black Hat Asia
March 26-29, 2019
Singapore
Black Hat USA
August 3-8, 2019
Las Vegas, NV, USA
Black Hat Europe
December 2-5, 2019
London UK
11/5/2018
12:00 PM
Hari Srinivasan, Director of Product Management, Qualys
Hari Srinivasan, Director of Product Management, Qualys
Event Updates
50%
50%

Build Security into Container Deployment

Container adoption has skyrocketed, and with it the importance of securing the applications that DevOps teams create and deploy using this method of OS virtualization.

Container adoption has skyrocketed, and with it the importance of securing the applications that DevOps teams create and deploy using this method of OS virtualization.

The protection that security teams provide must be comprehensive across the container lifecycle, and built seamlessly and unobtrusively into the DevOps pipeline.

Accomplishing this requires understanding Docker container technology, and adopting processes and tools tailored for these environments.

Container security challenges

Containers qualities that developers find attractive, such as packaging an application and its dependencies without a guest OS, also create create security and compliance issues.

These challenges include developers’ use of software from public repositories, which often has vulnerabilities, and their deployment of weakly-configured containers.

In addition, containers communicate directly with each other via exposed network ports bypassing host controls, and their ephemeral nature makes them hard to track.

Protecting the container pipeline

All phases of container deployment have to be secured -- build, ship and runtime. Let’s look at them in detail.

Build

In this phase, the goal is blocking vulnerable images from your organization’s repositories, especially images pulled from a public repository.

To keep unsafe images out, you should leverage REST APIs or native plug-ins, so that security checks can automatically run within your DevOps team’s CI/CD tools.

These integrations will also let security teams give developers access to security tools. That way, developers can perform security functions from CI/CD tools without involving security teams.

Ship

In this phase, you should make sure that images in your repositories are checked for vulnerabilities. Registries and repositories should be inventoried. As images are added, scan them for vulnerabilities.

Also check that your organization’s images come from reputable sources that keep images current and scrubbed of vulnerabilities. Using notary services can help ensure only trusted images are used in your environment.

Runtime

With the container images now on your registry and available for production use, it’s critical to have visibility and continuous monitoring of runtime environments, as well as the ability to prevent and respond to breaches.

Security teams must detect rogue, vulnerable containers, identify where they are, and assess their potential impact based on how widespread they are in your environment.

A key here is to flag containers already running on the system that are breaking off from the “immutable” behavior of their parent image, which could indicate a breach.

After identifying rogue containers, your security tool should allow you to enforce counter measures of blocking or quarantining, and to drill down into anomalies’ details.

An even better option: Automatically validate the image against security policies using your tool, and block unapproved images from being spun up as containers. Here you can leverage orchestrators like Kubernetes to prevent rogue containers from entering the environment via admission controllers.

Summary

We hope this article has helped you better understand the particular security challenges of containers, and how to address them throughout their lifecycle.

Comment  | 
Print  | 
More Insights
Comments
Newest First  |  Oldest First  |  Threaded View
Data Privacy Protections for the Most Vulnerable -- Children
Dimitri Sirota, Founder & CEO of BigID,  10/17/2019
Sodinokibi Ransomware: Where Attackers' Money Goes
Kelly Sheridan, Staff Editor, Dark Reading,  10/15/2019
Register for Dark Reading Newsletters
White Papers
Video
Cartoon
Current Issue
7 Threats & Disruptive Forces Changing the Face of Cybersecurity
This Dark Reading Tech Digest gives an in-depth look at the biggest emerging threats and disruptive forces that are changing the face of cybersecurity today.
Flash Poll
Twitter Feed
Dark Reading - Bug Report
Bug Report
Enterprise Vulnerabilities
From DHS/US-CERT's National Vulnerability Database
CVE-2019-18214
PUBLISHED: 2019-10-19
The Video_Converter app 0.1.0 for Nextcloud allows denial of service (CPU and memory consumption) via multiple concurrent conversions because many FFmpeg processes may be running at once. (The workload is not queued for serial execution.)
CVE-2019-18202
PUBLISHED: 2019-10-19
Information Disclosure is possible on WAGO Series PFC100 and PFC200 devices before FW12 due to improper access control. A remote attacker can check for the existence of paths and file names via crafted HTTP requests.
CVE-2019-18209
PUBLISHED: 2019-10-19
templates/pad.html in Etherpad-Lite 1.7.5 has XSS when the browser does not encode the path of the URL, as demonstrated by Internet Explorer.
CVE-2019-18198
PUBLISHED: 2019-10-18
In the Linux kernel before 5.3.4, a reference count usage error in the fib6_rule_suppress() function in the fib6 suppression feature of net/ipv6/fib6_rules.c, when handling the FIB_LOOKUP_NOREF flag, can be exploited by a local attacker to corrupt memory, aka CID-ca7a03c41753.
CVE-2019-18197
PUBLISHED: 2019-10-18
In xsltCopyText in transform.c in libxslt 1.1.33, a pointer variable isn't reset under certain circumstances. If the relevant memory area happened to be freed and reused in a certain way, a bounds check could fail and memory outside a buffer could be written to, or uninitialized data could be disclo...