Als jij dit toelaat in een string die toegang heeft in jouw database geef je de gebruiker de mogelijkheid om ook daar zonder wachtwoord code uit te voeren. Dit word dan ook een SQL-injectie genoemd.
Actually, no. Een SQL-injectie is het manipuleren van een query waarbij de DATA-delen in een query als SQL geinterpreteerd worden, waarmee je effectief het gedrag van de query kunt veranderen. Injecties zijn mogelijk doordat de DATA-delen onvoldoende zijn beveiligd (door middel van onder andere, maar niet uitsluitend escaping).
Johan K op 15/09/2015 22:46:22
Het escapen is niets meer dan " en ' te vervangen door \" en \' zodat deze tekens "geescaped" worden zodat de PHP interpreter deze tekens (", ') niet interpreteert als een begin of eind van een string.
Dit lijkt mij een oversimplificatie (denk bijvoorbeeld ook aan backslashes (\) en NUL (NULL byte) als je het over string(waarde)s hebt). Daarnaast is het praten over escaping (een definitie hiervan zou kunnen zijn: het ontdoen van de speciale betekenis van een (reeks) karakter(s) binnen een bepaalde context) zinloos als je daarbij niet aangeeft over welke context het gaat (denk aan HTML, een URL, JavaScript, (My)SQL et cetera).