What is Azure container security scanning?

Équipe d'experts Wiz
Key takeaways
  • Azure container security scanning finds vulnerabilities, exposed secrets, and misconfigurations in images stored in Azure Container Registry and running workloads in AKS. For Azure Container Instances (ACI), scanning primarily covers image assessment and configuration validation rather than deep runtime behavioral monitoring.

  • Strong security covers pre-deployment image analysis, registry scanning, and runtime threat detection in production environments.

  • The most effective tools combine vulnerability data with network exposure, identity permissions, and data access to prioritize what is actually dangerous.

  • Integrating scanning into CI/CD pipelines lets teams block risky images before deployment without slowing development.Agentless approaches that use Azure APIs give broad coverage and fast time-to-value without adding agents to every node and container.

Why Azure container security scanning matters for modern cloud environments

Azure has become a default home for containerized applications as teams modernize legacy systems and build new cloud‑native services. That shift gives you speed and flexibility, but it also changes how attackers go after your environment.

Containers share the host kernel, so a single kernel flaw can impact many workloads at once. You also inherit risk from your image supply chain: base images, language runtimes, and third‑party packages you did not write. Kubernetes and Azure orchestrate containers dynamically, creating short‑lived workloads that appear and disappear quickly, making traditional forensics much harder.

Enterprise teams now keep tens of thousands of images in registries like ACR. Without scanning, it becomes almost impossible to know which image versions contain critical vulnerabilities and where those images are running. A vulnerable image pushed to ACR can be rolled out to dozens of AKS clusters in minutes via Helm charts or GitOps, and 60% of containers live for 60 seconds or less according to Sysdig's 2025 usage report. If you only scan monthly or rely on manual reviews, you will miss that window.

Compliance adds more pressure. Regulated industries must show continuous monitoring of all production workloads, including containers, to meet standards like PCI DSS, HIPAA, and SOC 2. That requires both scanning and evidence of how you fix what you find.

Traditional VM‑centric vulnerability tools were never designed for this world. They struggle with:

  • Container escape and privilege escalation: Where a process breaks out of a container to the host.

  • Kubernetes‑specific risks: Like misconfigured RBAC, weak Pod Security admission settings, or sensitive tokens baked into images.

  • Ephemeral workloads: That may not exist long enough for an agent to install or a scheduled scan to run.

You need container‑aware scanning that understands Azure's services and Kubernetes' orchestration model, and that can keep up with scalable container security software for DevOps teams and modern cloud runtime security.

Take the 10-Minute Wiz Container Security Tour

In this short interactive tour, you’ll follow a real-world scenario where Wiz identifies exposed containers, visualizes the full attack path, and fixes the issue directly in code—all within minutes.

How Azure container security scanning works

At a high level, Azure container security scanning follows three phases: scan before images are built and pushed, scan images stored in registries like ACR, and monitor containers at runtime.

In the pre‑deployment phase, scanning hooks into CI/CD pipelines to analyze Dockerfiles and images as they are built. This is where issues like vulnerable base images, dangerous Dockerfile instructions, or outdated libraries can be caught early, before they reach any Azure resource.

Once images are in Azure Container Registry, registry scanning continuously analyzes stored images for new vulnerabilities. Even if nothing in your code changes, the CVE (Common Vulnerabilities and Exposures) world keeps moving, so an image that was “clean” last month may be high‑risk today.

Runtime scanning focuses on live containers in AKS, where deep behavioral monitoring (process execution, network activity, file changes) is available. For Azure Container Instances (ACI), runtime coverage typically centers on image and configuration assessment rather than continuous behavioral telemetry.

Under the hood, scanners break images into their container layers and inspect:

  • OS packages

  • Application dependencies

  • Configuration files

  • Embedded files that might contain secrets or malware

They compare these components to vulnerability databases such as the NVD (National Vulnerability Database) and vendor advisories to map known CVEs to what’s inside your containers.

Many modern tools also generate an SBOM (Software Bill of Materials) for each image. An SBOM is a machine‑readable list of all components, versions, and licenses in that image. It’s critical for tracking dependencies across thousands of images and answering quick questions like “Which images use this vulnerable library version?”

Image scanning in Azure Container Registry

Azure Container Registry integrates with Microsoft Defender for Containers to scan images automatically once you enable the Defender for Containers plan in Microsoft Defender for Cloud. After enablement, when you push an image into ACR, Defender triggers container image vulnerability scanning without any extra commands. You can also start scans on‑demand for specific repositories or tags.

During these scans, the service inspects:

  • OS‑level packages like Alpine, Ubuntu, or Debian

  • Language‑specific libraries for Node.js, Python, Java, .NET, etc.

  • Image configuration and metadata

