Glossary/Detection Engineering/CDR vs ADR

CDR vs ADR: Cloud and Application Detection

CDR detects threats against the cloud environment (control plane, workloads, identities), while ADR detects threats inside the running application at runtime.

An attacker steals a developer's access key, assumes an over-permissioned IAM role, and starts enumerating S3 buckets from the control plane. A different attacker sends a crafted request to your public API, triggers a deserialization flaw in the running application, and gets remote code execution inside the process. Both end in a breach. They live at different layers, leave different evidence, and the tool that catches one is mostly blind to the other.

That gap is what CDR and ADR exist to cover. Cloud Detection and Response (CDR) watches the cloud itself: the control plane, the workloads, the identities, the configuration. Application Detection and Response (ADR) watches inside the running application: the code paths, the API calls, the runtime behavior of the process serving requests. They are not competitors and they are not the same product wearing two names. This guide compares them on scope, telemetry, threats, response, and buyer, then covers when to use which and how they sit alongside XDR and CNAPP. One caveat up front: CDR is a settled category, ADR is not. We will be honest about that.

What is CDR (Cloud Detection and Response)?

CDR vs ADR · two layers, two vantage points
Cloud account vs running application
CDR watches the cloud itself. ADR watches inside the code while it executes.
CDR
Cloud Detection and Response
SCOPE
Control plane, workloads, identities, configuration.
TELEMETRY
CloudTrail, Azure and GCP audit logs, Kubernetes audit logs, flow logs, workload runtime events.
CATCHES
IAM abuse, key theft, lateral movement, config drift, exposed services.
SOC + cloud security
ADR
Application Detection and Response
SCOPE
Inside the running application: code paths, request handling, app runtime.
TELEMETRY
In-process instrumentation, runtime agent or eBPF, application and API call traces.
CATCHES
Injection, insecure deserialization, RCE, vulnerable-dependency exploitation, API abuse.
AppSec + DevSecOps (emerging)
Use together A real intrusion crosses layers: steal a key in the cloud (CDR sees it), then exploit the app (ADR sees it). For a cloud-native app exposed to the internet, run both and let XDR correlate the alerts.

CDR is the detection-and-response discipline aimed at the cloud environment itself. It continuously ingests cloud-native telemetry, builds a behavioral baseline, and surfaces threats against the infrastructure, the control plane, the workloads, and the identities that operate them. The full breakdown lives in the Cloud Detection and Response explainer; the short version is that CDR treats the cloud account as the thing being attacked.

Its raw material is the audit and runtime data the cloud emits. AWS CloudTrail and CloudWatch, Azure Activity and Entra ID sign-in logs, GCP Cloud Audit Logs, Kubernetes audit logs, flow logs, and workload runtime events. The detection side, what most people mean by cloud detection, correlates that telemetry to catch things like a new IAM user created outside change control, a role assumed from an unfamiliar geography, a security group opened to the internet, mass enumeration of storage, or a workload reaching out to a known command-and-control host. The response side, cloud response, is the action that follows: revoke a session, quarantine an instance, disable a key, snapshot a disk for forensics, roll back a configuration.

The reason CDR is its own category is that this telemetry does not flow through endpoint or network tooling built for on-premises. Control-plane abuse leaves no process on a host and crosses no network sensor you own. It shows up only as an API call in an audit log. If nothing is reading and correlating those logs, the attack is invisible.

What is ADR (Application Detection and Response)?

ADR is the newer and less-defined of the two. It pushes detection and response into the application runtime, the code that is actually executing while it serves traffic. Instead of reasoning about the cloud account, ADR reasons about what the application does: which functions get called, what user input reaches a dangerous sink, when the process behaves in a way the code was never meant to.

The defining trait is where the sensor sits. ADR instruments the running application from the inside, commonly through an in-process agent, runtime instrumentation, or eBPF at the application layer, so it sees the request as the application sees it. That vantage point lets it catch attacks that look like ordinary traffic from the outside: SQL injection that reaches the database call, an insecure deserialization that turns into remote code execution, exploitation of a vulnerable dependency, server-side request forgery, or API abuse that no signature would flag. It connects an inbound request to the exact code path and outcome it triggered.

