View Full ISC CSSLP Exam Dumps and Practice Test Dumps
Question 161.
A development team is designing a feature that processes sensitive user input. Which control should be considered FIRST?
- Define validation rules based on expected input and business requirements
- Increase application memory
- Disable error handling
- Trust input from authenticated users automatically
Correct Answer: 1. Define validation rules based on expected input and business requirements
Explanation:
Input validation should be based on what the application legitimately expects rather than attempting to identify every possible malicious value. Clear validation rules can reduce injection, malformed data, and logic-abuse risks. Authentication does not make user input inherently trustworthy. Validation should be combined with safe APIs, output encoding, authorization, and least privilege depending on how the data is used.
Question 162.
A secure application must protect an API from excessive automated requests. Which control is MOST appropriate?
- Disable authentication
- Apply rate limiting and abuse-detection controls
- Increase session lifetime
- Allow unlimited requests from authenticated users
Correct Answer: 2. Apply rate limiting and abuse-detection controls
Explanation:
Rate limiting helps reduce brute-force attacks, scraping, resource exhaustion, and other automated abuse. Limits should reflect business requirements and may vary by user, client, endpoint, or transaction sensitivity. Monitoring and adaptive controls can provide additional protection. Authentication alone does not prevent a valid account or compromised credential from generating excessive requests.
Question 163.
A software team wants to determine whether sensitive data is unnecessarily crossing trust boundaries. Which activity is MOST useful?
- Performance benchmarking
- Source-code formatting review
- Data-flow analysis
- User-interface testing
Correct Answer: 3. Data-flow analysis
Explanation:
Data-flow analysis identifies how information moves among users, processes, services, data stores, and external systems. It helps teams recognize where sensitive information crosses trust boundaries and where controls such as encryption, validation, authorization, or minimization may be required. It can also reveal unnecessary copies or transfers that increase exposure without providing business value.
Question 164.
A software system cannot verify the integrity of an update package. What is the safest action?
- Install the update anyway
- Ignore the validation failure
- Let users decide whether the package is trustworthy
- Reject the update until integrity can be verified**
Correct Answer: 4. Reject the update until integrity can be verified
Explanation:
Software updates can modify trusted code and should not be installed when their integrity or origin cannot be established. A secure update process should verify digital signatures, trusted publishers, and package integrity before installation. Accepting unverified updates creates a direct supply-chain attack path. Appropriate logging and alerting should also occur when validation fails.
Question 165.
Which practice BEST supports reducing the attack surface of a software product?
- Disable unnecessary features, services, endpoints, and interfaces
- Enable every optional feature by default
- Give all users administrator rights
- Expose debugging interfaces in production
Correct Answer: 1. Disable unnecessary features, services, endpoints, and interfaces
Explanation:
Every exposed feature or interface creates additional code and behavior that may contain vulnerabilities. Removing unnecessary functionality reduces the number of potential attack paths and simplifies testing and maintenance. Required features should be configured securely and exposed only to authorized users. Debug interfaces and unused services should generally be disabled in production.
Question 166.
A development team needs to store a high-value API secret used by a backend service. Which approach is MOST appropriate?
- Commit the secret to source control
- Retrieve the secret from an approved secrets-management service using a controlled service identity
- Store the secret in application comments
- Send the secret to developers through email
Correct Answer: 2. Retrieve the secret from an approved secrets-management service using a controlled service identity
Explanation:
Sensitive secrets should be separated from source code and deployment artifacts. A dedicated secrets-management service can enforce access controls, rotation, logging, and secure retrieval. The backend service should authenticate using a distinct identity and receive only the secrets it requires. Hard-coded or manually distributed credentials are difficult to protect and rotate safely.
Question 167.
A security tester discovers that a user can modify a hidden form field to become an administrator. What is the MAIN issue?
- Weak encryption
- Poor performance
- The server trusts client-controlled authorization data
- Insufficient storage capacity
Correct Answer: 3. The server trusts client-controlled authorization data
Explanation:
Hidden fields are still controlled by the client and can be modified easily. Security-sensitive attributes such as roles, privileges, account ownership, and approval status must be derived from trusted server-side data. The server should independently verify authorization before performing protected actions. Client-side controls may improve usability but should never be relied upon as the security boundary.
Question 168.
A software release pipeline allows developers to modify production artifacts after they have passed testing. Which control is BEST?
- Allow modifications if they are small
- Disable artifact logging
- Trust senior developers to make manual changes
- Make approved artifacts immutable and verify integrity at deployment**
Correct Answer: 4. Make approved artifacts immutable and verify integrity at deployment
Explanation:
Once an artifact has completed testing and approval, changing it invalidates the assurance provided by those activities. Approved artifacts should be stored in controlled repositories, protected against modification, and verified before deployment. If a change is needed, a new artifact should be built and pass the required testing and approval process. This supports release integrity and traceability.
Question 169.
What is the PRIMARY purpose of assigning severity ratings to security defects?
- Prioritize remediation based on risk and impact
- Eliminate the need to fix low-severity issues
- Determine developer salaries
- Replace vulnerability verification
Correct Answer: 1. Prioritize remediation based on risk and impact
Explanation:
Severity ratings help teams allocate resources according to the potential impact, exploitability, exposure, and business significance of a weakness. Higher-risk findings generally require faster attention, while lower-risk issues may follow normal maintenance timelines. Severity does not mean that lower-priority findings should be ignored indefinitely. Risk-based prioritization supports effective vulnerability management.
Question 170.
A web application uses a third-party identity provider. Which control is MOST important when accepting identity tokens?
- Trust every token that looks correctly formatted
- Validate the signature, issuer, audience, expiration, and other required claims
- Disable token expiration
- Accept unsigned tokens from internal users
Correct Answer: 2. Validate the signature, issuer, audience, expiration, and other required claims
Explanation:
Federated identity tokens should be validated before they are trusted. Signature verification establishes integrity and expected origin, while issuer, audience, expiration, and other claim checks ensure the token is intended for the receiving application and remains valid. Failure to validate these properties can allow token substitution, replay, or privilege abuse.
Question 171.
A development team wants to prevent sensitive credentials from appearing in crash dumps. Which practice is BEST?
- Keep credentials in memory permanently
- Disable all crash reporting
- Minimize sensitive data lifetime in memory and sanitize diagnostic output
- Store passwords in global variables
Correct Answer: 3. Minimize sensitive data lifetime in memory and sanitize diagnostic output
Explanation:
Crash dumps and debugging artifacts can contain process memory, including credentials, tokens, and cryptographic material. Sensitive values should remain in memory only as long as needed, and diagnostic collection should be configured to avoid unnecessary disclosure. Access to dumps should also be restricted. Completely disabling diagnostics can harm troubleshooting and is not always necessary.
Question 172.
A company releases a security patch for a critical product. Which practice BEST supports trustworthy customer installation?
- Email unsigned binaries directly from developer accounts
- Publish only the filename
- Allow customers to modify the patch before installation
- Digitally sign the patch and provide integrity verification**
Correct Answer: 4. Digitally sign the patch and provide integrity verification
Explanation:
Digital signing allows customers or automated update systems to verify that a patch originated from the expected publisher and has not been altered. Signing keys and the signing process must be strongly protected because compromise could allow malicious updates to appear legitimate. Patch testing, secure distribution, and rollback planning are also important components of secure update management.
Question 173.
Which activity BEST supports identification of security requirements that may have been missed during initial design?
- Threat modeling and misuse-case analysis
- Increasing server capacity
- User-interface styling
- Removing security documentation
Correct Answer: 1. Threat modeling and misuse-case analysis
Explanation:
Threat modeling and misuse cases help teams think about attacker goals, abuse paths, trust boundaries, and unintended use of legitimate functionality. These analyses often expose security requirements that normal functional use cases overlook. They are most valuable when performed early but can also be revisited after major design changes or when new threats emerge.
Question 174.
A software system must verify that configuration changes are made only by authorized administrators. Which control is BEST?
- Store configuration in a public file share
- Require authenticated, authorized administration with protected audit logging
- Allow anonymous configuration updates
- Disable change history
Correct Answer: 2. Require authenticated, authorized administration with protected audit logging
Explanation:
Security-sensitive configuration should be modified only through controlled administrative paths. Strong authentication, role-based authorization, individual administrator identities, change approval where appropriate, and protected logging help prevent and detect unauthorized modifications. Configuration integrity is critical because attackers may weaken security controls without directly modifying application code.
Question 175.
A development team is building an application that processes payment amounts. Which practice BEST protects transaction integrity?
- Trust values calculated by the browser
- Accept any amount supplied by the user
- Recalculate and validate security-sensitive transaction values on the trusted server
- Disable transaction logging
Correct Answer: 3. Recalculate and validate security-sensitive transaction values on the trusted server
Explanation:
Attackers can modify client-side values regardless of what the user interface displays. The trusted server should independently calculate or validate prices, discounts, account ownership, transaction limits, and other security-sensitive values using authoritative data. Client-side calculations can improve responsiveness but should never be treated as authoritative for transaction integrity.
Question 176.
A software application includes a debug mode that exposes stack traces and internal configuration. What is the BEST production practice?
- Enable debug mode for all users
- Leave debug mode enabled but hide the menu
- Give anonymous users access for troubleshooting
- Disable or tightly restrict debug functionality in production**
Correct Answer: 4. Disable or tightly restrict debug functionality in production
Explanation:
Debug functionality can expose stack traces, configuration, credentials, internal paths, and other information useful to attackers. Production deployments should disable unnecessary debugging interfaces and detailed diagnostic output. If troubleshooting functionality must remain available, it should be strongly authenticated, authorized, monitored, and isolated from ordinary users.
Question 177.
What is the MAIN purpose of maintaining secure coding training for developers?
- Improve developers’ ability to recognize and avoid recurring security weaknesses
- Replace code review and testing
- Guarantee that no vulnerabilities will be introduced
- Eliminate the need for security requirements
Correct Answer: 1. Improve developers’ ability to recognize and avoid recurring security weaknesses
Explanation:
Training helps developers understand common vulnerability patterns, secure APIs, organizational standards, and the security implications of design and implementation choices. It can reduce recurring mistakes and improve the quality of code reviews. Training is most effective when combined with secure coding standards, automated tooling, threat modeling, testing, and feedback from real defects.
Question 178.
A software team uses a library with a vulnerable transitive dependency. Why is this still a security concern?
- Only direct dependencies can affect application security
- Vulnerabilities in indirect dependencies can still be included and executed by the application
- Transitive dependencies are never deployed
- Package managers automatically remove all vulnerable code
Correct Answer: 2. Vulnerabilities in indirect dependencies can still be included and executed by the application
Explanation:
Applications often include libraries that themselves depend on additional packages. These transitive dependencies can contain exploitable vulnerabilities even if developers never selected them directly. Dependency inventories and scanning should therefore include the full dependency graph. Teams should understand which versions are actually resolved during builds and how vulnerable components can be upgraded or replaced.
Question 179.
A vulnerability has been fixed, but the team wants to ensure it does not reappear. What should be added?
- A permanent exception
- A note in a meeting agenda
- A security regression test reproducing the original weakness
- An additional administrator account
Correct Answer: 3. A security regression test reproducing the original weakness
Explanation:
A regression test that captures the original vulnerability can verify the fix and detect future reintroduction. This is particularly effective when the test can be automated in CI/CD. The test should demonstrate that the previously unsafe behavior is no longer possible. Regression testing helps convert lessons from discovered vulnerabilities into lasting improvements in the development process.
Question 180.
Which practice BEST reflects mature secure software lifecycle improvement?
- Repeat the same process regardless of defect trends
- Stop reviewing metrics after release
- Treat every security incident as an isolated event
- Use findings, incidents, metrics, and lessons learned to improve lifecycle controls**
Correct Answer: 4. Use findings, incidents, metrics, and lessons learned to improve lifecycle controls
Explanation:
A mature secure software program continuously learns from vulnerabilities, incidents, code-review findings, test results, and operational data. Recurring weaknesses can indicate gaps in training, standards, architecture, tooling, or governance. Using these lessons to improve lifecycle controls reduces future risk and makes security practices more effective over time. Continuous improvement is a key element of sustainable software security.