inj: sql injection comment zeichen

Hi,

wird in folgender Query schon mit dem Attribut' OR 1=1-- welches Escaped wurde (String ' mit ') das Kommentar -- hier als String gewertet oder wird die Query hier bereits auskommentiert? Müsste man sozusagen hier das Kommentar selbst auch noch escapen oder bearbeiten? Weil falls die Query wie folgt erzeugt wird, hätte ich ja einen SQL Syntax Fehler wenn das Kommentar greift:

SELECT * FROM users WHERE username='' OR 1=1--' AND password='1111';
=>
SELECT * FROM users WHERE username='' OR 1=1 // Syntax Error

oder bleibt die Query so und das Kommentar wird als Teil des String gewertet?

(ist nure ine Theoretische fragen ich weiß dass es Prepared Statements etc. gibt).

lg

  1. SELECT * FROM users WHERE username='' OR 1=1--' AND password='1111';

    Hier ist username der string "' OR 1=1--"

    SELECT * FROM users WHERE username='' OR 1=1 // Syntax Error

    Das ist ein Synxfehler, weil der String beginnt, aber niemals aufhört.

    oder bleibt die Query so und das Kommentar wird als Teil des String gewertet?

    Wenn das Kommentarzeichen maskiert wird, wird es ganz gewöhnlich als String betrachtet

    1. Moin!

      oder bleibt die Query so und das Kommentar wird als Teil des String gewertet?

      Wenn das Kommentarzeichen maskiert wird, wird es ganz gewöhnlich als String betrachtet

      Es gibt keine Kommentare innerhalb von Strings.

      - Sven Rautenberg