ISC CSSLP Practice Test Questions and Exam Dumps Part8 Q141-160

View Full ISC CSSLP Exam Dumps and Practice Test Dumps

 

Question 141.

A software team is designing a sensitive business workflow that requires two independent approvals. Which security principle is being applied?

  1. Separation of duties
  2. Open design
  3. Data minimization
  4. Fail open

Correct Answer: 1. Separation of duties

Explanation:

Separation of duties reduces the risk that one individual can complete an entire sensitive process without oversight. Requiring independent approvals can help prevent fraud, misuse, and accidental errors. The application should also maintain individual identities and protected audit records so each approval can be attributed to a specific person. This control is especially valuable for high-value transactions, administrative changes, and security-sensitive configuration.

Question 142.

Which implementation BEST reduces the risk of insecure deserialization?

  1. Deserialize arbitrary untrusted objects with full privileges
  2. Avoid unsafe native object deserialization and accept only strictly validated expected data structures
  3. Disable input validation
  4. Store serialized objects in publicly writable locations

Correct Answer: 2. Avoid unsafe native object deserialization and accept only strictly validated expected data structures

Explanation:

Unsafe deserialization can allow attackers to manipulate object data, invoke unexpected code paths, or exploit dangerous classes. Applications should prefer simple structured formats and validate expected types and fields explicitly rather than recreating arbitrary objects from untrusted input. Integrity protection, allowlists, and least privilege can provide additional defense. Deserialization libraries and frameworks should also remain patched and supported.

Question 143.

A security architect wants to understand what could happen if an attacker compromises a public-facing service. Which activity is MOST useful?

  1. UI usability testing
  2. Database performance tuning
  3. Attack-path analysis across trust boundaries and dependencies
  4. Marketing review

Correct Answer: 3. Attack-path analysis across trust boundaries and dependencies

Explanation:

Attack-path analysis examines how compromise of one component could allow movement toward more sensitive systems, data, or privileges. It helps identify weak boundaries, excessive permissions, shared credentials, and overly broad communication paths. This information supports segmentation, least privilege, authentication, and monitoring decisions. Understanding likely post-compromise movement is an important part of secure architecture and threat modeling.

Question 144.

An application encounters a failure while validating the integrity of a security-sensitive configuration file. What is the safest behavior?

  1. Load the configuration anyway
  2. Ignore the integrity failure
  3. Replace the file with user-supplied configuration
  4. Reject the configuration and enter a controlled secure state

Correct Answer: 4. Reject the configuration and enter a controlled secure state

Explanation:

If the integrity of a security-sensitive configuration cannot be verified, using it could allow unauthorized or malicious settings to take effect. The application should reject the untrusted configuration and fail in a predictable secure manner. Operators should receive appropriate alerts and diagnostic information without exposing sensitive details. Security controls should not silently continue using data whose integrity is uncertain.

Question 145.

What is the PRIMARY purpose of secure defaults in software design?

  1. Ensure that initial or fallback configurations provide reasonable protection without requiring users to harden them first
  2. Eliminate the need for administrator configuration
  3. Make all features publicly accessible
  4. Disable authentication until setup is complete

Correct Answer: 1. Ensure that initial or fallback configurations provide reasonable protection without requiring users to harden them first

Explanation:

Secure defaults reduce risk when users or administrators do not modify initial settings. Examples include disabling unnecessary services, requiring authentication, limiting permissions, and refusing insecure protocols. Administrators may later adjust settings based on legitimate requirements, but the initial state should not create avoidable exposure. Secure defaults help prevent common configuration errors and support fail-safe design.

Question 146.

A software application uses OAuth to obtain permission to access a user’s external resources. What is OAuth primarily designed to provide?

  1. Data encryption
  2. Delegated authorization
  3. Password hashing
  4. Malware detection

Correct Answer: 2. Delegated authorization

Explanation:

OAuth is primarily an authorization framework that allows a client to obtain limited access to resources without requiring the user to share primary credentials with that client. It uses tokens representing granted permissions or scopes. Authentication can be layered on through technologies such as OpenID Connect. Developers should not assume that possession of an OAuth access token alone provides all identity information required by an application.

Question 147.

A development team wants to ensure that sensitive functionality cannot be invoked by simply bypassing the user interface. What control is MOST important?

  1. Hiding administrative menu items
  2. Using complex URLs
  3. Enforcing authorization on the server for every protected operation
  4. Renaming privileged endpoints

Correct Answer: 3. Enforcing authorization on the server for every protected operation

Explanation:

