SQL-Injection testen...

Begonnen von PhanThomas, 30 April 2007, 19:56:19

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 2 Gäste betrachten dieses Thema.

PhanThomas

Hi alle zusammen,

habe mein System etwas erweitert und wollte jetzt die Sicherheit - besonders von SQL-Injections prüfen. Hat dazu jemand ein simples Beispiel? Bzw. bekommt man im Falle eines Versuchs das irgendwo in den Logdateien angezeigt, dass es jemand versucht hat, aber nicht geklappt hat?

Danke vielmals

PhanThomas

ok, bin vielleicht net ganz so blöd wie ich aussehe:

habe gemerkt, dass ich mir das einigermassen mit dem debug modus anschauen kann...

obwohl ich die mysql_query funktionen und nicht die sql_querys von pragmamx und
obwohl ich die sql-statements nicht überprüfe z.b. mit mxaddslashesforsql(),
werden in meinen statements z.b. ' in \' gewandelt.

nehme mal an dass das system minimal sicherheit drin hat, und die beiden verfahren oben noch zusätzlich sicherheit schaffen !?

jubilee

Zitatnehme mal an dass das system minimal sicherheit drin hat

Wir hoffen eigentlich, das das System schon etwas mehr als nur "minimale" Sicherheit bietet.

PhanThomas

ja denke ich auch. habe nur bisher noch nicht verstanden warum trotz meiner versuche eine sql-injection auf meinem eigenen system zu machen und die anfragen auf sicherheitzu prüfen keine email kam.

lag wohl daran, dass request variablen sowieso erstmal gefiltert werden. wozu dann nochmal der sql-string geprüft werden muß ist mir nicht ganz klar, denn:
eine sql injection muß ja immer mit einem ' beginnen um das vorherige sql statement abzuschliesen. ja geht zwar auch noch mit anderen sonderzeichen, aber die werden ja alle escaped.

d.h. meine aussage mit min.sicherheit bezog sich auf das reine escapen das anscheinend ja nicht 100% sicher ist, sonst müßte man denn sql-string ja nicht nochmal untersuchen.

Ferhat

wenn du eine sql injection machen willst ganz einfach wenn du auf deiner website eine suchmaschine hast schreibe mal folgendes rein

'

und wenn eine melldung kommt das die db oder eine meldung wie x086497 kommt dan kann man sql injection ausführen ? ganz einfach

PhanThomas

ja schon klar. Aber mit dem PragmaMX System geht das so eben gerade nicht.

Andi

Zitat von: PhanThomas am 11 Juni 2007, 10:28:29
ja schon klar. Aber mit dem PragmaMX System geht das so eben gerade nicht.

Also, wenn du dann noch bei deiner Erweiterung die minimalen Richtlinien (http://www.pragmamx.org/Forum-topic-16818.html) eingehalten hast, dann wird auch deine Erweiterung vom pragmaMx abgesichert.

Zitat von: Ferhat am 11 Juni 2007, 09:28:26
wenn du eine sql injection machen willst ganz einfach wenn du auf deiner website eine suchmaschine hast schreibe mal folgendes rein

'

und wenn eine melldung kommt das die db oder eine meldung wie x086497 kommt dan kann man sql injection ausführen ? ganz einfach
Was soll dieses Hochkomma bezwecken? In einigermassen sauber geschriebenen Scripten, auf standardmässig konfigurierten Servern, wirst du da nie Meldung mit erhalten. Eine Sql-Injection ist schon bisserl mehr wie das....

Hier ein paar weiterführende Info's zum Thema:
http://www.cms-sicherheit.de/module-blog-viewpub-tid-1-pid-4.html
http://www.php-faq.de/q/q-sql-injection.html

schön´s Grüssle, Andi

PhanThomas

nochmal merci für den hinweis.
Ich habe ja gerade PMX wegen der Sicherheit ausgesucht. Mir war eben nur nicht klar, warum ein SQL-String nochmal geprüft werden muss, wenn eh alle Sonderzeichen escaped werden und damit eine SQL-Injection eigentlich nicht möglich ist.
Werde mir die Tage einfach mal die notwendigen Funktionen näher anschauen.