Seite 1 von 1

MySQL und erlaubte Zeichen

Verfasst: Donnerstag 15. Dezember 2005, 00:08
von Alex
Hallo Schlangenfreunde,
ich habe hier einen Apache mit mod_python am Start.
Das Script verarbeitet die http://.... Zeile und speichert die Werte nach dem Fragezeichen in eine Tuple und speichert sie in eine mysqldatenbank.

z. B.: http://www.python-forum.de/posting.php? ... wtopic&f=3

Das klappt alles ganz wunderbar. Um möglichst auf der sicheren Seite zu sein soltle ich vorher nach unerlaubten Zeichen scannen. Gibts da welche??
Das Problem ist das die User beliebige Text einegebn können, so dass erst im Script danach kontrolliert werden kann.

Mein String an die DB sieht so aus:
UPDATE serverlist SET port='1234', name='bl%sasad' ,map='dasdasd', curplayer=1, maxplayer=6,status='wartet' ,comment='mehr mit Leerzeichen' WHERE ipaddress='192.168.1.5'

Das '%s' in name='bl%sasad' stört nicht.
So scheint alles ok...

Mit integriertem Pythonbefehlen scheints auch keine Probleme zu geben.

Oder sind meine Sorgen unbegründet :?:
Alex

Verfasst: Donnerstag 15. Dezember 2005, 00:49
von BlackJack
Das kommt darauf an wie Du die Werte in deine SQL-Anweisung hineinbekommst. Wenn Du das mit dem % Operator machst, dann kann Dir jemand SQL-Code über die URL einschmuggeln der dann ausgeführt wird. Wenn Du die Werte beim `execute()` vom DB-Modul eintragen lässt, dann kann Dir das nicht passieren.

Verfasst: Donnerstag 15. Dezember 2005, 07:29
von jens

MySQL und erlaubte Zeichen

Verfasst: Donnerstag 15. Dezember 2005, 22:31
von Alex
Hi,
danke für die Tipps. An SQL injenction habe ich noch nicht gedacht.
Das werde demnächst mal testen.
Besten Dank
Alex