Cheatah: Validierungsfunktion - SQL Syntax prüfen

Beitrag lesen

Hi,

INSERT INTO deine_tabelle (spalte) VALUES (' Hans; insert into [...]')
hmm ja schon aber was wäre wenn dein SQL so aussieht
SELECT * FROM user WHERE name = '$name';
und $name wird per formular übergeben...

$name wird aus $_GET['name'] bzw. $_POST['name'] ermittelt, wie ich stark hoffe.

der böse mensch gibt aber ein:
hallo'; DELETE FROM user WHERE id > 0;\

Ich habe schon verstanden, worauf Du hinaus willst.

das würde dan so aussehen:

Nein, würde es nicht, weil _Du_ dafür sorgst, dass das komplette "hallo'; DELETE FROM user WHERE id > 0;" als ein einziger String interpretiert wird. Was hierzu bei Deinem DBMS gegeben sein muss, erfährst Du in dessen Doku.

SELECT * FROM user WHERE name = 'hallo';'; DELETE FROM user WHERE id > 0;

SELECT * FROM user WHERE name = 'hallo''; DELETE FROM user WHERE id > 0;'

Je nachdem, wie Dein DBMS Escaping interpretiert. Bei MySQL weiß ich es nicht auswendig.

Cheatah

--
X-Will-Answer-Email: No
X-Please-Search-Archive-First: Absolutely Yes