Findings are usually grouped by severity and include remediation guidance, such as upgrading to a safe package version or switching to a newer base image.

Some setups extend this with quarantine policies. For example:

  • Quarantine policy: Any image with a critical vulnerability is automatically flagged and blocked from deployment to AKS.

  • Approval workflow: Security or platform teams must approve the image after it is fixed before release.

This ensures that risky images cannot silently flow from Azure Container Registry into production clusters.

Runtime scanning in Azure Kubernetes Service

Runtime scanning in AKS watches what containers actually do once they start. Many issues only appear under real load or when an attacker interacts with the system.

Runtime tools observe:

  • Process execution: Unexpected binaries starting, shell access inside containers, or attempts to modify sensitive paths.

  • Network activity: Strange outbound connections, lateral movement between pods, or traffic to known malicious domains.

  • File system changes: Unexpected file writes in read‑only paths, dropped binaries, or tampering with configuration files.

These behaviors are then matched against known attack patterns like:

  • Privilege escalation attempts

  • Lateral movement across nodes

  • Data exfiltration from databases or storage

Monitoring container‑to‑container traffic and connections to external services is especially important in Kubernetes, where microservices often talk over internal networks. A compromised pod should not be able to freely explore your cluster internals or VNet. Network policies, namespace segmentation, and service mesh controls should restrict pod-to-pod communication and prevent unauthorized access to other workloads or Azure services.

Runtime context then feeds back into vulnerability findings. For example:

  • A high‑severity CVE in a library that is never loaded at runtime might be lower priority.

  • A medium CVE in a container that is internet‑facing, runs as root, and talks to a production database becomes top priority.

This link between “what is vulnerable” and “what is actually exploitable” is what turns raw findings into actionable cloud runtime security.

Integration with Azure DevOps and GitHub Actions

To really shift left, scanning needs to run where developers already work: in Azure DevOps pipelines and GitHub Actions.

Typical integration points include:

  • After the image is built but before it is pushed to ACR

  • As a gate before deploying to AKS or ACI

  • On pull requests when Dockerfiles or Kubernetes manifests change

Policies can enforce rules such as:

  • Block builds when any critical vulnerability is found in the image

  • Warn only on medium issues in dev environments

  • Require security approval for production releases that fail certain checks

The pipeline then becomes a security gate that is automated and predictable, rather than a last‑minute manual review.

Good integrations also close the feedback loop. Developers see scan results right in their pipeline logs or PR checks with:

  • File and line where the issue originates

  • CVE details and recommended fixed versions

  • Links to documentation or internal runbooks

Types of Azure container security scanning approaches

There is no single "right" way to scan containers in Azure. In practice, teams use a mix of agent‑based, agentless, and API‑driven approaches, each with strengths and tradeoffs.

Agent‑based methods focus on deep runtime visibility. Agentless methods emphasize coverage and low friction by relying on Azure APIs and snapshots. Many organizations run both: agentless scanning everywhere, and selective agents where real‑time behavior is most critical.

Native Azure scanning vs third-party platforms

Microsoft Defender for Containers provides native integration with Azure Container Registry and AKS. It scans images automatically, integrates with Azure Policy, and surfaces findings in Microsoft Defender for Cloud—ideal for Azure-only environments.

Third-party platforms (such as Wiz, Aqua, Prisma Cloud, and Sysdig) offer multi-cloud coverage, graph-based risk context that correlates vulnerabilities with exposure and permissions, code-to-cloud tracing, and advanced runtime detection using eBPF.

Choose native Azure scanning for single-cloud, compliance-focused use cases. Choose third-party platforms when you need multi-cloud visibility, risk prioritization beyond CVSS scores, or deep integration with developer workflows.

Agent-based scanning

Agent‑based scanning deploys sidecars or daemons alongside workloads to monitor system calls, processes, network connections, and file operations in real time—powerful for detecting sophisticated attacks.

Tradeoffs include operational overhead (deployment, upgrades, monitoring), performance impact (CPU and memory consumption), and potential coverage gaps on misconfigured or autoscaled nodes.

Best for environments requiring high‑fidelity runtime visibility where you can tolerate the operational cost.

Agentless scanning

Agentless scanning uses Azure APIs, snapshots, and registry access to analyze container images and correlate resources without deploying code on your nodes.

Key advantages: fast deployment, broad coverage across all subscriptions, no performance impact on workloads, and no agent maintenance.

The main limitation is reduced real‑time behavioral monitoring. Agentless scanning sees what's inside containers and how they're exposed, but not every system call at runtime.

API-based registry scanning

