AWS Security Hub, Decoded

AWS Security Hub, Decoded

A deep, engineer-level walkthrough of how AWS Security Hub aggregates, normalizes, correlates, and automates response across every account and region in an AWS organization — internals, trade-offs, and the patterns that separate a noisy dashboard from a real detection-and-response backbone.

If you’ve already worked with GuardDuty, Inspector, Macie, IAM Access Analyzer, and Config, you’ve noticed the problem Security Hub exists to solve: every one of those services speaks its own dialect, ships its own console, and generates its own stream of alerts. A 200-account organization running five detection services produces five different noise floors that no single security engineer can watch at once. Security Hub is AWS’s answer — not a new detector, but a normalization and orchestration layer that sits above all of them. This walkthrough assumes you already understand what each underlying service does; the focus here is what happens once their findings hit Security Hub, how that pipeline is built internally, where it breaks under scale, and how mature security teams actually operate it in production.

01

AAdvanced Core Concepts

Skipping the basics — this is the model experienced engineers actually reason with when they design a Security Hub deployment.

The AWS Security Finding Format (ASFF) is the real product

Security Hub’s core contribution isn’t detection — it’s a schema. Every finding, whether it originates from GuardDuty, Inspector, Macie, a third-party tool like Prisma Cloud, or a custom Lambda function, is translated into the AWS Security Finding Format before it lands in Security Hub. ASFF defines a fixed set of top-level fields: SchemaVersion, Id, ProductArn, GeneratorId, Types, Severity, Resources, Compliance, Workflow, and RecordState, among others. Once you understand ASFF, you stop thinking of Security Hub as “a dashboard” and start thinking of it as a schema-enforced event bus for security telemetry — the same mental model you’d apply to a well-designed microservices contract.

Analogy

Think of ASFF the way you’d think of a universal power adapter. GuardDuty, Inspector, and a third-party scanner are appliances built in different countries with different plugs. ASFF isn’t another appliance — it’s the adapter socket that lets every one of them plug into the same wall outlet (Security Hub), so the outlet only has to understand one plug shape, not fifty.

Findings vs. Insights vs. Standards — three different abstractions

Advanced users need to keep three Security Hub abstractions distinct, because they’re queried and billed differently. A finding is a single normalized event about a single resource at a single point in time. An insight is a saved query that groups findings by an attribute (for example, “EC2 instances with more than 3 critical findings”) and tracks how that group changes over time — insights are aggregation views, not new findings. A standard (like CIS AWS Foundations Benchmark, PCI DSS, or AWS Foundational Security Best Practices) is a curated rule set that Security Hub runs against your environment, each rule producing its own control-level findings with a pass/fail/warning outcome. Engineers who conflate insights with standards routinely misconfigure Security Hub’s compliance scoring.

Cross-account and cross-region aggregation are two independent axes

Security Hub scales along two orthogonal dimensions. Cross-account aggregation uses AWS Organizations: you designate a delegated administrator account, and every member account’s findings replicate into it automatically once membership is enabled — no per-account IAM role juggling required, unlike the pre-Organizations invite/accept model. Cross-region aggregation is a separate mechanism: Security Hub findings are regional by default, so a second feature, “finding aggregation,” lets you nominate one aggregation Region that pulls findings from every other enabled Region into a single linked view. Teams that only configure one axis end up with a false sense of centralized visibility — for example, org-wide aggregation in us-east-1 while workloads quietly generate findings in eu-west-1 that never get pulled in.

Concept

ASFF Normalization

Every product’s raw output is mapped into a fixed schema before storage — this is what makes cross-product correlation possible at all.

Concept

Delegated Administrator

One member account (not necessarily the Organizations management account) is granted authority to view and act on findings across the whole org.

Concept

Finding Aggregation Region

A single Region designated to pull read-only copies of findings from every other linked Region for a unified view.

Concept

Automation Rules

Declarative, no-Lambda rules that match on finding criteria and automatically mutate fields like severity, workflow status, or notes.

02

IInternal Working

What actually happens between “GuardDuty detects an anomaly” and “a finding shows up correlated with three other signals in your Security Hub console.”

