In this live event I presented Chainguard's new WordPress image, a minimal and low-to-zero CVE container image suitable for building and running WordPress websites.
Chain Security and CVEs • Chainguard Images Overview • Migrating to Chainguard Images (in a nutshell) • Presenting the WordPress Chainguard Image • Demo 3
the process of creating, building, and delivering software depends on a large chain of dependencies that we call "software supply chain" • A compromise in any point of this chain (whether malicious or unintentional) is an example of software supply chain security issue • Preventive actions include limiting surface for attack and enforcing provenance attestations 5
of publicly disclosed software vulnerabilities • The CVE Program was created in 1999 and has now over 200.000 registered vulnerabilities, with more being added each day • The Common Vulnerability Scoring System (CVSS) provides a framework to classify vulnerabilities by severity (low, medium, high, and critical) • CLI scanners such as Grype and Trivy can be used to scan container images and detect the presence of affected packages • Patching CVEs is a time-draining task due to factors such as false positives and lack of readily-available upstream patches What are CVEs? 7
the software necessary to create a slim runtime. Does not include apk or bash, so you can't easily install other software in it or log in. Default pull is distroless (latest) • Non-distroless: just the same as a regular apk-based container image (but still smaller / better). Includes apk, bash, and other utilities. Can be easily customized. Uses the -dev suffix (latest-dev) 14
the -dev variant of the image 3. Convert Dockerfile to Wolfi 4. Identify if packages are missing 5. Migrate to a distroless image in multi-stage Dockerfile Migration Process in a Nutshell 16
official images • Installs WP and copies custom plugins and themes to document root • Sets up ENV vars for database connection • wp-config.php uses getenv to obtain data (not hardcoded) • Allows customization through dashboard (install themes and plugins etc) latest (distroless) • Minimal runtime - no apk or shell • Requires a multi stage setup with latest-dev to copy contents to temporary environment and then over to final distroless image • Does not allow customization through dashboard (file modifications not allowed)