SY0-701 Threats, Vulnerabilities, and Mitigations Practice Question
A file-sharing portal uses a download URL like /download?file=12345. A tester changes the value to 12346 and can access another department's document without logging in again. Which control most directly prevents this issue?
⚠ Common exam trap
Many exam-takers confuse confidentiality controls (like HTTPS or longer identifiers) with authorization controls, failing to recognize that the core flaw is the lack of server-side permission verification for each object request.
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
✓
Implement server-side authorization checks for every object request.
The issue is that the server trusts the file identifier in the URL without verifying that the authenticated user is authorized to access the requested resource. Implementing server-side authorization checks for every object request ensures that before serving any file, the server validates whether the current session or user has explicit permission to access that specific document. This directly prevents the IDOR (Insecure Direct Object Reference) vulnerability demonstrated by the tester.
Answer analysis
Option-by-option breakdown
For each option: why learners choose it and why it is or isn't the right answer here.
- ✓
Implement server-side authorization checks for every object request.
Why this is correct
Server-side authorization ensures the application verifies that the current user is allowed to access the specific object requested. This directly stops insecure direct object reference issues because changing the identifier alone no longer grants access. The check must happen on the server for every request, not in the browser.
- ✗
Make the identifier longer so users cannot guess nearby values.
Why it's wrong here
Lengthening identifiers, such as switching to UUIDs, reduces the chance of random guessing or enumeration attacks, but this is security through obscurity rather than a real control. It does not add any authorization logic, so if a user obtains a valid identifier through shared links, logs, or cache entries, they can still access the object without permission. The underlying IDOR flaw is missing access control; increasing entropy only makes discovery harder, it never substitutes for a server-side permission check.
- ✗
Move the portal to HTTPS so request parameters cannot be intercepted.
Why it's wrong here
HTTPS protects the confidentiality and integrity of data in transit, preventing passive eavesdroppers from reading identifiers in URLs or request bodies. However, the typical attacker in an IDOR scenario is an already authenticated user of the portal who is simply manipulating parameters to access resources they are not entitled to. Since HTTPS does not inspect or authorize requests, an authenticated user can still change an object ID and receive the response; the access control decision is never made, so the vulnerability remains fully exploitable.
- ✗
Store the document name in a hidden field and validate it in JavaScript.
Why it's wrong here
Hidden fields and JavaScript validation run entirely in the client environment, which the attacker controls. A user can use browser developer tools to alter the hidden field value, disable the script, or craft a raw HTTP request that bypasses the client-side checks altogether. Authorization must be enforced on the server, where the decision cannot be tampered with; client-side validation only creates a false sense of security and does not mitigate the IDOR at all.
Go deeper
Related to this question
Learn chapter
Vulnerability Scanning and Assessment
Key term
Vulnerability
A vulnerability is a weakness in a system, network, or software that could be exploited by a threat to cause harm or unauthorized access.
Key term
Authorization
Authorization determines what an authenticated user is allowed to do within a system, such as accessing files, running programs, or changing settings.
About these practice questions
This SY0-701 question is part of Courseiva's 1,013-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 →
JA
Written by Johnson Ajibi, MSc IT Security
Senior Network & Security Engineer · founder of Courseiva
This SY0-701 practice question is part of Courseiva's free CompTIA 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 SY0-701 exam.