- What is CAPEC-7?
- Blind SQL Injection results from an insufficient mitigation for SQL Injection. Although suppressing database error messages are considered best practice, the suppression alone is not sufficient to prevent SQL Injection. Blind SQL Injection is a form of SQL Injection that overcomes the lack of error messages. Without the error messages that facilitate SQL Injection, the adversary constructs input strings that probe the target through simple Boolean SQL expressions. The adversary can determine if the syntax and structure of the injection was successful based on whether the query was executed or not. Applied iteratively, the adversary determines how and where the target is vulnerable to SQL Injection.
- How does a Blind SQL Injection attack work?
- It typically unfolds over 6 phases. It begins with: [Hypothesize SQL queries in application]
- How do you prevent CAPEC-7?
- Security by Obscurity is not a solution to preventing SQL Injection. Rather than suppress error messages and exceptions, the application must handle them gracefully, returning either a custom error page or redirecting the user to a default page, without revealing any information about the database or the application internals.
- What weaknesses does CAPEC-7 target?
- CAPEC-7 exploits 6 CWE weaknesses, including CWE-20 (Improper Input Validation), CWE-74 (Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')), CWE-89 (Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')), CWE-209 (Generation of Error Message Containing Sensitive Information).
- How severe is CAPEC-7?
- MITRE rates CAPEC-7 as High severity with high likelihood of attack.