Jump to content
InvisionCommunity.de - Der Deutsche Invision Community Support
Sign in to follow this  
Frog

MySQL Injection

Recommended Posts

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

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 :rolleyes: ) 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 by derDerSeinPasswortVergessenHat

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

×