Be precise about ADR's status. Gartner tracks it as an emerging capability on the Hype Cycle for Application Security, 2025, with sample vendors rather than a mature market, and the term overlaps with adjacent ideas like runtime application self-protection (RASP) and in-app detection. Definitions still vary by vendor. ADR is a real and useful capability, but it is not a standardized, universally agreed category the way EDR or even CDR now is. Treat product claims accordingly.

CDR vs ADR: the head-to-head comparison

The cleanest way to separate them is by the layer each one watches and the evidence each one produces. CDR lives in the cloud control and infrastructure layer. ADR lives inside the application process. Everything else follows from that.

DimensionCDR (Cloud Detection and Response)ADR (Application Detection and Response)
Scope / layerCloud control plane, workloads, identities, configurationInside the running application: code paths, request handling, app runtime
TelemetryCloudTrail, Azure/Entra and GCP audit logs, Kubernetes audit logs, flow logs, workload runtime eventsIn-process instrumentation, runtime agent or eBPF, application and API call traces
Threats detectedIAM abuse, key theft, lateral movement, config drift, exposed services, crypto-mining workloadsInjection, insecure deserialization, RCE, vulnerable-dependency exploitation, SSRF, API abuse
Response actionsRevoke session, disable key, quarantine instance, snapshot for forensics, roll back configBlock the malicious request, terminate the session or transaction, flag the exploited code path
Typical buyerSOC and cloud security teamsAppSec and DevSecOps teams, sometimes the SOC
Where it sitsAround the cloud account and its infrastructureEmbedded in the application at runtime
MaturityEstablished categoryEmerging, vendor-defined, still standardizing

Read the table as two non-overlapping vantage points. CDR knows an IAM role was assumed from a strange location and started touching storage; it has little idea what happens inside the request a web app processes. ADR knows a request triggered a deserialization gadget and spawned a shell; it has no view of the IAM key that was stolen three steps earlier. The attack that uses both, steal a key in the cloud, then pivot to exploit the app, is exactly the one that needs both lenses.

When to use CDR, ADR, or both

Match the tool to where your risk actually is, not to the longest feature list.

Lead with CDR when your exposure is the cloud account itself: multiple cloud providers, heavy use of managed services, lots of human and machine identities, infrastructure that changes constantly through automation. The threats that keep cloud teams up are credential and key theft, over-permissioned roles, public exposure from a bad configuration, and lateral movement across accounts. None of those require a vulnerability in your code. CDR is the control for them, and for most organizations running production in AWS or Azure it is the first detection capability to get right.

Add ADR when you run custom applications and APIs that are exposed to untrusted input, especially internet-facing ones. Pre-deployment application security testing catches what it can find before release, but it cannot see an exploit attempt against a flaw it missed, or against a dependency that was disclosed after you shipped. ADR is the runtime backstop for that gap: it watches the app while it is live and catches the exploitation attempt as it happens, including attacks against vulnerabilities no scanner flagged.

Use both when you run modern cloud-native applications, your own code, on cloud infrastructure you manage, reachable from the internet. That stack is exposed at both layers, and a real intrusion often crosses between them. CDR without ADR misses the in-app exploit; ADR without CDR misses the cloud-account compromise that set it up. The honest qualifier: ADR is emerging, so evaluate it as a maturing capability, prove the runtime coverage and the performance overhead on your own workloads, and do not retire your other controls on a vendor's promise.

How CDR and ADR overlap with XDR and CNAPP

Neither category lives alone. Two adjacent platforms keep coming up, and it helps to place them.

XDR (extended detection and response) is the correlation layer above all of this. It pulls signals from endpoint, identity, network, cloud, and increasingly application sources into one detection and investigation surface. CDR can be a feed into XDR or a standalone cloud-focused platform; ADR signals, where they exist, are another feed. XDR is not a replacement for either. It is the place their alerts get stitched together with everything else so an analyst sees the kill chain, not seven disconnected alerts. The "steal a key, then exploit the app" scenario is precisely the cross-layer story XDR is meant to assemble.

