Courseiva

CCNA Secure Software Architecture And Design Questions

50 questions · Secure Software Architecture And Design · All types, answers revealed

1
MCQeasy

During a threat model, you identify a risk related to 'Broken Access Control'. Which design mitigation is best suited for this?

A.Using HTTPS for all communications.
B.Implementing a strong password policy.
C.Relying on client-side hidden fields to identify user roles.
D.Enforcing centralized, server-side authorization checks for every request.
AnswerD

Broken access control arises when authorisation decisions rely on client-side checks or per-endpoint logic that can be bypassed. Centralised server-side enforcement validates every request against policy, satisfying the design mitigation requirement by removing client trust and inconsistent per-route checks.

Why this answer

Policy-based access control (RBAC or ABAC) ensures users only access resources they are authorized to.

2
MCQmedium

A financial services firm is designing a new web application that will allow customers to transfer funds between accounts. The security architect has mandated that the application must enforce the principle of 'least privilege' for all user actions. Which design approach best achieves this?

A.Implement a single administrative account with full access to all application functions, and require strong multi-factor authentication for its use.
B.Use a shared service account for all application components to simplify permission management and reduce administrative overhead.
C.Assign each user a role with the minimum permissions necessary to perform their job functions, and regularly review role assignments.
D.Allow users to request additional permissions through a self-service portal that automatically grants access after a short delay.
AnswerC

This approach directly implements least privilege by granting only the permissions required for a user's role and periodically validating that those permissions remain appropriate. It limits the blast radius of compromised accounts and reduces the risk of privilege abuse. Regular reviews ensure that permissions do not accumulate over time, which is a common failure mode in role-based access control systems.

Why this answer

Least privilege requires that users and processes operate with only the permissions essential to their function. Assigning minimal role-based permissions and conducting regular reviews ensures that access remains tightly scoped over time. The other options either grant excessive permissions, share accounts broadly, or automate elevation without oversight, all of which violate the principle.

Exam trap

The trap here is assuming that strong authentication or simplified management justifies broad access, but least privilege is about minimizing permissions regardless of other controls.

3
MCQhard

A healthcare organization is designing a system to store and process electronic protected health information (ePHI). The system must comply with HIPAA and ensure data confidentiality at rest. Which cryptographic design choice is most appropriate?

A.Hash the data using SHA-256 with a salt, and store the hash in the database to protect confidentiality.
B.Encrypt the data using AES-256 in Galois/Counter Mode (GCM) with a unique key per data record, and store the keys in a hardware security module (HSM).
C.Encrypt the data using RSA-2048 with OAEP padding, and store the private key in a configuration file on the application server.
D.Encode the data using Base64 encoding, and rely on network-level encryption to protect it at rest.
AnswerB

AES-256-GCM provides strong confidentiality and integrity, and using a unique key per record limits the impact of a key compromise. Storing keys in an HSM protects them from extraction and ensures secure key management. This approach aligns with HIPAA's encryption requirements and best practices for protecting ePHI at rest, as it combines robust encryption with secure key storage.

Why this answer

For protecting ePHI at rest, symmetric encryption with AES-256-GCM offers both confidentiality and integrity, and using a unique key per record with HSM-based key storage ensures strong key management. The other options either use asymmetric encryption inefficiently, apply hashing which is irreversible, or rely on encoding without encryption, all of which fail to meet the confidentiality requirement.

Exam trap

The trap here is confusing encoding or hashing with encryption, or assuming that network-level protections alone suffice for data at rest.

4
MCQhard

A company is designing a microservices-based e-commerce platform. The security team wants to ensure that if one microservice is compromised, the attacker cannot easily move laterally to other services. The design must enforce least privilege and provide strong authentication and authorization between services. Which design pattern best achieves these goals?

A.Implement network segmentation with firewalls between microservices, and use static API keys for authentication.
B.Use a shared database with row-level security, and enforce access control at the application layer for each microservice.
C.Implement a service mesh with mutual TLS (mTLS) for service-to-service authentication and authorization policies enforced at the sidecar proxy.
D.Use a centralized API gateway for all service-to-service communication, with OAuth 2.0 tokens for authentication and authorization.
AnswerC

A service mesh with mTLS ensures that each service authenticates to others using certificates, and authorization policies at the sidecar proxy enforce least privilege. This design provides strong identity and access control at the network layer, preventing lateral movement because a compromised service cannot impersonate another without valid certificates. The sidecar proxy intercepts all traffic, enabling consistent policy enforcement and detailed audit logging, which is ideal for microservices.

Why this answer

A service mesh with mutual TLS and sidecar-enforced authorization provides strong identity and least privilege for service-to-service communication. Each service has a cryptographic identity, and policies are enforced consistently at the proxy. This design prevents lateral movement because a compromised service cannot authenticate as another without valid certificates, and all traffic is subject to fine-grained authorization policies.

Exam trap

The trap here is assuming that network segmentation with static API keys or a centralized API gateway provides sufficient service-to-service security, when in fact strong mutual authentication and fine-grained authorization are needed to prevent lateral movement in microservices.

5
MCQhard

A security architect is reviewing the design of a payment processing system that uses a message queue to decouple services. The architect wants to ensure that if a message is intercepted and modified in transit, the receiving service can detect the tampering and reject the message. The system already uses TLS for transport encryption. Which additional design control best provides end-to-end integrity for the message payload?

A.Digitally sign the message payload with the sender's private key and have the receiver verify the signature using the sender's public key.
B.Enable TLS mutual authentication (mTLS) between the sender and the message queue and between the queue and the receiver.
C.Encrypt the message payload with a symmetric key shared between the sender and receiver before placing it on the queue.
D.Use a message authentication code (MAC) with a key shared between all services that interact with the queue.
AnswerA

A digital signature provides integrity and authenticity. If the payload is modified in transit, the signature verification will fail because the hash no longer matches. TLS only protects the message while in transit between immediate hops; once the message is stored in the queue, TLS does not protect it. Signing the payload ensures end-to-end integrity regardless of intermediate storage.

Why this answer

Digital signatures bind the message content to the sender's private key, so any modification invalidates the signature. Unlike transport-layer protections, a signature remains verifiable after the message leaves the TLS tunnel and is stored in a queue. This provides end-to-end integrity and authenticity, which is critical for payment messages that may traverse multiple services.

Exam trap

The trap here is assuming that TLS or mTLS provides end-to-end integrity for messages that are stored and forwarded, when in fact transport security only protects data while it is moving between two endpoints.

6
MCQhard

In a cloud-native environment, which design practice minimizes the impact of a compromised container?

A.Storing secret keys as environment variables in the container spec.
B.Enforcing read-only root filesystems for containers.
C.Running the application process as the root user.
D.Using a single large image for all microservices.
AnswerB

A read-only root filesystem prevents an attacker who compromises a container from writing malware, altering binaries or persisting changes to the image layers. This contains the breach to the running container's ephemeral state, minimising impact within the cloud-native environment.

Why this answer

Containers should be designed to be immutable and run with minimal privileges, reducing the blast radius.

7
MCQhard

A software architect is designing a system that processes credit card payments. The design must comply with PCI DSS requirements for protecting cardholder data. The architect decides to use a tokenization service to replace sensitive card data with non-sensitive tokens. Which design consideration is most critical to ensure the tokenization solution effectively reduces the scope of PCI DSS compliance?

A.Ensure that the tokenization service is hosted in a separate network segment and that the application never stores or processes the original card data after tokenization.
B.Use a token format that is mathematically derived from the original card number so that the token can be reversed if needed for business operations.
C.Implement tokenization at the application layer so that the application can validate card numbers before sending them to the tokenization service.
D.Store the tokenization mapping table in the same database as the application data to simplify lookups and reduce latency.
AnswerA

