Autor |
Nachricht |
lubux
Threadersteller
Dabei seit: 24.03.2004
Ort: münster
Alter: 43
Geschlecht:
|
Verfasst Mi 24.11.2004 11:36
Titel [PHP + mySQL] anfängerfrage? |
|
|
hallo, ich arbeite mich gerade in mySQL ein, weil muss ja auch mal.
frage:
wenn ich eine query per POST (oder noch schlimmer per GET) übergebe, kann die mir dann nicht irgendein angreifer wunderbar easy mit einem "TRUNCATE" oder gar "DROP" versüßen?
was tut man dagegen? oder ist das kein problem.
aktueller fall: ich möchte bei einem gästebuch unten eine aufzählung der verfügbaren seiten einbauen, wobei dann jedesmal die seite mit neuen werten für LIMIT aufgerufen werden muss.
dank. jan
|
|
|
|
|
dastef
Dabei seit: 03.11.2003
Ort: -
Alter: -
Geschlecht:
|
Verfasst Mi 24.11.2004 12:00
Titel
|
|
|
nen ganzes query per get/post übergeben? wenn du schon so weit
bist, dann wirste da eh nicht mehr viel retten können .. ich würde
sagen, das einzige was de übergeben solltest ist eine zahl .. ent-
weder die seitezahl oder die start-datensatz zahl ..
bei allem anderen solltest halt mit den reservierten wörtern von
mysql und nem string-vergleich rangehen .. ob da evtl jemand was
verwendet hat
|
|
|
|
|
Anzeige
|
|
|
lubux
Threadersteller
Dabei seit: 24.03.2004
Ort: münster
Alter: 43
Geschlecht:
|
Verfasst Mi 24.11.2004 13:18
Titel
|
|
|
ja dacht ich auch an sowas. mein persönlicher admin hat mir gerade auch noch ein paar tipps gegeben.
|
|
|
|
|
smile jamaica
Dabei seit: 31.10.2003
Ort: Freiburg
Alter: 39
Geschlecht:
|
Verfasst Do 25.11.2004 14:29
Titel
|
|
|
am besten du benutzt bei sql-query für jeden eingegebenen wert die mysql_real_escape_string() funktion. also INSERT INTO xyz (a, b, c) VALUES (mysql_real_escape_string($a), mysql_real_escape_string($b), mysql_real_escape_string($c)) ...
|
|
|
|
|
rob
Dabei seit: 11.12.2003
Ort: ~/
Alter: 46
Geschlecht:
|
Verfasst Fr 26.11.2004 12:27
Titel
|
|
|
und eventuell noch strip_tags() drauf anwenden, wenn es sich um daten handelt, die der user eingeben kann und die dann später auf einer html-seite angezeigt werden (z.b. gästebuch).
einige user finden es ja lustig, javascripte oder andere späße in gästebüchern zu posten.
du solltest also (je nachdem, was du machst) drauf achten, daß du nicht nur SQL, sondern auch HTML-Tags filterst.
|
|
|
|
|
karmacoder
Dabei seit: 15.04.2002
Ort: Fürth
Alter: 42
Geschlecht:
|
Verfasst Fr 26.11.2004 13:12
Titel
|
|
|
am besten man benutz strings niemals aus externen quellen, immer nur eigene. z.b:
Code: |
"... ORDER BY {$field_names[$_GET['order_by']]} "
|
so benutz du es nur als key, und wenns den nicht gibt passiert nichts ausser der fehlermeldung. und mit isset() kann mans auchnoch abfangen...
|
|
|
|
|
|
|
|
Ähnliche Themen |
[PHP + mySQL] Kann Fehler in einer mySQL-Phrase nicht finden
[PHP/MySQL] MySQL Error: 1054, falsche Tabelle ausgewählt?
[MySql]Lost connection to MySQL server during query
[PHP / MySQL] MySQL-Funktion gesucht: letzteÄnderungTabelle
(php-mysql) übergabe von formulardaten und abfrage m. mysql
BLOB in mysql per php oder mysql einfügen
|
|