API‑based registry scanning integrates directly with Azure Container Registry via APIs to pull image manifests and layers, analyze them for vulnerabilities and misconfigurations, and trigger on new pushes or schedules.

Benefits: early detection before deployment, cross‑registry coverage (Azure, Docker Hub, private registries), and comprehensive scanning of both tagged releases and digest-referenced images.

Registry scanning is often your first and most important defense line, ensuring only reasonably safe images reach AKS or ACI.

Key capabilities to evaluate in container scanning solutions

Not all container vulnerability scanning tools are equal. When you evaluate solutions for Azure, focus on capabilities that support the entire lifecycle and plug into both security and DevOps workflows.

Comprehensive vulnerability detection

A useful scanner should cover:

  • OS-level vulnerabilities: Flaws in base distributions such as Alpine, Ubuntu, or RHEL.

  • Application dependencies: Vulnerabilities in npm, pip, Maven, NuGet, and other ecosystems.

  • Embedded secrets: Hardcoded passwords, API keys, SSH keys, and certificates in image layers.

  • Malware detection: Known malicious binaries or signatures inside the image.

  • Misconfigurations: Dangerous settings like running as root, privileged containers, or wide‑open ports.

Scans must traverse all container layers, not just the final assembled image, and support continuous rescanning when new CVEs appear or vulnerability databases are updated.

Risk-based prioritization and contextual analysis

Raw severity scores like CVSS do not tell you how dangerous a vulnerability is in your specific Azure environment. Important risk factors include:

  • Network exposure: Is the container internet‑facing, or only reachable from a private subnet?

  • Data access: Does it talk to production databases or handle sensitive PII/PHI/PCI data?

  • Identity permissions: Does its identity have broad privileges that enable lateral movement?

  • Exploit likelihood: Is the CVE in CISA's KEV catalog or does it have a high EPSS score? Prioritize CVEs with EPSS scores above 0.5 and those in the KEV catalog.

Attack path analysis combines these factors to show realistic breach paths. By focusing triage on real attack paths, you cut down alert fatigue and work on vulnerabilities that actually matter.

Remediation guidance and automation

Good solutions provide:

  • Concrete upgrade guidance: Exact package or image versions to move to.

  • Automated fixes: Generated pull requests that update Dockerfiles, Helm charts, or dependency files.

  • Base image advice: Suggestions to move to safer base images when problems are in the foundation layer.

  • Workflow integration: Direct links into Jira, ServiceNow, or similar systems to track remediation.

Compliance and policy enforcement

Look for support for CIS Benchmarks, PCI DSS, HIPAA, and SOC 2. Policy‑as‑code frameworks let you codify your own standards on top of these.

Container scanning also supports modern supply chain security frameworks. Pre-deployment image scanning, SBOM generation, and image signing align with NIST SSDF practices and help achieve SLSA Level 2 and Level 3. Audit trails of scans, decisions, and fixes prove that you not only found issues but also acted on them.

Implementation challenges and best practices

Rolling out container scanning in Azure at scale is not just a tooling decision. It also requires process changes and collaboration between Security, Cloud, and DevOps teams.

Below are common roadblocks and patterns that help you avoid them.

Managing scan velocity and pipeline performance

The first tension you will hit is: “How deep can we scan without breaking our build times?”

To keep pipelines fast while still scanning well:

  • Parallel scanning: Run scans in parallel steps where possible instead of serially.

  • Incremental scanning: Only rescan changed layers or dependencies, not the entire world.

  • Scan caching: Cache scan results for popular base images by digest (not by tag) so you do not re‑scan immutable image layers for every build.

  • Selective scanning: Use deeper scans for production branches and lighter rules for feature branches.

You should also set reasonable timeouts so that a stuck scan does not block the entire pipeline. The goal is to preserve the flow for developers while still enforcing non‑negotiable security checks.

Reducing false positives and alert noise

If developers and SREs feel that most alerts are bogus, they will start ignoring all of them. That is dangerous.

To improve signal‑to‑noise:

  • Verify exploitability: Correlate vulnerabilities with runtime context, exposure, and data access instead of flagging everything by default.

  • Environment-specific filtering: Downgrade or suppress low‑risk issues in dev and test environments.

  • Risk-based thresholds: Only raise blocking alerts for combinations that truly matter (for example, critical CVE + internet‑exposed + high‑privilege identity).

  • Exception management: Let teams formally accept certain risks with documented justification and expiration dates.

Over time, keep tuning rules based on feedback. Contextual analysis is your best friend here because it lets you filter out issues that are not reachable or exploitable in real life.

Establishing clear ownership and accountability

A frequent sticking point is “who fixes this vulnerability?”—is it the security team, the platform team, or the application team?