For tokenization to reduce PCI DSS scope, the sensitive card data must be isolated from the application environment. Hosting the tokenization service in a separate segment and ensuring the application never handles raw card data means the application falls outside the cardholder data environment (CDE). This minimizes the systems that need to be PCI DSS compliant, which is the primary goal of tokenization.

Why this answer

Tokenization reduces PCI DSS scope by replacing sensitive card data with non-sensitive tokens, but this only works if the original data is not accessible to the application. Isolating the tokenization service and ensuring the application never handles raw card data keeps the application out of the cardholder data environment. This design minimizes the systems that must comply with PCI DSS, which is the primary benefit of tokenization.

Exam trap

The trap here is thinking that any form of tokenization automatically reduces PCI scope, when in fact the application must be completely isolated from raw card data to achieve scope reduction.

8
MCQhard

A company is designing a microservices-based e-commerce platform. The security team wants to ensure that if one microservice is compromised, the attacker cannot easily move laterally to other services. Which design pattern best addresses this concern?

A.Shared database with a single set of credentials for all microservices.
B.Client-side load balancing with direct service-to-service calls.
C.Service mesh with mutual TLS (mTLS) and fine-grained access policies.
D.API gateway with centralized authentication and authorization.
AnswerC

A service mesh with mTLS encrypts and authenticates all service-to-service communication, and fine-grained access policies enforce least privilege between services. This segmentation limits lateral movement because a compromised service cannot freely communicate with others without proper authorization. The service mesh also provides observability and policy enforcement, making it a robust pattern for containing breaches in microservices architectures.

Why this answer

A service mesh with mTLS and fine-grained access policies provides strong identity-based authentication and authorization for service-to-service communication. By enforcing least privilege and encrypting traffic, it prevents a compromised microservice from accessing other services without proper credentials. This segmentation is key to containing breaches and limiting lateral movement, unlike centralized gateways or shared databases that do not enforce internal segmentation.

Exam trap

The trap here is assuming that an API gateway or centralized authentication alone can prevent lateral movement, but internal service-to-service security is equally critical.

9
Multi-Selectmedium

A software architect is designing a new web application that will handle credit card transactions. The design must ensure that the application does not store sensitive authentication data after authorization, and that any display of cardholder data is masked. Which two design principles should be applied to meet these requirements? (Choose two.)

Select 2 answers
A.Implement tokenization to replace the primary account number (PAN) with a surrogate value, and store the tokenization vault in the same database as the application.
B.Implement data masking to display only the last four digits of the primary account number (PAN) and mask all other sensitive data in the user interface and logs.
C.Implement encryption of all cardholder data at rest using strong cryptography, and store the encryption keys in the same database for easy access.
D.Implement data minimization by ensuring that sensitive authentication data is not stored after authorization, and that only the minimum required cardholder data is retained.
E.Implement audit logging of all access to cardholder data, and store the logs in a centralized logging system with strict access controls.
AnswersB, D

Data masking ensures that cardholder data is not exposed in the user interface or logs. Displaying only the last four digits of the PAN is a common PCI DSS requirement. Masking other sensitive data prevents accidental leakage through screenshots, logs, or shoulder surfing. This design principle protects data in use and helps meet compliance requirements for display of cardholder data.

Why this answer

Data minimization and data masking are the two design principles that directly address the requirements. Data minimization ensures sensitive authentication data is not stored after authorization and only necessary cardholder data is retained. Data masking ensures that displayed cardholder data is masked, such as showing only the last four digits of the PAN, preventing exposure in the UI and logs.

Exam trap

The trap here is assuming that encryption or tokenization alone satisfies the requirement to not store sensitive authentication data after authorization, when in fact data minimization and masking are the specific design principles needed.

10
MCQhard

A software architect is designing a component that will process untrusted input from external sources. To prevent injection attacks, the architect decides to implement input validation. Which design approach for input validation is most effective at mitigating injection flaws?

A.Rely on parameterized queries and stored procedures to handle all input, and skip additional validation.
B.Use a blacklist of known dangerous characters and patterns, and sanitize the input by removing or escaping them.
C.Validate input on the client side using JavaScript to provide immediate feedback and reduce server load.
D.Use a whitelist of allowed characters and patterns, and reject any input that does not strictly conform to the expected format.
AnswerD

Whitelisting, or positive validation, defines exactly what is allowed and rejects everything else. This is highly effective against injection attacks because it prevents malicious characters or patterns from being processed. It is a robust design approach that minimizes the attack surface and is recommended by security standards for input validation.

Why this answer

Whitelist validation, also known as positive validation, is the most effective design approach for input validation because it strictly defines what is allowed and rejects all other input. This prevents attackers from injecting malicious characters or patterns, regardless of the injection type. It is a fundamental secure design principle that should be applied to all untrusted input.

Exam trap

The trap here is assuming that parameterized queries alone are sufficient for all injection types, or that blacklisting can be comprehensive, when whitelisting is the strongest approach.

11
MCQhard

When designing an application that requires secret management (e.g., API keys, database credentials), which design pattern is considered most secure?

A.Using a dedicated Secret Management service (e.g., HashiCorp Vault, AWS Secrets Manager) to inject secrets at runtime.
B.Storing secrets in a configuration file within the deployment container.
C.Requesting secrets from the user at application startup.
D.Hard-coding secrets in the source code as encrypted strings.
AnswerA

A dedicated secret management service stores credentials centrally, encrypts them at rest, enforces access policies and audits retrieval. Injecting secrets at runtime keeps them out of source code, build artefacts and container images, eliminating hard-coded credential exposure — the most secure pattern for the stated requirement.

Why this answer

Retrieving secrets dynamically from a dedicated secret manager at runtime prevents hard-coding and exposure in configuration files.

12
MCQmedium

A software development team is designing a new mobile application that will store sensitive personal data on the device. The security architect must ensure that the data remains confidential even if the device is lost or stolen, and that the data is protected against unauthorized access by other applications on the same device. Which design approach best meets these requirements?

A.Encrypt the data using a key stored in the device's secure hardware (e.g., Secure Enclave or Trusted Execution Environment) and store the encrypted data in the application's private storage directory.
B.Encrypt the data using a key stored in the application's shared preferences and store the encrypted data on external storage.
C.Obfuscate the data using a proprietary algorithm and store it in the application's private storage directory.
D.Encrypt the data using a key derived from the user's password and store the encrypted data in the application's private storage directory.
AnswerA

Using hardware-backed key storage ensures that the encryption key is protected by dedicated security hardware, making it extremely difficult to extract even if the device is compromised. Storing the encrypted data in the app's private directory prevents other apps from accessing it. This design provides strong confidentiality for data at rest and protects against unauthorized access, meeting the requirements for lost/stolen devices and inter-app isolation.

Why this answer

Hardware-backed key storage combined with app-private storage provides the strongest protection for sensitive data on a mobile device. The secure hardware protects the key from extraction, and the private directory prevents other apps from accessing the encrypted data. This design ensures confidentiality even if the device is lost or stolen and maintains isolation from other applications.

Exam trap

The trap here is assuming that encrypting data with a password-derived key and storing it in private storage is sufficient, when in fact hardware-backed key storage is necessary to protect the key from extraction on compromised devices.

13
MCQeasy

A development team is designing a desktop application that must call a third-party payment API. The vendor requires the application to prove its identity to the API using a shared secret. A junior engineer proposes embedding the secret directly in the compiled client binary. The security architect must recommend a design change. Which approach best addresses the underlying design flaw?