CNAPP (cloud-native application protection platform) is the consolidation play on the prevention and posture side: it bundles cloud security posture management, cloud workload protection, IAM and entitlement management, and code or pipeline scanning into one platform. The overlap with CDR is real, and many CNAPP suites now include CDR-style runtime detection. The cleanest mental split: CNAPP leans toward finding and fixing risk before it is exploited (misconfigurations, excessive permissions, vulnerable images), while CDR and ADR lean toward catching and stopping an attack while it happens. Posture reduces the attack surface; detection and response handle what gets through it anyway. You want both kinds of control, and the line between the categories is blurring as platforms absorb each other's features.

The takeaway is not which acronym wins. It is coverage. Map your real attack surface to layers, the cloud account, the workloads, the running application, the identities, then make sure something is detecting and able to respond at each layer that carries risk. The acronyms are how the market packages those capabilities, and the packaging is still moving.

The bottom line

CDR and ADR answer the same question, "is something attacking us right now," at two different layers. CDR watches the cloud account: control plane, workloads, identities, configuration, fed by audit and runtime logs, and responds by revoking access, quarantining resources, and rolling back changes. ADR watches inside the running application, instrumented at the process, and catches exploitation of the code itself, injection, deserialization, RCE, API abuse, that looks like normal traffic from the outside.

The choice is not either-or. If your risk is the cloud account, start with CDR. If you run exposed custom applications, add ADR as the runtime backstop your pre-deployment testing cannot provide. If you run cloud-native apps on infrastructure you own, you are exposed at both layers and want both, with XDR to correlate the alerts and CNAPP to shrink the surface they defend. Just keep one fact in view: CDR is a settled category and ADR is still forming, so buy ADR for the capability it actually delivers on your workloads, not for the acronym.

Frequently asked questions

What is the difference between CDR and ADR?

<p>CDR (Cloud Detection and Response) detects and responds to threats against the cloud environment: the control plane, workloads, identities, and configuration, using cloud audit and runtime telemetry. ADR (Application Detection and Response) detects and responds to threats inside the running application, using in-process instrumentation to catch app-layer attacks like injection and remote code execution. CDR watches the cloud account; ADR watches the code while it executes.</p>

Is ADR a replacement for CDR?

<p>No. They cover different layers and catch different attacks. CDR cannot see an exploit inside an application request, and ADR cannot see a stolen cloud key or an over-permissioned IAM role. For a cloud-native application exposed to the internet, you generally want both, because a real intrusion often crosses from the cloud layer into the application layer.</p>

Is ADR an established product category?

<p>Not yet. Gartner tracks Application Detection and Response as an emerging capability on its Application Security Hype Cycle, with sample vendors rather than a mature market, and definitions still vary between vendors. The term also overlaps with runtime application self-protection (RASP) and other in-app detection ideas. ADR is a genuine and useful capability, but it is less standardized than CDR or EDR, so vendor claims need to be tested against your own workloads.</p>

What threats does CDR detect that ADR cannot?

<p>Cloud-layer threats that never touch your application code: stolen access keys, assumed IAM roles used from unusual locations, new users or roles created outside change control, security groups opened to the internet, configuration drift, mass storage enumeration, and crypto-mining workloads. These appear only in cloud audit logs and control-plane telemetry, which ADR does not ingest.</p>

What threats does ADR detect that CDR cannot?

<p>Attacks that exploit the application from inside a legitimate-looking request: SQL injection that reaches a database call, insecure deserialization leading to remote code execution, exploitation of a vulnerable dependency, server-side request forgery, and API abuse. From the cloud control plane these look like normal traffic, so CDR does not catch them; ADR sees them because it is instrumented inside the running process.</p>

How do CDR and ADR relate to XDR and CNAPP?

<p>XDR is the correlation layer that ingests signals from many sources, including cloud and application, and stitches them into one investigation surface; CDR and ADR can both feed it. CNAPP bundles cloud posture, workload protection, and pipeline scanning to find and fix risk before exploitation, and many CNAPP suites now include CDR-style detection. Posture tools shrink the attack surface; CDR and ADR catch what gets through.</p>

Practice track
SOC Analyst Tier 1
Build your foundational skills to monitor, detect, and escalate security alerts. This track includes essential tools, basic log analysis, and introductory incident response labs.
Browse SOC Analyst Tier 1 Labs โ†’