SaveMyCert
Log in
5 of 5 free questions left today·for 30 a day
SCS-C03 · Domain 3

Infrastructure Security practice questions

Infrastructure Security is worth 18% of the SCS-C03 exam — the 2nd-heaviest of the 6 domains. Security controls for network edge services, compute workloads, and network traffic — from WAF rules to hardened AMIs to segmentation. 6 fully worked examples are further down this page, answers included.

Exam weight
18%
the 2nd-heaviest of the 6 domains
Questions
114
across 3 topics
Free, no account
5/day
sign up free to remove the cap
Explanations
Every option
right and wrong

Build a practice session

5 free questions left today.

Domains

How many?

Mode

Ready when you are

10 fresh questions drawn across 1 of 6 domains, in Learn mode.

Focused review

Every question you answer incorrectly, and every question you flag while practising, is saved here automatically. Finish a session and you can come back to re-drill just those.

6 sample Infrastructure Security questions, fully explained

Questions from the SCS-C03 bank mapped to domain 3, with the answer key and the reasoning behind every option. None of them repeat the examples on the main SCS-C03 practice page.

Question 1Infrastructure Security

An e-commerce site serves traffic through a CloudFront distribution in front of an Application Load Balancer. During a recent DDoS attack, the distribution's data transfer charges and the Auto Scaling group behind the ALB both spiked. Finance wants charges like these credited after future attacks, and the team wants DDoS experts available during an event. The company has Enterprise Support. What should the team do?

Choose one.

  • a
    Subscribe to Shield Advanced and protect the distribution, relying on it to cover charges on its ALB origin.

    Cost protection follows the protected-resource list. Protecting the distribution does not extend to its origin, so the Auto Scaling charges behind the ALB would not be credited.

  • b
    Subscribe to Shield Advanced and add both the distribution and the ALB as separate protected resources. Correct

    Each resource whose charges spiked is a protection, so attack-driven charges on either can be claimed under cost protection, and the Shield Response Team is available because the company has Enterprise Support.

  • c
    Keep Shield Standard and add the anti-DDoS managed rule group to web ACLs on the distribution and the ALB.

    The Anti-DDoS managed rule group mitigates HTTP floods on both resources, but Shield Standard offers no cost protection and no Shield Response Team, so neither requirement is met.

  • d
    Subscribe to Shield Advanced and protect the ALB, relying on Shield Standard at the edge for the distribution.

    Shield Standard still mitigates attacks on the distribution, but it gives no cost protection, so the distribution's attack-driven data transfer charges would not be credited.

The concept

Shield Advanced cost protection credits scaling charges (for example data transfer, Auto Scaling, Route 53 queries) caused by a DDoS attack only on resources that are protected by Shield Advanced. The Shield Response Team (SRT) is available to subscribers with Business or Enterprise Support.

Why that’s the answer

Both the distribution and the ALB incurred attack-driven charges, so both must be Shield Advanced protected resources for cost protection to cover them, and the Enterprise Support plan gives Shield Response Team access. Protecting the distribution does not cover its origin, and leaving the distribution on Shield Standard leaves its data transfer charges uncovered. The Anti-DDoS managed rule group on Shield Standard mitigates floods on both resources but provides neither cost protection nor SRT access.

How to reason it out
  1. Map the requirements: credits for attack-driven charges and expert help mean Shield Advanced.
  2. List every resource whose charges spiked: the distribution and the ALB.
  3. Recall that cost protection applies only to protected resources, so add each of them.
  4. Confirm the support plan is Business or Enterprise so the SRT can be engaged.

Exam tip: Shield Advanced cost protection follows the protected-resource list: every resource whose charges you want credited must be added as a protection.

Edge Security on AWS: WAF, Shield, and CloudFront as Controls — the lesson that teaches this.

Question 2Infrastructure Security

A login endpoint behind a CloudFront distribution with an AWS WAF web ACL is hit by credential stuffing. Each request is a well-formed POST to /login that passes every content rule, but a few hundred client addresses each send far more attempts than a person could. The team must stop the abusive clients now without slowing browsing elsewhere on the site. Which rule should they add?

Choose one.

  • a
    A rate-based rule with a Block action, keyed on source IP, scoped down to POST requests for /login. Correct

    Counting per viewer address and only for POST /login blocks the clients that exceed the threshold on the login path while other pages are never counted. On a CloudFront web ACL the source IP is the viewer's address.

  • b
    A rate-based rule with a Block action, keyed on source IP, with no scope-down statement on the path.

    Without a scope-down statement every request counts toward the limit, so heavy but legitimate browsing could trip it and blocked clients lose the whole site rather than just the login path.

  • c
    A rate-based rule with a Count action, keyed on source IP, scoped down to POST requests for /login.

    Count records matches without stopping them, so the attack continues; the team needs the abusive clients stopped now.

  • d
    A rate-based rule with a Block action, keyed on the X-Forwarded-For header, scoped down to POST /login.

    On a web ACL attached to CloudFront the client sends any X-Forwarded-For value it likes, so attackers can rotate the header to stay under the limit. Forwarded-IP keys suit a web ACL behind a trusted proxy.