Best practice is to:

  • Map containers to applications, repositories, and owning teams using labels, tags, and code‑to‑cloud tracing.

  • Define SLAs for remediation based on severity and risk (for example, critical exploitable issues fixed in production within X days).

  • Establish security champions inside development teams who can interpret findings and coordinate fixes.

  • Track remediation progress and show each team its own backlog and burn‑down.

Shared context and SLAs: A unified security graph that maps images → workloads → repositories → teams enables risk‑based SLAs, targeted routing, and measurable burndown. For example, when a critical CVE is discovered in a base image, the platform can automatically identify all affected running containers, trace them back to their source repositories, assign remediation tickets to the owning teams, and track progress against SLA deadlines—all without manual spreadsheet work.

With clear ownership, security becomes a shared responsibility instead of a constant handoff problem.

Securing the container supply chain

Many risks enter through base images and third‑party components that teams pull from public registries.

To reduce this supply chain risk:

  • Use trusted sources: Only allow images from vetted registries and official publishers.

  • Hardened base images: Starting from hardened, near‑zero‑CVE base images (such as distroless images, Alpine minimal, or vendor-hardened distributions) reduces noise and speeds compliance in regulated environments. Fewer packages mean fewer vulnerabilities to triage and patch.

  • Sign images: Use image signing (for example, Notary, Cosign) to verify integrity before deployment.

  • Scan everything: Treat third‑party images like your own—scan them before they are used in builds.

  • Run private registries: Mirror and curate base images into private ACR registries and only permit those for production.

Supply chain security is about controlling what gets into your environment in the first place, not just fixing after the fact.

Business and security benefits of effective container scanning

Done well, Azure container security scanning does more than reduce CVE counts. It changes how you manage risk, build software, and operate your cloud.

Here are the main outcomes teams typically see as their programs mature.

Reduced security incidents and breach prevention

Proactive vulnerability detection cuts off many attacks before they start. If a critical container escape bug is fixed across images and clusters quickly, attackers never get the chance to exploit it.

Catching issues before they are deployed reduces emergency patching and late‑night incident calls. When issues do reach production, strong scanning and runtime monitoring help you detect and contain them early, protecting sensitive data and keeping services online.

Accelerated compliance and audit readiness

Continuous container image vulnerability scanning and policy enforcement gives you a real‑time view of compliance instead of a yearly surprise.

Automated reports replace manual spreadsheet exercises. You can show auditors:

  • How you scan images in ACR and workloads in AKS/ACI.

  • How you prioritize and fix findings.

  • How long vulnerabilities remain open by severity.

This reduces audit preparation time and makes it easier to pass reviews for frameworks like PCI, HIPAA, and SOC 2.

Improved developer productivity and collaboration

When vulnerabilities are found early in code or image build, fixes are cheaper and less disruptive. Developers get immediate feedback tied to the code they just wrote or the Dockerfile they just edited.

Security shifts from being a last‑minute gatekeeper to a set of guardrails integrated into CI/CD. That improves the developer experience and reduces friction between security and engineering.

AppsFlyer is a good example here. By centralizing visibility across their cloud and containers, they gave both dev and security teams a shared, contextual view of risk. That common language allowed them to remediate faster and avoid long, unclear back‑and‑forth conversations.

Operational efficiency and cost optimization

Consolidating multiple point tools into a unified container scanning and cloud security platform simplifies operations. Teams no longer have to log into several systems and manually correlate results.

Automated policy enforcement cuts down on manual reviews and one‑off security checks. Preventing vulnerable or misconfigured images from entering production also means you waste fewer resources on unsafe workloads and avoid the large costs associated with breaches, such as incident response, regulatory fines, and brand damage.

How Wiz strengthens Azure container security with unified visibility

Wiz strengthens Azure container security by connecting container vulnerabilities to the real context that determines risk—network exposure, identity permissions, sensitive data, and misconfigurations across your cloud environment. Instead of long CVE lists, teams get clear, attack-path-driven priorities that focus remediation on what actually matters.

With agentless scanning across ACR and AKS, code-to-cloud traceability through Wiz Code, hardened base images with WizOS, and runtime threat detection via Wiz Defend, Wiz helps security and engineering teams prevent, prioritize, and remediate container risk from build through production.

If you’re ready to reduce noise, eliminate blind spots, and secure Azure containers with unified visibility, request a demo to see Wiz in action.

Agentless full stack coverage of your Azure workloads

Learn why CISOs at the fastest growing organization choose Wiz to get complete visibility into their entire Azure environment.

Pour plus d’informations sur la façon dont Wiz traite vos données personnelles, veuillez consulter notre Politique de confidentialité.