Security Hub does not poll other services. Integrated AWS services push findings to Security Hub via an internal service-to-service API call the moment they’re generated — this is why GuardDuty findings typically appear in Security Hub within seconds, not minutes. Third-party and custom products instead call the public BatchImportFindings API directly, which is the same mechanism Security Hub exposes to you for custom detections written in Lambda.

Once a finding arrives, Security Hub runs it through a normalization and deduplication pipeline. Deduplication uses a composite key derived from ProductArn, GeneratorId, and the resource identifier — if the same underlying issue is reported again (say, GuardDuty re-emits an ongoing port-scan finding), Security Hub updates the existing finding’s UpdatedAt and Count fields rather than creating a duplicate record. This is why a single EC2 instance under sustained attack shows one finding with an incrementing count, not thousands of rows.

After deduplication, findings pass through your account’s active automation rules, which are evaluated in a defined priority order and can auto-suppress, auto-escalate severity, or auto-annotate before a human ever sees the finding. Only after this pipeline completes does the finding become queryable through the console, the Findings API, or — critically — through the Amazon EventBridge default event bus, which is how most production automation actually consumes Security Hub output.

graph LR
    A[GuardDuty] -->|push| N[ASFF Normalization]
    B[Inspector] -->|push| N
    C[Macie] -->|push| N
    D[Config Rules] -->|push| N
    E[Third-Party / Custom via BatchImportFindings] -->|push| N
    N --> DEDUPE[Deduplication Engine]
    DEDUPE --> RULES[Automation Rules Engine]
    RULES --> STORE[(Security Hub Finding Store)]
    STORE --> EB[Amazon EventBridge]
    STORE --> CONSOLE[Security Hub Console / API]
    EB --> SOAR[SOAR / Lambda / Step Functions]
    EB --> TICKET[Ticketing Integration]
        

Fig 1 — Finding ingestion pipeline from source product to downstream automation

!
Gotcha

Automation rules run at ingestion time, in account, before cross-account aggregation copies the finding to the delegated administrator. A rule that suppresses a finding in the member account means the delegated admin never sees it at all — not even as “suppressed.” Central visibility and per-account automation rules are in tension by design.

03

DData Flow & Finding Lifecycle

Every finding carries two independent state machines, and confusing them is one of the most common operational mistakes on a Security Hub team. RecordState is set by the producing service and is either ACTIVE or ARCHIVED — it reflects whether the underlying condition still exists (for example, GuardDuty archives a finding once the malicious IP stops communicating). Workflow.Status, by contrast, is a human/automation-managed field with four values — NEW, NOTIFIED, SUPPRESSED, and RESOLVED — and it reflects where the finding sits in your team’s response process, entirely independent of whether AWS still considers the condition active.

1

Ingestion

Finding arrives via push integration or BatchImportFindings; RecordState set to ACTIVE, Workflow.Status defaults to NEW.

2

Triage

Analyst or automation reviews the finding, sets Workflow.Status to NOTIFIED once a ticket or alert has been raised.

3

Response

Remediation is applied (manually or via Systems Manager Automation / Lambda triggered off the EventBridge event).

4

Closure

Workflow.Status set to RESOLVED by the responder, or SUPPRESSED if it’s accepted risk or a known false positive.

5

Archival

Independently, the source product flips RecordState to ARCHIVED once it no longer detects the underlying condition, regardless of Workflow.Status.

Compliance-standard findings follow a related but distinct lifecycle keyed on Compliance.Status (PASSED, FAILED, WARNING, NOT_AVAILABLE), which is recomputed on a schedule — typically every 24 hours or on resource change for Config-backed checks — rather than being event-driven like GuardDuty findings. This scheduling difference is why a fixed misconfiguration can take up to a day to show as PASSED in your compliance score even though the resource itself was corrected immediately.

04

TAdvantages, Disadvantages & Trade-offs

Advantages

  • Single ASFF schema lets you build one downstream pipeline (SIEM, ticketing, SOAR) instead of one per security product.
  • Native Organizations integration removes cross-account IAM role sprawl for aggregation.
  • Automation rules provide no-code triage logic, reducing custom Lambda maintenance for simple routing decisions.
  • Continuous compliance scoring against CIS, PCI DSS, NIST 800-53, and the AWS Foundational Security Best Practices standard without third-party GRC tooling.