A.Obfuscate the binary and encrypt the embedded secret with a hardcoded key so that casual inspection tools cannot recover it.
B.Route the payment call through a server-side component that holds the secret and authenticates to the payment API on the client's behalf.
C.Store the secret in the operating system credential manager on the user's machine and have the application read it at runtime.
D.Require the client to send the secret over TLS so that network eavesdroppers cannot capture it in transit.
AnswerB

Moving the secret to a server-side broker places it inside a trust boundary the attacker does not control. The client authenticates to your own backend using a credential appropriate to a public client, and the backend holds the vendor secret and makes the privileged call. This removes the secret from the untrusted environment entirely, which is the correct architectural fix.

Why this answer

A secret embedded in a client binary is inside a trust boundary controlled by the attacker, so no amount of obfuscation, local storage, or transport encryption makes it safe. The correct design moves the privileged credential to a server-side broker that the client calls, keeping the vendor secret out of the untrusted environment. This is the standard pattern for public clients that must reach an API requiring a confidential credential.

Exam trap

The trap here is believing that obfuscation or local credential storage makes a shipped secret safe, when the client environment is entirely under the attacker's control.

14
MCQmedium

Your team is adopting a 'Secure by Default' posture. Which design requirement should be included in the development specification?

A.Allowing administrative access to all users by default.
B.Using self-signed certificates in the development environment only.
C.Disabling all unused services and ports in the production container image.
D.Providing a configuration wizard to enable SSL after deployment.
AnswerC

Disabling unused services and ports shrinks the attack surface, so nothing unnecessary listens for connections. This directly enforces secure-by-default: the production container image exposes only what the application genuinely requires, eliminating latent entry points attackers could exploit.

Why this answer

Secure by default means security controls are enabled without user intervention, such as disabling unnecessary features.

15
MCQmedium

In a service-oriented architecture (SOA), which design pattern is most effective for ensuring that messages between services are not tampered with?

A.Digital signatures on the message payload.
B.Logging all messages to a central server.
C.Encryption of the message payload.
D.Using a private network for all communication.
AnswerA

Digital signatures provide integrity and origin authentication by hashing the message payload and encrypting that hash with the sender's private key, so any modification is detectable on verification. This directly satisfies the SOA requirement that messages between services are not tampered with, unlike transport-only protections that leave payloads exposed once decrypted.

Why this answer

Digital signatures on the message payload provide integrity and authenticity: the sender signs the message with a private key, and the receiver verifies with the public key, detecting any tampering. This directly addresses the requirement that messages between services are not altered in transit.

Exam trap

CSSLP often tests the distinction between confidentiality (encryption) and integrity (signatures) — candidates pick encryption thinking it prevents tampering, but encryption alone does not guarantee integrity.

How to eliminate wrong answers

Option B is wrong because logging messages to a central server provides auditability and forensics but does not prevent or detect tampering in transit. Option C is wrong because encryption of the payload provides confidentiality, not integrity — an attacker could still modify ciphertext (though some modes like AES-GCM provide integrity, generic 'encryption' alone does not guarantee tamper detection). Option D is wrong because a private network reduces exposure but does not cryptographically guarantee message integrity; insiders or compromised nodes could still alter messages.

16
Multi-Selecthard

Which TWO of the following design choices mitigate the risk of 'Broken Object-Level Authorization' (BOLA)?

Select 2 answers
A.Using sequentially incrementing IDs (e.g., 1, 2, 3) for all resources.
B.Relying on the frontend to hide sensitive objects.
C.Using random, non-predictable UUIDs for resource identifiers.
D.Using base64 encoded strings for all database IDs.
E.Verifying that the user ID in the session owns the requested resource ID.
AnswersC, E

Random, non-predictable UUIDs prevent attackers from enumerating or guessing valid resource identifiers, removing the predictable-ID precondition BOLA exploits. This satisfies the stem's design-choice constraint by making object references unguessable, so unauthorised direct object access attempts cannot target known IDs.

Why this answer

Option C is correct because using random, non-predictable UUIDs (e.g., UUIDv4) for resource identifiers makes it impractical for an attacker to guess or enumerate other users' object IDs, removing the easy ID-guessing vector that BOLA exploits. Option E is correct because BOLA fundamentally occurs when an API endpoint accepts an object ID and returns/modifies it without checking that the authenticated session user actually owns or is authorized for that object; explicitly verifying that the session's user ID matches the owner of the requested resource ID enforces object-level authorization on every request. Option A is wrong because sequentially incrementing IDs are trivially enumerable, making it easy to probe other users' objects.

Option B is wrong because hiding objects in the frontend provides no security—attackers can call the API directly, bypassing any UI concealment. Option D is wrong because base64 is an encoding, not encryption or randomization; base64-encoded IDs are reversible and predictable, so they do not prevent enumeration or unauthorized access.

17
MCQeasy

A software development team is beginning a new project and wants to integrate security into the design phase. Which activity is most effective for identifying potential security requirements early in the software development lifecycle (SDLC)?

A.Performing threat modeling sessions with the architecture team.
B.Deploying a web application firewall (WAF) to protect the application in production.
C.Conducting a penetration test on a prototype of the application.
D.Reviewing the source code for common vulnerabilities using static analysis tools.
AnswerA

Threat modeling is a structured approach to identify potential threats and security requirements during the design phase. By analyzing data flows, trust boundaries, and potential attack vectors, the team can define security controls early, reducing the cost of remediation later. It aligns with the CSSLP principle of building security in from the start and is a core activity in secure software design.

Why this answer

Threat modeling is a proactive design-phase activity that systematically identifies threats and derives security requirements. It involves understanding the system architecture, identifying assets and trust boundaries, and enumerating potential threats. This early analysis allows the team to incorporate appropriate security controls into the design, reducing vulnerabilities and remediation costs.

The other options are later-stage activities that do not fulfill the goal of early security requirement identification.

Exam trap

The trap here is assuming that any security activity, like penetration testing or static analysis, can substitute for early design-phase threat modeling.

18
MCQmedium

A healthcare SaaS provider is designing a new document-sharing feature for its patient portal. Clinicians upload sensitive records that must be readable only by the patient and the assigned care team, even if an attacker later gains read access to the storage bucket. The architect decides to implement envelope encryption using a cloud KMS. Which design decision best ensures that a storage-bucket compromise does not expose plaintext records?

A.Encrypt all records with a single AES-256 key that is stored in the application configuration file and rotated annually.
B.Rely on the cloud provider's default server-side encryption (SSE) with provider-managed keys and enable bucket versioning.
C.Hash each record with SHA-256 before storage and compare hashes at read time to verify integrity.
D.Encrypt each record with a unique data encryption key (DEK), wrap that DEK with a KMS-held key encryption key (KEK), and store only the wrapped DEK alongside the ciphertext.
AnswerD

This is correct because the plaintext DEK never persists in storage; only the wrapped DEK and ciphertext do. An attacker with bucket read access cannot unwrap the DEK without the KMS KEK, and KMS access is separately authenticated and audited. Per-record DEKs also limit the blast radius of any single key compromise.

Why this answer

Envelope encryption with a KMS-held KEK and per-record DEKs is the standard design for this threat. The DEK is generated locally, used to encrypt the record, then wrapped by the KEK; only the wrapped DEK is stored. An attacker reading the bucket obtains ciphertext and wrapped keys, but unwrapping requires authenticated KMS access that can be revoked, audited, and scoped independently of storage permissions.

Exam trap

The trap here is assuming that any encryption at rest satisfies the requirement, when the real question is who controls the key that unwraps the data and whether that control is separated from storage access.

19
MCQhard

Which design activity helps identify security requirements during the earliest phases of the SDLC?