Attackers can issue requests directly without using the intended interface. Hiding a button or using obscure URLs does not provide reliable access control. The trusted server must validate the user’s identity and authorization before performing every protected action. Client-side controls may improve usability, but they should never be treated as the security boundary for sensitive operations.

Question 148.

A software company wants to ensure that security patches distributed to customers have not been modified. Which control is BEST?

  1. Compress the patch files
  2. Rename the patch before release
  3. Publish a larger installation package
  4. Digitally sign the patch and protect the signing key

Correct Answer: 4. Digitally sign the patch and protect the signing key

Explanation:

Digital signatures allow customers and update systems to verify both the origin and integrity of a software patch. The private signing key therefore becomes a highly sensitive asset and must be strongly protected. Access to signing operations should be tightly controlled and audited, with revocation procedures available if the key is compromised. Signing does not replace security testing of the patch itself.

Question 149.

Which practice BEST reduces the impact of a compromised application service account?

  1. Assign only the minimum privileges required by that service
  2. Give the account administrator rights to simplify support
  3. Reuse the same account across all applications
  4. Disable account monitoring

Correct Answer: 1. Assign only the minimum privileges required by that service

Explanation:

Least privilege reduces the damage an attacker can cause with a compromised service credential. Each application should use a distinct identity and receive only the permissions required for its legitimate operations. Separate identities also improve accountability and make credentials easier to rotate or revoke independently. Broad shared accounts create a much larger blast radius and should be avoided when practical.

Question 150.

A team wants to prevent replay of signed API requests. Which control is MOST appropriate?

  1. Use a longer URL
  2. Include a nonce, timestamp, or equivalent freshness mechanism in the authenticated request
  3. Disable signatures
  4. Accept identical requests indefinitely

Correct Answer: 2. Include a nonce, timestamp, or equivalent freshness mechanism in the authenticated request

Explanation:

A valid signature proves that a request was created by someone possessing the appropriate key, but without a freshness mechanism an attacker may capture and resend the same signed request. Nonces, timestamps, sequence values, or one-time identifiers can help the server detect replayed messages. These values must themselves be covered by the integrity or signature mechanism so attackers cannot alter them.

Question 151.

A security review finds that a mobile application stores access tokens in an unprotected local file. What is the MAIN concern?

  1. Token files may use too much disk space
  2. The application may start more slowly
  3. Malware or another user may obtain the tokens and impersonate the account
  4. Token lengths may increase

Correct Answer: 3. Malware or another user may obtain the tokens and impersonate the account

Explanation:

Access tokens often function as bearer credentials, meaning possession may be sufficient to access protected resources. They should therefore be stored using platform-provided protected storage mechanisms when available, with scopes and lifetimes limited appropriately. Sensitive tokens should not be placed in broadly readable files, logs, or backups. Compromise of a token may allow attackers to impersonate the user until it expires or is revoked.

Question 152.

A new software release depends on a critical third-party cloud API. What should the release team verify before production deployment?

  1. Only that the API works during one test
  2. Only that the provider has a public website
  3. Only that the development team likes the API
  4. Authentication, failure behavior, security requirements, monitoring, and dependency risk

Correct Answer: 4. Authentication, failure behavior, security requirements, monitoring, and dependency risk

Explanation:

Third-party APIs introduce both trust and availability dependencies. The application should authenticate the provider appropriately, validate responses, protect data in transit, enforce timeouts, and define safe behavior during failures. Monitoring should detect degraded service or unexpected responses. Business continuity and provider security should also be considered because external services may fail independently of the application.

Question 153.

Which practice BEST helps prevent accidental disclosure of secrets through source-control history?

  1. Keep secrets outside repositories and use automated secret scanning
  2. Rename passwords before committing them
  3. Store secrets in code comments
  4. Depend on repository privacy alone

Correct Answer: 1. Keep secrets outside repositories and use automated secret scanning

Explanation:

Once a secret is committed, deleting it from the latest version may not remove it from repository history. Applications should obtain credentials from approved external secret-management mechanisms. Automated scanners can detect likely secrets before or after commits. If a credential is exposed, it should be rotated or revoked promptly rather than assumed safe because the file was later deleted.

Question 154.

A development team wants to protect users from malicious content uploaded as images. Which approach is MOST appropriate?

  1. Trust the file extension
  2. Validate and safely process the content using restricted privileges and appropriate file-handling controls
  3. Execute every upload as part of validation
  4. Store uploads in the application executable directory

Correct Answer: 2. Validate and safely process the content using restricted privileges and appropriate file-handling controls

Explanation:

