Forenindex » Programmierung/Entwicklung » PHP und MySQL » Sicherheit mit GET

Sicherheit mit GET

Kusi
Beiträge gesamt: 1398

16. Jan 2005, 17:17
Bewertung:

gelesen: 1071

Beitrag als Lesezeichen
Hallo
Ich habe nun schon verschiedene Hinweise gelesen, das eine Übertragung von Variablen mit Get auch ein Sicherheitsrisiko darstellen kann. Leider habe ich nichts gefunden, das mir zu diesem Thema Inputs bietet. Kann jemand von euch mal ein kurzes Statement dazu geben?

Gruss
Kusi

http://www.k-k.ch
Grafik, Layout, Webdesign

Sicherheit mit GET

oesi50
  
Beiträge gesamt: 2315

16. Jan 2005, 17:41
Bewertung:

gelesen: 1071

Beitrag als Lesezeichen
hi Kusi,

GET und POST beinhalten erst einmal das selbe Sicherheitsrisiko, nämlich die Möglichkeit, Daten an ein Programm/Script zu übergeben. Hier ist der Programmierer gefordert, die Daten auf Plausibilität und Zulässigkeit zu überprüfen. Das kannst Du überall nachlesen und dürfte hinreichen bekannt sein(z.B. letzte Meldungen über PHPBB, Coppermine, Mambo, TWiki usw. und auch Ebay und Google/Gmail).

Was Du wahrscheinlich gelesen oder gehört hast, ist das Problem, dass die mit GET übergebenen Daten in allen möglichen Logfiles erscheinen.

Was passiert jetzt, wenn solche Logfiles öffentlich zugänglich sind-

Bsp:
http://www.google.de/...i&as_sitesearch=

man kann wunderbar die Programmparameter lesen und auch analysieren.

Es wird aber noch besser, diese Informationen erscheinen auch noch im Referer, d.h. alle deine externen Links bekommen dies Informationen frei Haus geliefert.

Jetzt könnte z.b. einer davon eine öffentliche Statistiki anbieten, und schwupps schon sind wir wieder in den Suchmaschinen.

Und es wird noch besser. Es gibt einige Browser(öhm, na ja IExploder oder so) die senden sogar einen Referer, wenn keiner gesendet werden soll. Wenn da z.B. http://www.k-k.ch im Browser angezeigt wird und du tippst oben in der Adresszeile http://www.example.com ein, dann hat http://www.example.com den letzten Aufruf von www-k-k.ch als Referer im Logfile.

Ich glaube, das reicht an Information, mit etwas Phantasie könnte ich mir aber auch noch andere Szenarien ausdenken.

Fazit:

Immer im Hinterkopf behalten, alle GET Parameter können in Suchmaschinen auftauchen(sie sind also genau so öffentlich wie Deine URLs).


Grüße Oesi
Ich weiß, dass ich nichts weiß... (Sokrates)

[edit]
Was mir gerade noch eingefallen ist:
Es gibt auch noch Proxy-Logs von denen Du nicht einmal etwas bemerkst.

(Dieser Beitrag wurde von oesi50 am 16. Jan 2005, 17:46 geändert)

Sicherheit mit GET

ganesh
Beiträge gesamt: 1981

16. Jan 2005, 19:54
Bewertung:

gelesen: 1071

Beitrag als Lesezeichen
Sobald Du serverseitige Skripts und Datenbanken benutzt, musst Du JEDEM User-Input generell misstrauen. Parameter, die (wie auch immer: GET, POST, Cookies) ein Skript abrufen, müssen immer geprüft werden. Google mal nach "SQL injection".

http://www.unixwiz.net/...s/sql-injection.html
http://www.securiteam.com/...iews/5DP0N1P76E.html

Sicherheit mit GET

Kusi
Beiträge gesamt: 1398

16. Jan 2005, 23:37
Bewertung:

gelesen: 1071

Beitrag als Lesezeichen
Hallo
Und danke für eure Inputs. Ich finds erstaunlich, dass das so einfach möglich ist.

Gruss
Kusi

http://www.k-k.ch
Grafik, Layout, Webdesign

Sicherheit mit GET

Kusi
Beiträge gesamt: 1398

17. Jan 2005, 21:23
Bewertung:

gelesen: 1071

Beitrag als Lesezeichen
Hallo
Ich bin nun auf mysql_escape_string() und mysql_real_escape_string() gekommen. Reicht das wirklich schon aus? und welche Variante würde ihr den wählen?

Gruss
Kusi

http://www.k-k.ch
Grafik, Layout, Webdesign