Disadvantages / Trade-offs

  • Security Hub only stores and forwards findings — it does not eliminate the need for a SIEM if you need long-term retention beyond 90 days or complex correlation logic.
  • Per-finding-ingestion pricing means noisy detectors (especially Config-backed standards checks at scale) can produce a non-trivial bill if left unmonitored.
  • Automation rules evaluate per-account before aggregation, so org-wide suppression logic must be deployed consistently everywhere, typically via StackSets — a single missed account breaks the model.
  • Not a real-time stream in the strictest sense for compliance checks, which run on a scan cadence rather than continuously.
“Security Hub doesn’t replace your detectors — it replaces the four browser tabs you used to keep open to watch them.”
05

PPerformance & Scalability

At organization scale — hundreds of accounts, multiple Regions, several enabled standards — the practical scalability question isn’t “can Security Hub handle the volume,” it’s “how do you keep the signal usable at that volume.” Security Hub itself is a managed, serverless service with no capacity you provision; the scaling concerns that matter operationally are API quotas, ingestion cost, and query performance at the aggregation point.

BatchImportFindings and BatchUpdateFindings both have request and item-count quotas per account per Region — a custom detector that fires per-object in an S3 bucket scan needs to batch findings (up to 100 per call) rather than calling the API once per object, or it will throttle well before it finishes a large scan. On the read side, the aggregation Region’s finding store becomes the hot path for every dashboard, insight, and SIEM poller in a large org; teams that query it with broad, unindexed filter combinations (for example, filtering only on free-text Description) see materially slower response times than teams that filter on indexed fields like ResourceType, SeverityLabel, or ComplianceStatus.

100
FINDINGS PER BATCHIMPORT CALL
1
AGGREGATION REGION PER ACCOUNT
~24H
TYPICAL STANDARDS RE-SCAN CADENCE

Netflix’s security engineering team, in public talks on their detection infrastructure, has described the same general pattern independent of specific tooling: centralized finding stores at scale require active suppression and grouping strategies, or analyst attention collapses under alert volume long before any API limit is hit. The lesson generalizes directly to Security Hub — the scalability bottleneck is almost always human triage capacity, not the service’s throughput.

06

HHigh Availability & Reliability

Security Hub is a Regional service built on AWS’s standard multi-AZ managed-service model — you don’t provision or manage redundancy yourself, and a single AZ failure within a Region has no visible effect on the service. The reliability question that actually requires design decisions is Regional and cross-account, not AZ-level.

Because finding aggregation designates exactly one Region as the aggregation target, that Region becomes a soft dependency for your org-wide view: if the aggregation Region has a service event, you temporarily lose the unified dashboard even though every source Region keeps ingesting and storing its own findings independently — nothing is lost, but visibility degrades to per-Region views until the aggregation Region recovers. The same logic applies to the delegated administrator account: if it’s suspended or removed from the Organization without a transition plan, aggregation breaks until a new delegated administrator is designated, which is an active configuration step, not automatic failover.

Reliability pattern used by mature security teams

Treat the delegated-administrator designation and aggregation-Region choice as infrastructure-as-code, not console clicks — deployed via StackSets or a Landing Zone Accelerator-style pipeline, so both can be reconstructed from source control if the account is ever compromised or replaced.

07

SSecurity of Security Hub Itself

Security Hub becomes one of the most sensitive services in your account inventory precisely because it aggregates evidence of everything else that’s gone wrong — which makes its own access control a high-value target. The delegated administrator account can view and, depending on permissions granted, act on findings across every member account, so an over-permissioned IAM principal in that single account effectively has organization-wide security visibility and remediation power.

The finer-grained control most teams under-use is resource-level and condition-based IAM policy on the Security Hub API itself — scoping securityhub:BatchUpdateFindings so that a given role can only change Workflow.Status, not Severity, prevents a compromised automation role from silently downgrading a critical finding rather than just closing tickets. Similarly, because findings frequently contain sensitive metadata — IP addresses, IAM principal ARNs, S3 object keys flagged by Macie — Security Hub data at rest is encrypted using AWS-owned or customer-managed KMS keys, and teams handling regulated data typically move to customer-managed keys specifically to control key rotation and access auditing independently of the default AWS-managed key policy.

Best Practice