A.Penetration testing.
B.Abuse case modeling.
C.Incident response planning.
D.Static code analysis.
AnswerB

Abuse case modelling examines how an attacker could misuse the application, deriving security requirements from anticipated threats during the earliest SDLC phases. Unlike functional use cases, it explicitly captures adversarial goals, feeding concrete protective requirements into design before code is written.

Why this answer

Abuse case modeling is a design activity that helps identify security requirements early in the SDLC by considering how an attacker might misuse the system. It involves brainstorming potential abuse scenarios and deriving security requirements to prevent them. Penetration testing, incident response planning, and static code analysis are typically performed later in the SDLC and do not primarily serve to identify security requirements during the earliest phases.

Exam trap

CSSLP often tests the confusion between activities that identify security requirements early (like abuse case modeling) and those that verify or implement security later (like penetration testing or static analysis).

How to eliminate wrong answers

Option A is wrong because penetration testing is a later-phase activity that validates security controls, not a design activity for eliciting requirements. Option C is wrong because incident response planning is about preparing for and handling security incidents, not identifying requirements upfront. Option D is wrong because static code analysis is performed on code, which occurs after design and implementation, not during early requirements gathering.

20
MCQeasy

A software team is designing a new employee scheduling application. The architect wants to ensure that if a developer accidentally introduces a memory-safety flaw, the impact is contained and the flaw is detected before release. Which design decision best supports this goal at the architecture level?

A.Require developers to run a static analysis tool locally before committing code to the repository.
B.Deploy the application behind a web application firewall and enable rate limiting on all endpoints.
C.Increase the unit test coverage target to ninety percent for all modules handling employee data.
D.Choose a memory-safe language for new components and isolate any legacy native code behind a narrow, validated interface.
AnswerD

Memory-safe languages eliminate entire classes of flaws such as buffer overflows and use-after-free at the source. Isolating unavoidable native code behind a small, validated boundary limits the blast radius of any residual flaw, which is precisely the containment and early-detection goal stated in the scenario.

Why this answer

Selecting a memory-safe language removes the root cause of most memory-safety vulnerabilities, and isolating any legacy native code behind a validated interface contains the remainder. This is an architectural decision that shapes the whole system, unlike tooling or testing practices that act later and depend on developer compliance. The combination addresses both prevention and containment.

Exam trap

The trap here is treating a tooling or testing practice such as static analysis or coverage as equivalent to an architectural decision that removes the vulnerability class entirely.

21
MCQmedium

A software architect is designing a multi-tenant SaaS application that must prevent a user from one tenant from accessing another tenant's data through the application's API. The architect wants to enforce this isolation at the architectural level rather than relying on developers to remember to include a tenant filter in every query. Which design approach best achieves this goal?

A.Require developers to use a shared data access library that always adds a tenant_id parameter to every SQL query.
B.Implement row-level security (RLS) policies in the database that automatically filter data based on the tenant identity associated with the current session.
C.Encrypt each tenant's data with a unique encryption key and store the keys in a hardware security module (HSM).
D.Assign each tenant a separate database schema and require the application to connect with a schema-specific database user.
AnswerB

Row-level security enforces tenant isolation in the data layer, so even if a developer forgets a WHERE clause, the database will not return another tenant's rows. This provides a defense-in-depth control that does not depend on application code discipline. It aligns with the architectural goal of enforcing a security constraint centrally rather than per-query.

Why this answer

Row-level security is a database-enforced access control mechanism that automatically restricts which rows a session can see or modify based on a security predicate. By tying the predicate to the tenant identity, the database becomes the enforcement point, so application bugs cannot easily bypass isolation. This is a strong architectural control for multi-tenant isolation.

Exam trap

The trap here is assuming that any data-layer control, such as encryption or separate schemas, automatically prevents cross-tenant access, when only an enforced access-control predicate like row-level security does so at query time.

22
Multi-Selecteasy

Which TWO of the following strategies best implement the principle of 'Separation of Duties' in an application design?

Select 2 answers
A.Granting developers full access to production database backups.
B.Requiring two distinct roles to approve a production code deployment.
C.Using a single shared admin account for all system functions.
D.Separating administrative duties between security and system roles.
E.Allowing a single admin to manage all user accounts.
AnswersB, D

Splitting deployment approval across two distinct roles prevents any single individual from both writing and releasing code, enforcing the dual-control requirement central to separation of duties. It directly satisfies the stem by ensuring no one holds end-to-end authority over the production change.

Why this answer

Option B is correct because requiring two distinct roles to approve a production code deployment enforces dual control (a two-person rule), so no single individual can unilaterally push code to production, which is a direct implementation of Separation of Duties. Option D is correct because separating administrative duties between security and system roles ensures that the person configuring systems is not the same person controlling security policy, preventing any one admin from both making and approving privileged changes. Options A, C, and E are incorrect because granting developers full access to production backups, using a single shared admin account, and letting one admin manage all user accounts each concentrate powerful privileges in one identity or role, which violates rather than implements Separation of Duties.

Exam trap

The trap here is confusing SoD with least privilege or assuming that any access restriction qualifies; SoD specifically requires dividing duties among different roles to prevent unilateral control, so options that concentrate power (even if seemingly secure) are wrong.

23
Multi-Selecteasy

Which THREE of the following are key components of a 'Secure Design Review' process?

Select 3 answers
A.Writing the final deployment documentation.
B.Performing dynamic analysis on the final build.
C.Validating the architecture against established security patterns.
D.Reviewing security requirements for traceability.
E.Evaluating the threat model for completeness.
AnswersC, D, E

Validating the architecture against established security patterns confirms the design implements proven controls rather than ad hoc measures, satisfying the review's requirement to assess whether the proposed structure meets the organisation's security standards before code is written.

Why this answer

A Secure Design Review is a pre-implementation activity that examines the design artifacts rather than the running code. Option C is correct because validating the architecture against established security patterns (e.g., defense in depth, least privilege, secure defaults) ensures the design avoids known anti-patterns before code is written. Option D is correct because reviewing security requirements for traceability confirms that every stated security requirement maps to a design element and can be verified later, which is a core goal of the review.

Option E is correct because evaluating the threat model for completeness ensures all relevant threats, trust boundaries, and attack surfaces have been identified and addressed at design time. Option A is not part of a design review since writing final deployment documentation is a release/operations task, not a design-time security assessment. Option B is not part of a design review because dynamic analysis runs against a built, executing application, whereas the design review occurs before implementation.

Exam trap

CSSLP often tests the phase boundaries of the SDLC — candidates mistakenly select dynamic analysis or documentation tasks as design review components, confusing verification activities with design-time analysis.

24
MCQhard

A design uses a shared service account for multiple microservices to access a common database. Which architectural risk does this create?

A.Increased network latency.
B.Increased risk of SQL injection.
C.Loss of accountability and difficulty in auditing specific service actions.
D.Incompatibility with container orchestrators.
AnswerC

A shared service account removes per-service identity, so database audit logs cannot attribute actions to a specific microservice. This destroys accountability and makes forensic reconstruction of which service performed a malicious or erroneous action effectively impossible.

Why this answer

Shared accounts prevent granular auditing and lead to excessive privilege accumulation.

25
Multi-Selectmedium

Which TWO of the following design patterns improve the resilience of a secure system?

Select 2 answers
A.Fail-safe defaults.
B.Allowing all traffic on port 80 for compatibility.
C.Security through obscurity.
D.Fail-secure system design.
E.Hard-coding credentials for quick recovery.
AnswersA, D