The concept

A rate-based rule counts requests per aggregation key over a time window and acts on keys above the threshold; a scope-down statement limits which requests are counted. At a CloudFront web ACL, the source IP is the viewer address.

Why that’s the answer

Credential stuffing is a volume problem on valid requests, so a rate-based rule with Block, keyed on the viewer address and scoped down to POST /login, stops the abusive clients while other pages are never counted. Dropping the scope-down counts all browsing toward the limit. A Count action only observes. Keying on X-Forwarded-For at the edge trusts a header the attacker controls; forwarded-IP aggregation is for a web ACL that sits behind a proxy you trust, such as an ALB behind CloudFront.

How to reason it out
  1. Recognise a volume attack on well-formed requests, which content rules cannot catch.
  2. Use a rate-based rule with a Block action so offending clients are stopped.
  3. Scope it down to POST requests for /login so normal browsing is not counted.
  4. Key on source IP because the web ACL is on CloudFront, where that is the viewer address.

Exam tip: Rate-limit a sensitive path with a scope-down statement, and key on source IP at the edge; forwarded-IP keys are for web ACLs behind a trusted proxy.

Edge Security on AWS: WAF, Shield, and CloudFront as Controls — the lesson that teaches this.

Question 3Infrastructure Security

A security engineer will add the AWS Managed Rules Core rule set to a web ACL that protects a busy production web application, which also serves JSON API calls from the company's mobile app. Leadership is worried that new rules could disrupt customers on day one. The team still wants to measure the rule set against real production traffic. What should the engineer do?

Choose one.

  • a
    Add the rule set in Block mode after the existing rules in priority order, then review the logs.

    Placing the group later in the order does not stop it blocking: any request that reaches it and matches is blocked, which is the disruption leadership fears.

  • b
    Add the rule set with its rule actions overridden to Count, then switch to Block after review. Correct

    Count is non-terminating: matches are recorded in metrics, sampled requests and logs while every request continues, so the team measures real traffic without blocking anyone.

  • c
    Add the rule set with its rule actions overridden to CAPTCHA, then switch to Block after review.

    CAPTCHA still interrupts real customers on day one, and mobile app API calls cannot solve a puzzle, so matched API requests would fail.

  • d
    Add the rule set to a copy of the web ACL on a staging ALB and replay synthetic traffic there.

    Synthetic traffic on a staging copy never reproduces the production request mix, so the false positives that matter stay hidden.

The concept

New WAF rules and managed rule groups are introduced count-first: rule action overrides set to Count record matches without terminating evaluation, and the team promotes them to Block after reviewing metrics, sampled requests and logs.

Why that’s the answer

Overriding the group's rule actions to Count lets the rules evaluate production traffic and record what they would have blocked, with no customer impact. Placing the group later in priority order still blocks matching requests. CAPTCHA is an interrupting action and breaks non-browser clients such as a mobile app's API calls. A staging replay does not see real traffic.

How to reason it out
  1. Separate observing a rule from enforcing it: only Count is non-terminating.
  2. Add the managed group with its rule actions overridden to Count.
  3. Review WAF metrics, sampled requests and logs for matches against real traffic.
  4. Add exceptions for legitimate patterns, then remove the overrides so the rules block.

Exam tip: Introduce new WAF rules in Count against real traffic; CAPTCHA and Challenge still interrupt users and break non-browser clients.

Edge Security on AWS: WAF, Shield, and CloudFront as Controls — the lesson that teaches this.

Question 4Infrastructure Security

After a change to a web ACL, a marketing team reports that one campaign URL returns 403 errors to many legitimate visitors. The web ACL has several AWS managed rule groups and a few custom rules, and logging is enabled. What is the FASTEST reliable way to identify exactly which rule blocks those requests before deciding on a fix?

Choose one.

  • a
    Open the web ACL's CloudWatch metrics and find the rule whose BlockedRequests count rose after the change.

    Per-rule metrics show how many requests each rule blocked across the whole site, not which rule blocked requests for this URL, so a coincidental rise can mislead.

  • b
    Search the CloudFront standard logs for the URL and read the WAF rule recorded with each 403 response.

    CloudFront access logs record the 403 and the edge result, but they do not carry the name of the WAF rule that made the decision.

  • c
    Search the WAF logs for the URL with action BLOCK and read the terminating rule fields in each record. Correct

    Each WAF log record carries the action and the terminating rule: terminatingRuleId names the rule or rule group that decided, and ruleGroupList shows the specific rule inside a rule group, so the offending rule is named directly.

  • d
    Search CloudTrail for the URL's requests and read the WAF rule recorded in each matching event.

    CloudTrail records API activity such as web ACL updates, not individual web requests, so it holds no per-request rule decisions.