Files that appear to be images can contain malformed data, embedded content, or unexpected formats designed to exploit processing libraries. Applications should validate actual content, restrict acceptable formats and size, use safe storage, and process uploads with minimal privileges. Re-encoding or scanning may provide additional protection depending on the risk. File extensions alone cannot establish that uploaded content is safe.

Question 155.

A software team wants to reduce the chance that cryptographic algorithms become obsolete during a product’s long support life. Which design principle is MOST appropriate?

  1. Permanently hard-code one algorithm everywhere
  2. Create a proprietary encryption algorithm
  3. Design for cryptographic agility using approved abstractions and manageable key lifecycles
  4. Avoid encryption entirely

Correct Answer: 3. Design for cryptographic agility using approved abstractions and manageable key lifecycles

Explanation:

Cryptographic agility allows software to transition to different approved algorithms, key sizes, or protocols when existing choices become obsolete or unsuitable. This is particularly important for long-lived products and archived data. The architecture should avoid unnecessary assumptions that make algorithms difficult to replace. Cryptographic changes still require careful testing, interoperability planning, and secure key migration.

Question 156.

A secure application permits users to upload compressed archives. What security concern should be addressed MOST carefully?

  1. The archive filename may be too short
  2. Compressed files always contain malware
  3. Archive processing should use administrator privileges
  4. Resource exhaustion and path manipulation during extraction

Correct Answer: 4. Resource exhaustion and path manipulation during extraction

Explanation:

Compressed archives can expand to extremely large sizes or contain crafted paths that overwrite files outside the intended extraction directory. Applications should impose resource limits, validate extracted paths, restrict supported formats, and process archives in isolated environments with minimal permissions. These controls help reduce risks such as decompression bombs and archive-based path traversal.

Question 157.

What is the MAIN purpose of performing security regression tests after fixing a vulnerability?

  1. Verify that the vulnerability remains fixed after future software changes
  2. Replace all functional tests
  3. Remove the vulnerability from documentation
  4. Eliminate the need for code review

Correct Answer: 1. Verify that the vulnerability remains fixed after future software changes

Explanation:

A vulnerability fix should often be accompanied by a test that reproduces the original condition and confirms the corrected behavior. Adding that test to the regression suite helps detect if future changes accidentally reintroduce the same weakness. Regression testing is particularly useful for recurring authorization, validation, session, and logic flaws. It complements other testing and review techniques.

Question 158.

A software organization wants developers to receive security feedback as early as possible. Which approach is BEST?

  1. Wait for annual penetration testing
  2. Integrate appropriate security checks into developer workflows and CI/CD pipelines
  3. Perform testing only after production deployment
  4. Avoid automated security testing

Correct Answer: 2. Integrate appropriate security checks into developer workflows and CI/CD pipelines

Explanation:

Early feedback allows security defects to be corrected while developers still understand the relevant code and before vulnerabilities reach later lifecycle stages. Static analysis, dependency checks, secret scanning, unit tests, and selected security tests can be integrated into development workflows. Automated checks do not replace threat modeling, manual review, or penetration testing, but they help make security continuous and repeatable.

Question 159.

A vulnerability exists only in an old product version that is still officially supported. What should the organization do?

  1. Ignore it because a newer version exists
  2. Remove the old version from documentation
  3. Assess and remediate or mitigate the supported version according to vulnerability-management policy
  4. Wait until customers report exploitation

Correct Answer: 3. Assess and remediate or mitigate the supported version according to vulnerability-management policy

Explanation:

If a version remains supported, the organization generally retains responsibility for addressing security issues according to its support and vulnerability-management commitments. The vulnerability should be assessed for severity and exposure, and an appropriate patch, mitigation, upgrade path, or risk decision should be provided. Support policies should clearly define customer expectations and end-of-support timelines.

Question 160.

Which practice BEST represents mature CSSLP-focused software security management?

  1. Treat security testing as a one-time release activity
  2. Rely entirely on individual developer judgment
  3. Stop reviewing software after deployment
  4. Continuously manage security requirements, design, implementation, verification, deployment, maintenance, and retirement

Correct Answer: 4. Continuously manage security requirements, design, implementation, verification, deployment, maintenance, and retirement

Explanation:

Mature software security spans the full development and operational lifecycle. Requirements define protection goals, secure architecture addresses systemic risk, coding practices reduce implementation weaknesses, testing provides assurance, and controlled deployment protects release integrity. Maintenance continues to address vulnerabilities and dependencies until the product is formally retired. Governance, training, metrics, and continuous improvement support these activities across the organization.