Fail-safe defaults deny access when a decision cannot be evaluated, so a component failure or malformed input cannot silently grant privileges. This directly satisfies the stem's resilience constraint by keeping the system secure under fault conditions rather than depending on every check completing successfully.

Why this answer

Fail-safe defaults (A) improve resilience because a system that denies access by default when it fails or is misconfigured prevents unauthorized entry, keeping the secure state intact under adverse conditions. Fail-secure system design (D) is correct because on failure the system defaults to a secure, locked state (e.g., doors lock, access is denied), preserving confidentiality and integrity even during outages or attacks. Together these patterns ensure that errors or failures do not open the system to compromise.

Option B is wrong because allowing all traffic on port 80 for compatibility removes filtering and exposes the system to unauthorized access. Option C is wrong because security through obscurity relies on secrecy of design rather than sound controls and fails once the design is discovered. Option E is wrong because hard-coded credentials create a static, exploitable secret that undermines authentication and recovery security.

26
Multi-Selecthard

A financial services firm is designing a new internal microservices platform. The architecture team wants to reduce the blast radius of a compromised service account while still allowing services to authenticate to one another. Which TWO design measures best support this goal? (Choose two.)

Select 2 answers
A.Issue each service a distinct workload identity with short-lived credentials and narrowly scoped permissions, so a stolen token grants access only to that service's own resources.
B.Enforce mutual TLS between services and validate the peer's identity on every call, rather than trusting the network perimeter.
C.Store a single shared service account credential in a central secrets vault and inject it into every service at startup to simplify rotation.
D.Rely on the Kubernetes NetworkPolicy default-deny rule to prevent a compromised service from reaching any other service, since network isolation alone removes the need for service-level authentication.
E.Increase the token lifetime for all service credentials to 24 hours so that rotation outages do not disrupt inter-service calls during business hours.
AnswersA, B

Per-service workload identity with short-lived, narrowly scoped credentials is the core of least privilege in a microservices mesh. If one service is compromised, the attacker inherits only that service's permissions and only until the credential expires. This directly limits lateral movement and blast radius, which is exactly the design objective stated in the scenario.

Why this answer

Reducing blast radius requires that a compromised service cannot act as other services and cannot reach resources beyond its own scope. Distinct short-lived workload identities enforce least privilege per service, while mutual TLS ensures every call is cryptographically tied to a verified peer. Together they contain the damage of any single compromise.

Shared credentials, network-only isolation, and extended token lifetimes all weaken containment by broadening what a stolen identity can do.

Exam trap

The trap here is treating network segmentation as a substitute for authentication, when a compromised workload inside an allowed segment still presents valid credentials.

27
MCQeasy

Which design principle suggests that developers should keep the security mechanisms simple to understand and implement?

A.Open design.
B.Economy of mechanism.
C.Complete mediation.
D.Defense in depth.
AnswerB

Economy of mechanism holds that security functions should be as simple as possible, since complexity breeds implementation errors and overlooked flaws. Keeping designs small and understandable makes them easier to verify, test and maintain, directly satisfying the stem's requirement that developers keep security mechanisms simple to understand and implement.

Why this answer

Economy of mechanism ensures that small, simple security designs are easier to verify and less prone to vulnerabilities.

28
Multi-Selectmedium

A software development team is designing a new web application that will handle sensitive personal data. The security architect recommends incorporating privacy by design principles. Which two design practices best align with the principle of data minimization? (Choose two.)

Select 2 answers
A.Design the application to use pseudonymization for all user identifiers in analytics and logging systems.
B.Implement field-level encryption for all personal data fields in the database to protect data at rest.
C.Store all personal data in a single, centralized database to simplify access control and auditing.
D.Implement role-based access control (RBAC) to ensure only authorized users can access personal data.
E.Collect only the personal data that is strictly necessary for the specific functionality being implemented, and delete it once the purpose is fulfilled.
AnswersA, E

Pseudonymization replaces direct identifiers with artificial identifiers, reducing the linkability of data to individuals. This supports data minimization by limiting the exposure of personal data in secondary uses like analytics and logging. It is a privacy-enhancing technique that aligns with the principle of using only the data necessary for the purpose, making it a correct choice.

Why this answer

Data minimization in privacy by design means collecting only necessary data and keeping it only as long as needed, as well as reducing identifiability where possible. Collecting and deleting data based on purpose, and pseudonymizing identifiers in analytics and logging, both directly reduce the amount of personal data processed and its linkability. These practices limit privacy risk and align with regulatory requirements.

Exam trap

The trap here is confusing security controls like encryption or access control with data minimization, which specifically focuses on limiting the collection, retention, and identifiability of personal data.

29
Multi-Selectmedium

A software architect is designing a system that must be resilient to failures and attacks. Which two design principles best contribute to system resilience? (Choose two.)

Select 2 answers
A.Hardcoding credentials in configuration files for ease of deployment.
B.Using a single, monolithic component to simplify management and reduce complexity.
C.Implementing redundant components with automatic failover.
D.Relying on a single security control to protect all assets.
E.Designing for graceful degradation of non-critical features.
AnswersC, E

Redundancy with automatic failover ensures that if one component fails, another can take over, maintaining availability. This is a core principle of resilience, as it reduces single points of failure and allows the system to continue operating during disruptions. It also helps mitigate denial-of-service attacks by providing additional capacity and failover paths.

Why this answer

Resilience is achieved through redundancy, automatic failover, and graceful degradation. Redundancy ensures availability during failures, while graceful degradation allows critical functions to continue when non-essential features are impaired. These principles together enable the system to withstand and recover from disruptions, whether from attacks or accidental failures.

The other options either introduce single points of failure or weaken security, reducing overall resilience.

Exam trap

The trap here is equating simplicity or single controls with resilience, when in fact resilience requires redundancy and layered defenses.

30
Multi-Selectmedium

A security architect is designing a new web application that will handle sensitive customer data. The architect wants to incorporate the principle of 'defense in depth' into the architecture. Which TWO of the following design decisions best exemplify defense in depth? (Choose two.)

Select 2 answers
A.Implement input validation at both the presentation layer and the business logic layer.
B.Use a single, strong authentication mechanism such as multi-factor authentication for all users.
C.Place the database behind a firewall and also encrypt sensitive columns within the database.
D.Rely on a Web Application Firewall (WAF) as the primary control to block all attacks against the application.
E.Store all application logs on the same server as the application to simplify troubleshooting.
AnswersA, C

Validating input at multiple layers ensures that if one layer is bypassed or has a flaw, another layer can still catch malicious input. This is a classic defense-in-depth approach: redundant controls that address the same threat from different angles. It reduces the likelihood of a single point of failure leading to a vulnerability.

Why this answer

Defense in depth means layering multiple independent security controls so that if one fails, others still protect the asset. Validating input at multiple layers and combining network restrictions with data encryption are both examples of redundant, complementary controls. They reduce the risk of a single control failure leading to a breach.

Exam trap

The trap here is equating any strong single control, such as MFA or a WAF, with defense in depth, when the principle specifically requires multiple independent layers of protection.

31
MCQmedium

In the context of secure design, what does 'Fail-safe defaults' mean when designing an authentication module?

A.The system automatically resets passwords if a login failure occurs.
B.The system permits login if the authentication server is unreachable.
C.If a system error occurs during login, the system denies access by default.
D.All new users are granted guest access until the admin verifies them.
AnswerC

Fail-safe defaults means access decisions fall back to denial when the module cannot complete its checks. A login error therefore refuses entry rather than granting it, satisfying the stem's requirement that the authentication module default to a secure state under failure.

Why this answer

If the module crashes or encounters an error, the system should default to 'deny' access rather than 'allow'.

32
MCQhard

