Courseiva
hardMultiple SelectObjective-mapped

SSCP Input Validation Practice Question

Which TWO of the following are effective measures to prevent buffer overflow attacks in software development?

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

Validate all input to ensure it meets length constraints

Options A and E are correct. Input validation with length constraints (A) directly prevents buffer overflows by ensuring data does not exceed buffer boundaries. Bounds-checking functions like strncpy (E) also prevent overflows by limiting data copy. Stack canaries (B) detect overflows but do not prevent them; code obfuscation (C) hinders exploitation but does not prevent the vulnerability; ASLR (D) randomizes memory addresses but does not stop the overflow itself.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • Validate all input to ensure it meets length constraints

    Why this is correct

    Correct: Input validation that enforces length constraints prevents data from exceeding buffer capacity, directly stopping buffer overflows.

  • Implement stack canaries

    Why it's wrong here

    Incorrect: Stack canaries detect buffer overflows at runtime but do not prevent the vulnerability from existing.

  • Obfuscate the code to make exploitation harder

    Why it's wrong here

    Incorrect: Obfuscation makes exploitation harder but does not address the underlying buffer overflow flaw.

  • Enable Address Space Layout Randomization (ASLR)

    Why it's wrong here

    Incorrect: ASLR randomizes memory addresses, making exploitation less reliable, but does not prevent the overflow.

  • Use functions that perform bounds checking (e.g., strncpy instead of strcpy)

    Why this is correct

    Correct: Using functions that perform bounds checking (e.g., strncpy) limits data copied and prevents buffer overflows.

About these practice questions

This SSCP question is part of Courseiva's 920-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

Same concept, more angles

1 more way this is tested on SSCP

These questions test the same concept from different angles. Work through them to make sure you can recognise it however the exam phrases it.

Variation 1. Which TWO of the following are effective measures to prevent buffer overflow attacks in a custom-developed application?

easy
  • A.Input validation
  • B.Using unpatched third-party libraries
  • C.Running the application with least privilege
  • D.Disabling ASLR
  • E.Stack canaries

Why A: Input validation helps ensure data fits within buffer limits, and stack canaries detect and prevent stack-based buffer overflows. Using unpatched libraries increases vulnerability; disabling ASLR makes exploitation easier; running with least privilege limits damage but does not prevent the overflow itself.

JA

Written by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

This SSCP practice question is part of Courseiva's free ISC2 certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SSCP exam.