Lock in $30 Savings on PRO—Offer Ends Soon! ⏳

Malicious Compliance Automated: When You Have 4...

Malicious Compliance Automated: When You Have 4000 Vulnerabilities and only 24 Hours Before Release

You know that feeling when you think are done, but then you realize you are not even close and you don't have time to do anything about it?

In this talk we'll go on a journey with a developer, who just finished his application. He's happy because he's done early and there's still 24 hours before the application has to be released, but then he learns that he has 4000 vulnerabilities in his application and there's no way he'll be able to fix them all. He needs a miracle and whatever it is it needs to be automated.

We'll explore the good, the bad and the fun of minifying container images. We'll see the side effects of image minification on the existing vulnerability scanners and exploits and how they will be disrupted and broken. We'll also investigate a number of additional container obfuscation techniques that will make vulnerability scanners completely blind.

You will learn what it takes to build minimal container images and how to make sure you have only the components you need to reduce the attack surface of your containers. You will learn about what's truely necessary for your containers to function. You will also learn how it's possible to automate container image minification leveraging low level Linux kernel interfaces and application analysis.

The vulnerability scanner limitations exposed in this talk shouldn't be there. They are there because users don't demand something better. The call to action in this talk is to ask for better products and not to accept the current status quo. It's time for change!

Kyle Quest

November 25, 2024
Tweet

More Decks by Kyle Quest

Other Decks in Programming

Transcript

  1. Who are we? Duffie Cooley @mauilion everywhere. Field CTO for

    Isovalent @ Cisco Member of Sig Honk and the CNCF TOC , fascinated with distributed systems and all things container security. Kyle Quest ( https://linktr.ee/kcqon ). The DockerSlim Guy :-) Founder @ AutonomousLayer @mauilion @kcqon
  2. github.com/mintoolkit/mint • Shrink fat container images • Build regular containers

    with multiple build engines (Docker, BuildKit, Podman, Depot, Simple) • Debug minimal and regular container images (Docker, Kubernetes, Podman, ContainerD) • Lots of examples : https://github.com/mintoolkit/examples • Looking for new contributors. Come to the KubeCon contrib session if you are interested! Introducing minToolkit (aka DockerSlim and SlimToolkit) @mauilion @kcqon
  3. What happened to the OS package metadata? • No /etc/os-release

    • No /var/lib/dpkg/* • No /var/lib/apt/* • No /var/log/apt/* • No /var/log/dpkg.log @mauilion @kcqon
  4. Tools Used In the Talk • Mint / MinToolkit (aka

    DockerSlim aka SlimToolkit) - create minimal container images and also debug and inspect any container images you have - github.com/mintoolkit/mint ( https://github.com/mintoolkit/examples ) • Diffoci - compare container images - https://github.com/reproducible-containers/diffoci • Container-diff - compare container images - https://github.com/GoogleContainerTools/container-diff • https://ima.ge.cx - explore container images online • https://hexed.it - explore/edit binaries online • OSV scanner - https://github.com/google/osv-scanner • Docker Scout - https://docs.docker.com/scout/ • Snyk - https://docs.snyk.io/scan-using-snyk/snyk-container • Grype - https://github.com/anchore/grype • Trivy - https://github.com/aquasecurity/trivy • Syft - https://github.com/anchore/syft @mauilion @kcqon