Grant securityhub:BatchUpdateFindings only to the automation role that executes your remediation runbooks, and grant humans read access plus a narrowly scoped “add note / change workflow status” permission set — never blanket securityhub:* to an analyst role.

08

MMonitoring, Logging & Metrics

Security Hub’s own control-plane activity — enabling a standard, disabling an integration, updating a finding — is itself logged to AWS CloudTrail, which matters because it lets you detect an attacker attempting to suppress evidence of their own intrusion by disabling Security Hub or bulk-archiving findings, a real technique observed in incident response engagements. Treat CloudTrail events for securityhub:UpdateFindings, securityhub:DisableSecurityHub, and securityhub:BatchDisableStandards as security-relevant signals in their own right, not just audit trail noise.

For finding-level observability, the EventBridge integration is the real monitoring backbone: every finding creation and update emits an event on the default bus, which teams route into a SIEM (Splunk, Datadog, or Amazon Security Lake) for long-term retention and correlation beyond Security Hub’s own 90-day console retention window. Custom CloudWatch metrics aren’t natively emitted per finding, so teams that want dashboards of “findings by severity over time” typically build a small Lambda consumer off the EventBridge bus that writes custom metrics, rather than polling the Findings API on a schedule.

SignalSourcePrimary Use
Finding created/updated eventsEventBridge default busReal-time SOAR triggers, SIEM ingestion
Control-plane API callsAWS CloudTrailDetecting tampering with Security Hub itself
Compliance score changesStandards subscription re-scanTrend reporting, audit evidence
Custom detection metricsLambda consumer + CloudWatchDashboards, alarm thresholds
09

DDeployment & Cloud Architecture

The production-grade deployment pattern for Security Hub in a multi-account organization follows a specific sequence: designate a delegated administrator account (commonly the same account used for GuardDuty and Config aggregation, often a dedicated “security-tooling” account rather than the Organizations management account itself); enable Security Hub organization-wide with auto-enable for new accounts so nothing joins the org unmonitored; choose and configure one finding-aggregation Region; and enable the standards (CIS, AWS FSBP, PCI DSS, NIST 800-53) centrally so every member account inherits the same compliance baseline rather than each team choosing its own.

graph TD
    subgraph Org["AWS Organization"]
        MGMT[Management Account]
        MEM1[Member Account 1]
        MEM2[Member Account 2]
        MEM3[Member Account N]
    end
    MGMT -->|delegates admin| SEC[Security Tooling Account - Delegated Admin]
    MEM1 -->|findings replicate| SEC
    MEM2 -->|findings replicate| SEC
    MEM3 -->|findings replicate| SEC
    SEC -->|aggregates| REGION[Aggregation Region View]
    SEC --> LAKE[Amazon Security Lake / SIEM]
    SEC --> SOAR[Automated Remediation]
        

Fig 2 — Org-wide Security Hub deployment topology with a dedicated security tooling account

Teams running AWS Control Tower get much of this scaffolding pre-wired, since Control Tower’s Landing Zone natively provisions a delegated administrator pattern for its core security services. Increasingly, mature deployments also route Security Hub findings into Amazon Security Lake, which normalizes them further into the Open Cybersecurity Schema Framework (OCSF) alongside VPC Flow Logs, CloudTrail, and Route 53 resolver logs — extending correlation beyond what Security Hub’s own console can do, at the cost of an additional data pipeline to operate.

10

PDesign Patterns & Anti-patterns

PATTERN-01 Recommended
Pattern

Automation-rule triage funnel: use automation rules purely for deterministic, low-risk decisions (auto-suppress known-safe findings, auto-tag by business unit), and reserve human-in-the-loop review for anything touching production-critical resources or high severity.

Why It Works

Keeps the automation layer auditable and simple, while ensuring judgment calls that carry real risk still get a human reviewer before closure.

ANTI-PATTERN-01 Avoid
Anti-pattern

“Enable everything, tune nothing” — turning on every available standard and every product integration org-wide without a suppression strategy, producing a finding volume so large that analysts stop opening the console entirely.

Consequence

Alert fatigue defeats the entire purpose of centralization; a critical finding becomes statistically indistinguishable from routine noise in the same feed.

ANTI-PATTERN-02 Avoid
Anti-pattern

