joerg
Avatar joerg
Themenersteller
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)

Mysql Verbindung aufbauen abhängig von Url Eingabe

am 26.06.2010, 15:48 Uhr eröffnete joerg folgenden Thread
PHP & MySQL    1460 mal gelesen    7 Antwort(en).

Hallo

Ich denke gerade darüber nach ob ich $_SERVER['REQUEST_URI'] dafür verwende nur in bestimmten Fällen eine Datenbankverbindung aufzubauen.

Was spricht für diese Vorgehensweise und was spricht dagegen um Mysql Injection zu verhindern?

Gruß
Jörg


Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools

Raptor
Avatar Raptor
IT-Student
Content Gott (1013 Beiträge)
am 26.06.2010, 15:58 Uhr schrieb Raptor

Wie stellst du dir das genau vor?
Man kann im Grunde alles für MySQL verwenden, und SQL-Injection darf eigentlich kein Thema sein (das zu verhindern sollte eigentlich das Unterbewusstsein automatisch machen).


Meine Developer-Website mit den Web-Entwickler-Tools.
Meine Web-Entwicklungs-Dienstleistungen

[url="http://www.seitenreport.de/forum/beitraege/seitenreport_verlosungen/wichtig_neue_regel

joerg
Avatar joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
am 26.06.2010, 17:14 Uhr schrieb joerg

Hallo Florian

Ich nehme die Abfrage vor meinetwegen ob die Url etwas gefährliches enthält. In dem Fall öffne ich auf gar keinen Fall die Datenbankverbindung und gebe eine 404er Seite dann zurück.

Ich sehe jetzt keinen Sinn darin die Datenbank durch Sicherheitsabfragen zu schützen wenn ich bereits vorher schon durch diese Abfrage in der Lage bin gar keine Verbindung aufzubauen.

Den genauen Code muss ich mir noch schreiben. Soll ich dir dann eine PN schicken zum Drüberschauen?

Gruß
Jörg


Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools

Raptor
Avatar Raptor
IT-Student
Content Gott (1013 Beiträge)
am 26.06.2010, 17:30 Uhr schrieb Raptor

Die URL kann nichts gefährliches enthalten, genauso wie Inhalte von Formularen.
Sicherheitstechnisch gesehen wird\'s erst kritisch, wenn du Befehle mit diesen Komponenten zusammenbastelst, wie z.B. Systembefehle mit PHP oder MySQL-Statements. Dann muss man den Inhalt aber natürlich "entschärfen" und dazu reicht bei MySQL mysql_real_escape_string(), egal welcher Art der Input ist.
Wenn du die MySQL-Verbindung aufbaust, verwendest du ja keine "externen Komponenten" und daher ist das nicht gefährlich. Es kommt also nicht drauf an, ob du die Verbindung aufbaust oder nicht.


Meine Developer-Website mit den Web-Entwickler-Tools.
Meine Web-Entwicklungs-Dienstleistungen

[url="http://www.seitenreport.de/forum/beitraege/seitenreport_verlosungen/wichtig_neue_regel

UFOMelkor
Avatar UFOMelkor
Student
Content Meister (350 Beiträge)
am 26.06.2010, 17:33 Uhr schrieb UFOMelkor

Wenn ich es richtig sehe, geht es dir in erster Linie darum, eine Fehlerseite anzuzeigen bzw. auf eine Fehlerseite weiterzuleiten.

Ob die MySQL-Verbindung aufgebaut wird, ist davon erstmal unabhängig, auch eine Fehlerseite kann eine MySQL-Verbindung benötigen (z.B. zum Loggen der fehlerhaften URLs).


Naturkosmetik in Bochum

Steppenhahn Ultramarathon-Community

joerg
Avatar joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
am 26.06.2010, 17:49 Uhr schrieb joerg

Hallo

Ich glaube ihr beide versteht mich nicht so ganz richtig worauf ich hinaus will.

de.wikipedia.org/wiki/SQL-Injection



Diese Veränderung der Abfrage der Datenbank kommt durch die URL die man eingibt.

Oder ich verstehe das dann doch nicht richtig.

Mit $_SERVER[\'REQUEST_URI\'] bekomme ich aber das was derjenige in der url eingegeben hat und kann danach im Skript bereits über einen Aufbau der Mysql Verbindung entscheiden.

Und wenn mir dann nicht gefällt was in der url steht dann kommt die Fehlerseite.

Roman schreibt hier häufiger mal das man die Hütte so sicher wie möglich machen sollte.
Das mysql_real_escape_string dazu dann nochmal beiträgt ist mir klar.

Ich weiss jetzt nur nicht was daran schlimm sein soll es zur Mysqlabfrage wenn einem die Eingabe im Browser nicht gefällt man bereits die Hütte dicht macht.

Gruß
Jörg


Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools

UFOMelkor
Avatar UFOMelkor
Student
Content Meister (350 Beiträge)
am 26.06.2010, 17:59 Uhr schrieb UFOMelkor

Du kannst es machen und es wird deiner Seite nicht schaden, aber letztendlich auch nicht wirklich zur Sicherheit beitragen.

Letztendlich musst du halt bei jeder Query die Query selbst z.B. durch mysql_real_escape_string absichern. Eine Vorabfilterung anhand der Request-Uri ist zwar möglich, bringt dir aber keine erhöhte Sicherheit (die Queries selbst müssen schließlich schon sicher sein).

Wenn du mich fragst, gibt es sinnvollere Dinge, die man mit seiner Zeit machen kann, aber wenn du das gerne einmal umsetzen möchtest, warum nicht, Ãœbung macht den Meister.


Naturkosmetik in Bochum

Steppenhahn Ultramarathon-Community

joerg
Avatar joerg
Fachinformatiker Anwendungsentwicklung
Content Gott (1941 Beiträge)
am 26.06.2010, 18:16 Uhr schrieb joerg

Hallo Oskar

Ich habe nichts gegen solche Fingerübungen.

Es fördert halt eben mein Verständnis.

Sinnvoll finde ich es schon denn damit habe ich ein Skript was $_SERVER[\'REQUEST_URI\'] verwendet aufgebaut. Ausser jetzt einer Seite wo ich mit der Eingabe im Browser die Ausgabe beeinflussen kann fällt mir momentan kein Sinn dafür ein.

Gruß
Jörg


Zufällige Umleitung zu der Startseite einer meiner Domains
Meine ungewöhnlichen Tools

  • 1


« zurück zu: PHP & MySQL

Das Seitenreport Forum hat aktuell 5273 Themen und 36107 Beiträge.
Insgesamt sind 48345 Mitglieder registriert.