The concept

AWS WAF logs (to CloudWatch Logs, S3 or Data Firehose) record each request with the action taken and the terminating rule, plus non-terminating matches and labels. When a rule inside a rule group decides, terminatingRuleId holds the rule group and ruleGroupList[].terminatingRule.ruleId names the rule inside it.

Why that’s the answer

Filtering the WAF logs for the campaign URL and action BLOCK identifies the exact rule. terminatingRuleId names the web ACL rule that decided; because this web ACL holds several managed groups, it will usually be a group, and the ruleGroupList entry's terminatingRule gives the specific rule inside it. Per-rule CloudWatch metrics are aggregated across all paths and cannot be tied to one URL. CloudFront logs show the 403 but not the rule. CloudTrail captures configuration API calls, not request evaluations.

How to reason it out
  1. Pick the data source that records per-request WAF decisions: the WAF logs.
  2. Filter for the campaign URL and action BLOCK.
  3. Read terminatingRuleId; if it is a rule group, read ruleGroupList's terminatingRule for the rule inside it.
  4. Then fix narrowly: override that rule to Count or add a targeted exception.

Exam tip: The WAF logs name the rule that blocked a request: terminatingRuleId for the web ACL rule or group, ruleGroupList for the rule inside a group.

Edge Security on AWS: WAF, Shield, and CloudFront as Controls — the lesson that teaches this.

Question 5Infrastructure Security

A team runs the AWS Managed Rules Core rule set in Block mode. Its SizeRestrictions_BODY rule blocks a legitimate file-upload feature because uploads exceed the body size limit. Security requires upload requests to keep the rest of the group's protections, such as the cross-site scripting checks. How should the team stop the false positives?

Choose one.

  • a
    Add a scope-down statement to the Core rule set so requests to the upload path skip the group.

    This stops the false positive, but upload requests then bypass every rule in the group, including the cross-site scripting checks security requires.

  • b
    Add a higher-priority rule that allows requests to the upload path before the Core rule set runs.

    Allow is terminating, so upload requests would skip the Core rule set and every later rule, removing the protections that must stay.

  • c
    Pin the Core rule set to an earlier static version whose size rule does not block these uploads.

    The size restriction is a long-standing rule of the group, so an older version still blocks large bodies, and pinning freezes the entire group's updates.

  • d
    Override the size-restriction rule's action to Count, leaving the group's other rule actions alone. Correct

    A per-rule action override disables blocking for that one rule while the other rules in the group keep blocking, including for upload requests.

The concept

Managed rule groups support rule action overrides on individual rules (typically to Count), so a false positive can be removed without excluding requests from the rest of the group. A scope-down statement or a terminating Allow excludes requests from every rule.

Why that’s the answer

Overriding only SizeRestrictions_BODY to Count removes the false positive while upload requests are still inspected by every other rule in the group. A scope-down statement and a higher-priority Allow both stop the false positive but take uploads out of the cross-site scripting checks as well. Pinning an older version does not remove the size rule and stops the group from receiving updates. If size enforcement is still wanted elsewhere, a custom rule can re-apply it with a label match.

How to reason it out
  1. Identify the blocking rule from the WAF logs (terminatingRuleId).
  2. Apply the constraint: uploads must still pass through the group's other rules.
  3. Reject fixes that exclude the path from the whole group (scope-down, Allow).
  4. Override just the offending rule's action to Count and verify the upload works.

Exam tip: Fix one noisy managed rule with a per-rule Count override; scope-downs and Allow rules remove the whole group's protection for that traffic.

Edge Security on AWS: WAF, Shield, and CloudFront as Controls — the lesson that teaches this.

Question 6Infrastructure Security

A company fronts an internet-facing Application Load Balancer with a CloudFront distribution that has an AWS WAF web ACL. The ALB must stay internet-facing for now. The ALB security group allows inbound HTTPS from the AWS-managed CloudFront origin-facing prefix list, but a penetration tester still reaches the application without passing through the web ACL. Why, and what should the team add?