Using Security Hub’s Workflow.Status as your only remediation tracking mechanism, with no ticketing integration — closure state lives only inside the console, invisible to broader engineering workflows and easily overwritten.

Consequence

No audit trail of who resolved what and why survives outside Security Hub itself, which becomes a compliance gap during an actual audit.

11

BBest Practices & Common Mistakes

Best Practice

Auto-enable for new accounts

Configure Security Hub, GuardDuty, and Config together so every new account joining the Organization is monitored from account creation, not after someone remembers to onboard it.

Best Practice

Route findings through EventBridge, not polling

Build automation and SIEM ingestion as EventBridge consumers rather than scheduled Findings API polls — lower latency and no risk of hitting read-side API quotas.

Common Mistake

Ignoring RecordState vs. Workflow.Status

Filtering only on Workflow.Status = RESOLVED without checking RecordState leads teams to believe a threat is gone when the underlying condition may still be ACTIVE.

Common Mistake

Treating compliance score as real-time

Standards checks run on a scan cadence; expecting instant score updates after a fix leads to false alarms during audits.

12

RReal-World & Industry Examples

Large regulated organizations — banks and healthcare providers with hundreds of AWS accounts across business units — commonly cite Security Hub’s PCI DSS and NIST 800-53 standard mappings as the mechanism that lets a central security team produce continuous, org-wide compliance evidence for auditors without manually collecting screenshots from every account owner each quarter, replacing what used to be a spreadsheet-driven, once-a-year exercise with a live, queryable score.

Amazon’s own internal security teams, in public re:Inforce presentations, have described using Security Hub’s custom finding ingestion (via BatchImportFindings) to fold proprietary internal detection tooling into the same ASFF pipeline as GuardDuty and Inspector — a pattern that generalizes well: any organization with an existing home-grown scanner can normalize its output into ASFF rather than building a second, parallel alerting system.

Media and streaming companies operating at Netflix- or Disney-scale infrastructure, where thousands of short-lived accounts and ephemeral workloads are the norm, lean heavily on the auto-enable-for-new-accounts pattern specifically because manual per-account security onboarding simply cannot keep pace with the rate of account creation in a modern microservices organization.

13

FFrequently Asked Questions

Q1Does Security Hub replace GuardDuty, Inspector, or Macie?
No. Security Hub does not perform its own threat detection for those domains — it aggregates, normalizes, and lets you act on findings those services (and others) generate. Disabling GuardDuty does not give you GuardDuty-equivalent detection inside Security Hub.
Q2Can a member account see findings from other member accounts?
No, by default. Only the delegated administrator account has organization-wide visibility. Member accounts see only their own findings unless explicitly granted broader access.
Q3What happens to findings if I disable a standard, like CIS?
Existing findings from that standard remain in your finding store with RecordState ARCHIVED once the standard stops re-evaluating them; Security Hub does not delete historical findings automatically.
Q4Is Security Hub itself a SIEM replacement?
Not fully. It’s a normalization and orchestration layer with limited retention and correlation depth compared to a dedicated SIEM; most mature deployments forward findings into a SIEM or Amazon Security Lake for long-term analysis.
Q5How many aggregation Regions can an account have?
Exactly one. You designate a single aggregation Region that pulls findings from every other linked Region; you cannot fan in to multiple aggregation points simultaneously.
14

SSummary and Key Takeaways

Key Takeaways

  • Security Hub’s core value is the ASFF schema — normalization is the product, not detection itself.
  • RecordState (AWS-managed) and Workflow.Status (human/automation-managed) are independent lifecycles — conflating them is the single most common operational error.
  • Cross-account aggregation (via a delegated administrator) and cross-Region aggregation (via a nominated aggregation Region) are two separate configuration axes that must both be deployed deliberately.
  • Automation rules run per-account, at ingestion time, before cross-account replication — org-wide consistency requires infrastructure-as-code deployment, not manual per-account setup.
  • At scale, the real bottleneck is analyst triage capacity, not API throughput — suppression strategy matters more than raw ingestion limits.
  • EventBridge, not API polling, is the correct integration point for real-time automation and SIEM forwarding.
  • Treat Security Hub’s own control-plane actions (disabling standards, bulk finding updates) as security-relevant CloudTrail signals in their own right.