You are designing an application that integrates with a legacy system. Which design strategy minimizes the risk of the legacy system's vulnerabilities affecting your application?

A.Creating an abstraction layer (wrapper/adapter) to sanitize all data exchanged.
B.Migrating all legacy data immediately.
C.Direct integration via shared database tables.
D.Granting the legacy system full administrative privileges in the new system.
AnswerA

An abstraction layer intercepts every call to the legacy system, validating and sanitising data in both directions. This isolates your application from the legacy system's vulnerabilities, such as injection flaws, so a compromise there cannot propagate across the boundary — directly minimising the risk the stem describes.

Why this answer

An abstraction layer acts as a buffer, sanitizing and normalizing data before it enters or leaves the application.

33
Multi-Selectmedium

When designing an application that relies on external APIs, which THREE of the following are necessary security considerations?

Select 3 answers
A.Only using HTTP for faster communication.
B.Managing API keys using a secure vault.
C.Hard-coding the API endpoint URLs in the application.
D.Validating all data returned by the external API before processing.
E.Securing the connection using HTTPS/TLS.
AnswersB, D, E

External API credentials grant access to third-party services and often carry billing or data-scope privileges. Storing them in a secure vault rather than source code or configuration files enforces confidentiality and controlled retrieval, satisfying the need to protect secrets from disclosure or unauthorised reuse.

Why this answer

Option B is correct because API keys are credentials that grant access to external services, and storing them in a secure vault (e.g., HashiCorp Vault, AWS Secrets Manager, Azure Key Vault) prevents exposure through source code, config files, or logs. Option D is correct because data returned by an external API is untrusted input; validating and sanitizing it before processing defends against injection attacks, malformed payloads, and downstream data corruption. Option E is correct because HTTPS/TLS encrypts data in transit, providing confidentiality and integrity and preventing man-in-the-middle attacks, eavesdropping, and credential theft over the network.

Option A is not a security consideration—plain HTTP transmits data unencrypted and is less secure, not faster in any security-relevant sense. Option C is not a security consideration and is in fact poor practice, since hard-coding endpoint URLs reduces flexibility and can expose internal or non-production endpoints; endpoint configuration should be externalized and managed securely.

Exam trap

CSSLP often tests whether candidates recognize that encryption alone (HTTPS) is insufficient — input validation of third-party responses and secure key storage are equally required, so options that omit validation or vaulting are traps.

34
MCQeasy

A financial services firm is designing a new mobile banking application. The security architect wants to ensure that if an attacker gains physical access to a user's device, they cannot easily extract sensitive session tokens stored by the app. Which secure design principle should be applied to protect these tokens at rest?

A.Store session tokens in the application's private data directory with file permissions restricted to the app's user ID, and encrypt them using a key derived from a user-supplied PIN.
B.Store session tokens in the device's secure hardware-backed keystore, such as the iOS Keychain or Android Keystore, and require user authentication to access them.
C.Store session tokens in a remote server and only keep a reference identifier in the app, fetching the token over a secure channel when needed.
D.Obfuscate the session token by splitting it into multiple parts and storing them in different locations within the app's sandbox, reassembling only in memory when needed.
AnswerB

Using a hardware-backed keystore ensures that sensitive tokens are encrypted and protected by the device's secure element, making extraction difficult even with physical access. Requiring user authentication adds a layer of protection. This aligns with the principle of securing data at rest and leveraging platform security features, which is a best practice for mobile banking applications.

Why this answer

Hardware-backed keystores provide a secure, isolated environment for cryptographic keys and sensitive data, making extraction extremely difficult even with physical device access. By storing session tokens there and requiring user authentication, the design leverages platform security features to protect data at rest. This is the most robust approach for mobile banking applications handling sensitive financial data.

Exam trap

The trap here is confusing obfuscation or simple encryption with hardware-backed protection, which offers a much stronger security guarantee against physical extraction.

35
MCQeasy

A software development team is designing a new internal employee portal. The security architect recommends implementing the principle of least privilege. Which design decision best applies this principle to the portal's database access?

A.Grant the portal's database account full administrative rights so that developers can quickly fix data issues without waiting for DBA approval.
B.Allow the portal to connect as the database schema owner so that it can create temporary tables and stored procedures as needed.
C.Create a dedicated database account for the portal that has only the specific SELECT, INSERT, UPDATE, and DELETE permissions required on the tables the portal uses.
D.Use a shared database account for all internal applications so that connection strings are easier to manage and rotate.
AnswerC

This approach grants only the permissions necessary for the portal to function, which is the essence of least privilege. If the account is compromised, the attacker cannot access unrelated tables or perform administrative actions. It limits the potential damage and aligns with secure design principles.

Why this answer

Least privilege means giving an entity only the access required to perform its function. A dedicated database account with a minimal set of DML permissions on specific tables ensures the portal can operate without granting unnecessary rights. This reduces the impact of a compromise and is a fundamental secure design practice.

Exam trap

The trap here is confusing operational convenience with security, such as using a shared or overly privileged account to simplify management, which directly contradicts least privilege.

36
MCQmedium

A retail company is designing a mobile application that stores a long-lived refresh token on the device so users stay signed in. The security architect is concerned that a stolen device or a rooted device could yield the token to an attacker. Which design choice best limits the usefulness of a stolen refresh token?

A.Encrypt the refresh token with a symmetric key that is embedded in the application binary and obfuscated.
B.Require the user to re-enter their password every time the refresh token is used to obtain a new access token.
C.Bind the refresh token to a device-held private key using a proof-of-possession mechanism such as DPoP or mutual TLS, and rotate the token on each use.
D.Increase the refresh token lifetime to ninety days and store it in the platform keychain or keystore.
AnswerC

Sender-constrained tokens are useless to an attacker who copies them without the corresponding private key, which is stored in hardware-backed keystore and ideally non-exportable. Rotation on each use also detects replay, because a reused token invalidates the chain, giving the defender a signal of compromise.

Why this answer

Proof-of-possession binding ties the token to a non-exportable private key in hardware-backed storage, so possession of the token string alone is insufficient. Rotation on each use adds replay detection. Together these turn a stolen token from a durable credential into a limited, detectable artifact, which is the goal when the device itself may be compromised.

Exam trap

The trap here is assuming that storing a bearer token in a platform keystore makes it safe, when a rooted device or a compromised app process can still extract and replay it.

37
MCQmedium

You are designing an input validation strategy. Which technique provides the best defense against Cross-Site Scripting (XSS)?

A.Using a centralized regex filter to strip HTML tags.
B.Encrypting all user input before storing it in the database.
C.Performing context-aware output encoding at the presentation layer.
D.Implementing a strict allow-list for all input fields.
AnswerC

Context-aware output encoding neutralises injected markup at the exact point of rendering, matching each sink (HTML, attribute, JavaScript, URL). This defeats XSS regardless of how input bypassed earlier filtering, satisfying the presentation-layer defence the scenario requires.

Why this answer

Context-aware output encoding prevents browsers from interpreting user input as active content.

38
MCQeasy

During threat modeling, you are asked to classify data sensitivity. Which outcome is the primary goal of this activity?

A.To identify which security controls and protection levels are required for specific data assets.
B.To identify the database engine version.
C.To automate the backup frequency of the database.
D.To determine which data needs to be deleted periodically.
AnswerA

Classifying data sensitivity determines the protection level each asset warrants, driving selection of encryption, access control and handling requirements proportionate to impact. This satisfies the stem's goal of linking sensitivity classification to the controls and protection levels applied to specific data assets.

Why this answer

Data classification allows for the application of appropriate security controls based on the data's risk profile.

39
MCQmedium