Choose one.

  • a
    The prefix list admits every CloudFront distribution; have yours add a secret header that an ALB listener rule checks. Correct

    The origin-facing addresses are shared by all CloudFront customers, so the tester can point their own distribution at the ALB. A secret header that only your distribution sends, verified by a listener rule, proves the request came through your distribution and web ACL.

  • b
    The rule allows the IPv4 prefix list alone; the tester connects over IPv6, so add the IPv6 origin-facing list.

    Security groups deny anything not allowed, so IPv6 connections are already refused; adding the IPv6 list would widen access rather than close the bypass.

  • c
    The origin-facing list leaves out regional edge caches; add the regional edge cache ranges to the group.

    The origin-facing prefix list already covers the addresses CloudFront uses to reach origins, regional edge caches included, and adding ranges cannot block a request from another customer's distribution.

  • d
    The web ACL sits on the distribution rather than the ALB; associate that same web ACL with the ALB too.

    A CloudFront-scope web ACL cannot be associated with an ALB, which needs a Regional web ACL. A Regional copy would filter bypass traffic, but it would not make the origin accept only your distribution.

The concept

Locking an internet-facing ALB to one CloudFront distribution takes two layers: the CloudFront origin-facing managed prefix list on the security group, and a secret custom origin header verified by an ALB listener rule. The prefix list alone admits any customer's distribution. CloudFront VPC origins (internal ALB in a private subnet) remove the public endpoint altogether.

Why that’s the answer

The origin-facing prefix list is shared by every CloudFront customer, so an attacker's own distribution arrives from an allowed address. Adding a secret header at your distribution and forwarding only when an ALB listener rule matches it authenticates traffic as yours. The IPv6 and regional-edge-cache options misread how the prefix list and security groups work. Reusing the web ACL on the ALB is impossible across scopes, and a Regional web ACL would still not restrict who can reach the origin. Without the internet-facing constraint, a CloudFront VPC origin with an internal ALB is the simpler fix AWS recommends.

How to reason it out
  1. Note that the prefix list restricts sources to CloudFront, not to your distribution.
  2. Configure the distribution to add a secret custom header with a value kept in Secrets Manager.
  3. Make the ALB listener forward only when the header matches and return 403 by default.
  4. Rotate the header value by updating the distribution and listener rule together, or move to a VPC origin when the ALB can become internal.

Exam tip: The origin-facing prefix list proves "from CloudFront", not "from my distribution"; add a verified secret header, or use a VPC origin with an internal ALB.

Edge Security on AWS: WAF, Shield, and CloudFront as Controls — the lesson that teaches this.

What SCS-C03 domain 3 tests, topic by topic

The official exam guide breaks Infrastructure Security into 3 topics. The question bank follows the same split, so a weak topic shows up as a cluster of misses you can go back and read.

Published SCS-C03 practice questions per topic in Infrastructure Security
TopicWhat it coversQuestions
Design, implement, and troubleshoot security controls for network edge servicesExam guide task 3.1 (SCS-C03). Defining and selecting edge security strategies based on anticipated threats and attacks; implementing network edge protection (CloudFront headers, AWS WAF, AWS IoT policies, OWASP Top 10 protections, Amazon S3 CORS, Shield Advanced); designing edge controls and rules from requirements (geography, geolocation, rate limiting, client fingerprinting); configuring integrations with edge and third-party services (ingesting data in Open Cybersecurity Schema Framework [OCSF] format, third-party WAF rules).38
Design, implement, and troubleshoot security controls for compute workloadsExam guide task 3.2 (SCS-C03). Hardened Amazon EC2 AMIs and container images (Systems Manager, EC2 Image Builder); instance profiles, service roles, and execution roles to authorize compute workloads; scanning compute resources for vulnerabilities (Amazon Inspector for container images and Lambda functions, GuardDuty runtime monitoring); automated patching and continuous validation (Systems Manager Patch Manager, Amazon Inspector); secure administrative access (Systems Manager Session Manager, EC2 Instance Connect); discovering and remediating vulnerabilities within a pipeline (Amazon Q Developer, Amazon CodeGuru Security); protections and guardrails for generative AI applications (GenAI OWASP Top 10 for LLM Applications).38
Design and troubleshoot network security controlsExam guide task 3.3 (SCS-C03). Network controls to permit or prevent traffic (security groups, network ACLs, AWS Network Firewall); secure connectivity between hybrid and multi-cloud networks (AWS Site-to-Site VPN, AWS Direct Connect, MAC Security [MACsec]); security requirements for communication between hybrid environments and AWS (AWS Verified Access); network segmentation from security requirements (north/south and east/west traffic protections, isolated subnets); identifying unnecessary network access (AWS Verified Access, Network Access Analyzer, Amazon Inspector network reachability findings).38
Total114

Revise Infrastructure Security before you drill it

Other SCS-C03 domains

Infrastructure Security: your questions

Infrastructure Security is domain 3 of the SCS-C03 exam guide and carries 18% of the scored content — the 2nd-heaviest of the 6 domains. On a 65-question paper that works out to roughly 12 questions, though AWS does not publish an exact per-domain count and individual exam forms vary.

Source

The domain weight and topic list on this page come from the official SCS-C03 exam guide.