mysql sicherheit
bleicher
- datenbank
Grüße,
ich überlege mir mal eine Seite zu bauen in der sämtliche Inhalten in einer Datenbank gespeichert wären.
dabei erfolgt navigation über
$_GET['navi']
die ich mit 1 multipliziere
$navi=$_GET['navi']*1;
und anschöießend den eintrag aus Tablle abrufe der die "zugehörigkeit" die der $navi entspricht hat
SELECT * FROM inhalt
WHERE thema
=$navi
ist sowas sicher genug um das reinschmuggeln von schdlichen codes in der $_GET z uvermeiden?
wäre für jede antwort dankbar ;)
(rechtschreibhinweise ausgeschlossen)
MFG
bleicher
Hallo!
[...]
die ich mit 1 multipliziere
[...]
Und warum mit 1 multiplizieren?
Mach doch einfach eine direkte Umwandlung zu int.
Bez. Sicherheit: Wenn jeder alles sehen darf warum nicht. Wenn jedoch manche Seiten nur für eingeloggte Benutzer oder so sein soll dann musst du das vorher abfangen.
Grüße,
es ist nur eine "seite" (eine *.php datei ca. 4kb) - wenn du aber inhalte meinst - so ja,sind die alle "öffentlich" ;)
nur der adminbereich ist "versteckt" ;)
MFG
bleicher
he
$navi=$_GET['navi']*1;
Soll das is_int() ersetzen?
"Führe" SELECT nur aus, wenn du dir sicher bist, dass die Daten in deinem Sinne vorliegen. Ansonsten provozierst du mysql Fehler, die User/Angreifer nicht zu sehen haben, oder ermöglichst eine Injection. (Evtl. mit regulären Ausdrücken prüfen)
Wende zudem mysql_real_escape_string an.
gruß bascombe