A healthcare SaaS provider is designing a multi-tenant web application where each hospital customer's data must remain logically isolated. The design team proposes using a single shared database schema with a tenant identifier column on every table, enforced by application-layer query filters. A security architect must evaluate this proposal. Which design concern is the MOST significant risk with this approach?

A.A tenant identifier column prevents the database from using indexes effectively, causing query performance to degrade until row-level security can be introduced.
B.A defect in any single query filter can expose one tenant's records to another tenant, because isolation depends entirely on application code being correct in every data access path.
C.Multi-tenant applications built on a single schema cannot meet HIPAA because the regulation explicitly requires physically separate databases for each covered entity.
D.Shared schemas cannot support per-tenant encryption keys, so data at rest would necessarily be stored in plaintext across all hospital customers.
AnswerB

With a shared schema and tenant column, isolation is enforced only by application-layer predicates. Any missed WHERE clause, ORM bypass, ad-hoc report query, or new developer mistake leaks cross-tenant data. There is no database-enforced boundary acting as a backstop, so a single coding error becomes a multi-tenant breach, which is precisely the systemic risk a security architect must flag in this design.

Why this answer

Application-enforced tenant filtering places the entire isolation guarantee inside code that changes constantly, so any missed predicate, raw SQL query, or new feature path can leak one hospital's records to another. Database-enforced controls such as row-level security or schema-per-tenant provide a backstop that survives application defects. The dominant design risk is therefore the absence of a defense-in-depth boundary, not encryption, performance, or a non-existent regulatory mandate.

Exam trap

The trap here is assuming that a tenant identifier column on every table is itself a security control, when it is only data — the actual enforcement lives in every query the application ever writes.

40
MCQhard

You are auditing a design that uses JSON Web Tokens (JWTs) for stateless authentication. Which vulnerability is most critical if the 'alg: none' attack is possible?

A.Cross-Site Request Forgery (CSRF).
B.Broken object-level authorization.
C.Insecure cookie flags.
D.Token signature bypass/forgery.
AnswerD

When the verifier accepts alg: none, it treats the token as valid without checking any signature, so an attacker can alter claims such as role or subject and forge arbitrary tokens. This is signature bypass, satisfying the stem's stateless authentication scenario.

Why this answer

The 'alg: none' vulnerability allows an attacker to forge tokens by telling the server to skip signature verification.

41
MCQeasy

When conducting a secure design review, which activity provides the most insight into potential session management vulnerabilities?

A.Checking for SQL injection in login forms.
B.Reviewing the database schema for password hashing algorithms.
C.Verifying the presence of a Web Application Firewall (WAF).
D.Analyzing the implementation of HttpOnly and Secure flags on session cookies.
AnswerD

HttpOnly prevents client-side scripts from reading session cookies, while Secure restricts transmission to encrypted channels, so reviewing these flags directly exposes cookie theft and interception weaknesses. This inspection targets the exact session management controls the review must assess.

Why this answer

Session management is best reviewed by analyzing the cookie attributes and token handling flows.

42
Multi-Selecthard

When performing threat modeling using the STRIDE model, which TWO of the following threats are mitigated by implementing digital signatures?

Select 2 answers
A.Repudiation.
B.Elevation of Privilege.
C.Information Disclosure.
D.Denial of Service.
E.Tampering.
AnswersA, E

Digital signatures provide non-repudiation by cryptographically binding a signer's private key to the message, so the signer cannot later deny authorship. This directly mitigates STRIDE's Repudiation category, which covers denying performing an action. Verification with the signer's public key proves origin and integrity, satisfying the stem's requirement.

Why this answer

Digital signatures provide non-repudiation because the signer's private key uniquely binds them to the message, so they cannot later deny having signed it, which directly mitigates Repudiation (A). Digital signatures also detect any modification of the signed data through cryptographic hash verification, so any alteration invalidates the signature and mitigates Tampering (E). Elevation of Privilege (B) is mitigated by authorization controls and least-privilege design, not by signatures.

Information Disclosure (C) is addressed by encryption such as TLS or AES, not by signing. Denial of Service (D) is mitigated by availability controls like rate limiting and redundancy, which signatures do not provide.

Exam trap

The trap here is confusing authentication with non-repudiation, or assuming digital signatures provide confidentiality; candidates might incorrectly select Information Disclosure or Elevation of Privilege.

43
MCQhard

An organization is moving a monolithic application to a microservices architecture. Which security design pattern is most effective for centralizing authentication while decoupling it from individual microservices?

A.Centralized database user management.
B.API Gateway pattern acting as an identity provider proxy.
C.Service Mesh with mutual TLS enabled.
D.Sidecar pattern using a local proxy for mTLS.
AnswerB

An API Gateway terminates authentication centrally, validating tokens before routing to microservices, which then trust the gateway's assertions. This decouples identity logic from each service, satisfying the centralised-authentication requirement without embedding credentials handling in every microservice.

Why this answer

The API Gateway pattern acting as an identity provider proxy centralizes authentication at the gateway, which validates tokens/credentials and forwards authenticated requests to microservices. This decouples authentication from individual services, allowing them to focus on business logic while the gateway enforces identity consistently.

Exam trap

CSSLP often tests the difference between authentication (identity) and transport security (mTLS) — candidates pick service mesh or sidecar options that secure service-to-service traffic but do not centralize user authentication.

How to eliminate wrong answers

Option A is wrong because centralized database user management centralizes credential storage but does not decouple authentication from services — each service would still need to query the database or implement auth logic. Option C is wrong because a service mesh with mutual TLS provides service-to-service authentication (workload identity) and encryption, but it does not centralize end-user authentication or act as an identity provider proxy. Option D is wrong because the sidecar pattern with mTLS also addresses service-to-service security, not centralized user authentication; it decouples networking concerns but not identity management.

44
Multi-Selecthard

When designing for auditability, which THREE of the following pieces of information should be captured in security logs?

Select 3 answers
A.The full password of the user involved in the event.
B.The type of action performed.
C.The user's home address and phone number.
D.User identity or service account identifier.
E.The timestamp and success/failure status of the action.
AnswersB, D, E

Recording the action type — for example read, write, delete, or login — establishes what operation occurred, which is essential for reconstructing events during an audit. Without it, log entries show only who and when, leaving the nature of the activity unverifiable and accountability incomplete.

Why this answer

Option B is correct because audit logs must record the type of action performed (e.g., login, file access, privilege change, configuration modification) so that reviewers can reconstruct what occurred and determine whether the activity was authorized. Option D is correct because capturing the user identity or service account identifier establishes accountability, tying each event to a specific principal so that actions cannot be repudiated and can be traced back to an individual or automated account. Option E is correct because the timestamp provides the chronological ordering needed for forensic reconstruction and correlation across systems, while the success/failure status distinguishes completed actions from attempted ones, which is essential for detecting brute-force attempts, unauthorized access, and policy violations.

Option A is not appropriate because logging full passwords would expose credentials to anyone with log access and violates security best practices; passwords should never be stored in plaintext logs. Option C is not appropriate because a home address and phone number are personally identifiable information that are not relevant to the security event and would create unnecessary privacy and compliance risk.

Exam trap

CSSLP often tests the misconception that 'more data is better' for auditability, tempting candidates to select PII or credentials, when in fact audit logs must be minimized to relevant security events and never contain secrets.

45
MCQeasy

When designing an API, which approach best supports the 'Complete Mediation' principle?

A.Relying on the frontend to filter out unauthorized menu items.
B.Checking authorization only once at the beginning of the user session.
C.Allowing public access to all GET methods in the API.
D.Verifying authorization on every single API request.
AnswerD

