Frog 0 Report post Posted September 15, 2004 Hi! Eine Frage: Wie sichert sich das IPB gegen MySQL Injections ab? Nutzt es allgemein, die Hochkommas (') zu sperren oder kann man das umgehen und wenn ja wie? Also die Frage: Was muss man sperren und gibt es Wege die gesperrten ' zu umgehen? Ich befasse mich eben mit dem Thema wegen eigenen Scripts und da ist es aktuell, also nicht dass ihr auf die Idee kommt ich will hier rumhacken Greetz Frog Share this post Link to post
derDerSeinPasswortVergessenHat 0 Report post Posted September 16, 2004 (edited) Also mit dem Backslashen der Hochkommata hast Du im Endeffekt die meissten sachen dicht. Grundsätzlich gelten die folgenden Zeichen als nicht sicher: ` .; \ / @ & | % ~ < > " $ ( ) { } [ ] * ! ' Die sollte man zum Beispiel immer aus where Klauseln rausparsen. Wenn Du es Dir einfacher machen willst, dann kannst Du gerade bei Where Klauseln auch einfach die übergeben Werte auf int casten (das wurde beim ipb einige male vergessen und führte dann zu sicherheitslöchern ) also so: /* typecast zu integer */ $id = (int) $_GET['id']; /* intval Funktion macht dasselbe */ $id = intval($_GET['id']); Post-Variablen sind dabei genauso unsicher wie Get-Variablen, da sie ebenfalls gefaket werden können, dies kann man dann ggfs via Referer Checks absichern. Also wenn Du die Queries alle so auslegst, dass Du möglich immer nach Ganzzahlen abfragst, dann lässt sich das so recht einfach Wasserdicht machen. Ansonsten musst Du auf jeden Fall die Zeichen rausparsen. "derDerSeinPasswortVergessenHat" Christian ;) Edited September 16, 2004 by derDerSeinPasswortVergessenHat Share this post Link to post
Frog 0 Report post Posted September 17, 2004 Ok, danke!! Hat eigentlich alles beantwortet Vielen Dank! PS: Passwort Vergessen Funktion? Greetz Frog Share this post Link to post