Skip to content

SQL Injection Tests

postmodern edited this page Sep 14, 2010 · 11 revisions

SQL Detection

  • Append -- to the query param:
    • If the response does not change, the query param might be used in an SQL statement.

SQL Error Detection

  • Append ', " or ` to the query param:
    • If the response lacks data or contains an SQL Error message, the query param is being used in an SQL statement.

Filter Detection

  • Pre-append -- to the query param:
    • If the response does not change, filtering may be removing - characters.
  • Append 0 to the numeric query param:
    • If the response does not change, filtering may be removing 0 characters.
  • Pre-append and append punctuation characters:
    • If the response does not change, filtering may be removing punctuation characters.

Numeric Detection

  • Pre-append 0 to the numeric query param:
    • If the response does not change, the query param is being treated as an integer.
  • Pre-append - to the numeric query param:
    • If the response does change, the the query param is being treated as an integer.
  • Pre-append + to the numeric query param:
    • If the response does not change, the query param is being treated as an integer.
  • Divide the numeric query param by 2 and append *2:
    • If the response does not change, the query param is being treated as an integer.
  • Add 1 to the numeric query param and append -1:
    • If the response does not change, the query param is being treated as an integer.

String Detection

Clone this wiki locally