Complete Mediation demands that every access attempt be checked against policy, with no caching of prior decisions. Verifying authorisation on each API request satisfies this by preventing bypass through reused sessions or assumed trust, ensuring no request reaches protected resources unchecked.

Why this answer

Complete mediation requires that every access to every object be checked for authority.

46
Multi-Selecthard

A team is designing a browser-based single-page application that will call backend microservices directly from the client. The security architect wants to reduce the risk that a malicious script injected into the page can silently perform privileged actions on behalf of a logged-in user. Which TWO design choices best reduce this risk? (Choose two.)

Select 2 answers
A.Enforce a strict Content Security Policy that disallows inline scripts and restricts script sources to a vetted allowlist.
B.Move all authorization decisions to the client so the backend can trust requests that pass the UI checks.
C.Store access tokens in memory only and never in localStorage or sessionStorage, and use a short-lived token with silent renewal.
D.Rely on the SameSite=Strict attribute on the session cookie as the sole control against cross-site request forgery.
E.Enable CORS with the wildcard origin so any front end can call the microservices without preflight failures.
AnswersA, C

A strict CSP with nonces or hashes and no inline script blocks the most common injection vectors that would run attacker code in the page. Combined with in-memory token storage, it addresses both the injection and the credential-theft halves of the threat, which is why it belongs in the design rather than as a later hardening step.

Why this answer

The two effective controls are keeping tokens out of persistent browser storage with short lifetimes, and enforcing a strict Content Security Policy. Together they reduce both the likelihood that injected script executes and the value of any token it might obtain. Neither alone is sufficient, and controls aimed at cross-site request forgery or permissive CORS do not address the same-origin injection threat described.

Exam trap

The trap here is conflating cross-site request forgery defenses such as SameSite cookies with defenses against script injected into the trusted origin, which are different threat models.

47
MCQhard

A software architect is designing a system that uses a third-party library to parse complex file formats. The library has had several critical vulnerabilities in the past. The architect wants to reduce the risk of a zero-day vulnerability in the library compromising the entire application. Which design approach best mitigates this risk?

A.Wrap the library in a custom abstraction layer that validates all inputs and outputs to ensure they conform to expected formats.
B.Require the library to be updated to the latest version as soon as patches are available and monitor vulnerability feeds.
C.Perform static code analysis on the library's source code before each release to identify potential vulnerabilities.
D.Run the file parsing library in a separate process with minimal privileges and communicate with the main application via a restricted interface.
AnswerD

Isolating the library in a separate process with least privilege limits the impact of a zero-day exploit. If the parser is compromised, the attacker gains only the privileges of that process, not the entire application. The restricted interface further reduces the attack surface. This is a sandboxing approach that contains the blast radius.

Why this answer

Running a risky component in an isolated process with minimal privileges is a sandboxing technique that contains the damage from a zero-day. Even if the library is exploited, the attacker is confined to that process and cannot easily access the rest of the application or system. This is a proactive architectural mitigation.

Exam trap

The trap here is focusing on detection or patching, which do not protect against an unknown vulnerability, instead of containment, which limits the impact of an exploit.

48
Multi-Selecteasy

When evaluating a secure design, which TWO of the following practices are considered essential for secure session management?

Select 2 answers
A.Allowing multiple simultaneous sessions for a single user.
B.Using long-lived sessions to improve user experience.
C.Setting the HttpOnly and Secure flags on session cookies.
D.Storing session tokens in the browser's local storage.
E.Regenerating the session ID after a successful login.
AnswersC, E

The HttpOnly flag blocks JavaScript access to the session cookie, mitigating XSS-based theft, while Secure restricts transmission to HTTPS, preventing interception over cleartext channels. Together they harden the cookie itself, a core session management control.

Why this answer

Option C is correct because setting the HttpOnly flag prevents client-side JavaScript from accessing the session cookie, mitigating XSS-based session theft, while the Secure flag ensures the cookie is only transmitted over HTTPS, protecting it from interception on plaintext channels. Option E is correct because regenerating the session ID after successful authentication prevents session fixation attacks, where an attacker pre-sets a known session ID and hijacks the authenticated session. Option A is not essential and can actually weaken security by increasing the attack surface and complicating session tracking.

Option B is incorrect because long-lived sessions increase the window of opportunity for token theft or replay; secure designs favor short lifetimes with re-authentication or refresh tokens. Option D is incorrect because storing session tokens in localStorage exposes them to XSS since JavaScript can read them, unlike HttpOnly cookies.

Exam trap

CSSLP often tests the misconception that storing session tokens in local storage is secure, but it is vulnerable to XSS; HttpOnly cookies are preferred, and session ID regeneration after login is essential.

49
Multi-Selectmedium

When designing a secure API, which THREE of the following practices are part of a 'defense in depth' strategy?

Select 3 answers
A.Enforcing mutual TLS (mTLS) for authentication.
B.Implementing rate limiting at the API gateway.
C.Hardcoding API keys in the code for efficiency.
D.Relying solely on the WAF for security.
E.Implementing input validation for all parameters.
AnswersA, B, E

Mutual TLS authenticates both client and server at the transport layer, so a compromised credential or spoofed endpoint still fails the handshake. This adds an independent control layer beyond tokens or gateway checks, satisfying defense in depth by ensuring no single authentication failure grants API access.

Why this answer

Option A is correct because enforcing mutual TLS (mTLS) authenticates both the client and the server at the transport layer, adding a strong cryptographic identity check that complements higher-layer controls in a defense-in-depth strategy. Option B is correct because rate limiting at the API gateway mitigates abuse, brute-force attempts, and denial-of-service by throttling excessive requests, providing an independent protective layer even if other controls fail. Option E is correct because input validation for all parameters prevents injection attacks (such as SQLi and XSS) and malformed data from reaching backend logic, forming a critical application-layer defense.

Option C is not appropriate because hardcoding API keys in source code exposes secrets to anyone with repository access and prevents rotation, weakening security rather than adding a layer. Option D is not appropriate because relying solely on a WAF creates a single point of failure and ignores other layers like authentication, input validation, and rate limiting that defense in depth requires.

50
MCQmedium

A healthcare SaaS provider is designing a multi-tenant system where each tenant's data is stored in a shared database. To prevent one tenant from accessing another tenant's records, the design team decides to enforce isolation at the data-access layer. Which secure design approach best ensures tenant isolation while maintaining a single logical database?

A.Use a separate database schema for each tenant within the same database instance, and grant each tenant's application role access only to its own schema.
B.Rely on application code to always include a WHERE clause filtering by tenant ID in every query, and perform code reviews to ensure compliance.
C.Implement row-level security (RLS) policies in the database that automatically filter rows based on the tenant identifier associated with the authenticated session.
D.Encrypt each tenant's data with a unique encryption key and store the keys in a hardware security module (HSM), decrypting only after the application retrieves the data.
AnswerC

Row-level security policies in the database enforce tenant isolation at the data layer, ensuring that every query is automatically filtered by tenant ID. This prevents accidental cross-tenant access even if application code has flaws, because the database itself enforces the boundary. It supports a shared schema and single logical database while maintaining strong isolation.

Why this answer

Row-level security (RLS) enforces tenant isolation directly in the database engine, automatically filtering data based on the authenticated tenant context. This provides a strong, centralized control that is not dependent on application code correctness, reducing the risk of cross-tenant data leakage. It aligns with the principle of defense in depth and is well-suited for multi-tenant architectures with shared databases.

Exam trap

The trap here is assuming that application-level filtering or encryption alone guarantees tenant isolation, when in fact a database-enforced policy is needed to prevent accidental cross-tenant access.

Ready to test yourself?

Try a timed practice session using only Secure Software Architecture And Design questions.