Ich habe mal ne frage bezüglich der sicherheit in scripten.
gibt es außer der magic_quotes_off funktion noch irgendwas wichtiges in bezug auf sicherheit zu beachten?
Beachten der Sicherheiten...
-
- Mitglied
- Beiträge: 701
- Registriert: 19.12.2003 15:53
- Wohnort: Berlin
- larsneo
- Mitglied
- Beiträge: 2622
- Registriert: 07.03.2002 15:23
- Wohnort: schwäbisch gmünd
- Kontaktdaten:
es gibt sicherlich eine ganze menge an sicherheitsrelevanten dingen für 'sauberes' coding (nicht umsonst treten immer wieder schwachstellen in software-produkten auf)
einen guten einstieg bieten in aller regel die coding guidelines für verschiedene projekte, bei postnuke haben wir das beispielsweise unter *klick* (bzw. ausführlicher aber auf englisch unter *klack*) zusammengefasst.
einen guten einstieg bieten in aller regel die coding guidelines für verschiedene projekte, bei postnuke haben wir das beispielsweise unter *klick* (bzw. ausführlicher aber auf englisch unter *klack*) zusammengefasst.
- Blutgerinsel
- Mitglied
- Beiträge: 1801
- Registriert: 19.07.2004 18:53
- Wohnort: Landkreis Ulm
- Kontaktdaten:
auch register_globals = on sollte man auch tunlichst vermeiden. Wurde u.A. auch nicht umsonst in neueren Versionen standardmäßig auf off gesetzt.....
Des weiteren die Verwendung von globalen Variablen weitestgehend vermeiden.
Mod_rewrite zu verwenden ist sicherlich auch nicht schlecht....wenn man die Get Variablen nicht sieht ist es schwieriger herauszufinden wo das jeweilige Script liegt und was für Parameter es dort gibt etc.
Des weiteren die Verwendung von globalen Variablen weitestgehend vermeiden.
Mod_rewrite zu verwenden ist sicherlich auch nicht schlecht....wenn man die Get Variablen nicht sieht ist es schwieriger herauszufinden wo das jeweilige Script liegt und was für Parameter es dort gibt etc.
Merke: ein sicheres Skript entsteht nicht durch die Konfiguration der php.ini - ein gutes Skript ist unter jeder PHP-Konfiguration sicher. Die Einstellungen in der php.ini sollten nur die Fahrlässigkeit einiger Programmierer heilen 
Ansonsten gilt: selbst drauf achten, Werte prüfen, achten, dass es keine undefinierten Werte gibt, auf die Anführungszeichen achten, ...
Gruß, Philipp

Ansonsten gilt: selbst drauf achten, Werte prüfen, achten, dass es keine undefinierten Werte gibt, auf die Anführungszeichen achten, ...
Gruß, Philipp
Kein Support per PN!
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
Der Sozialstaat ist [...] eine zivilisatorische Errungenschaft, auf die wir stolz sein können. Aber der Sozialstaat heutiger Prägung hat sich übernommen. Das ist bitter, aber wahr. (Horst Köhler)
Meine Mods
- Blutgerinsel
- Mitglied
- Beiträge: 1801
- Registriert: 19.07.2004 18:53
- Wohnort: Landkreis Ulm
- Kontaktdaten:
Mit anderen Worten die McMurphy Computer Laws beachten und von hirnlosen DAUs ausgehen und nichts dem Zufall überlassen....PhilippK hat geschrieben:Ansonsten gilt: selbst drauf achten, Werte prüfen, achten, dass es keine undefinierten Werte gibt, auf die Anführungszeichen achten, ...
Naja PHPBB setzt sogar error_reporting anders

ich verwende sehr gerne
htmlspecialchars() auf ALLE Variablen, die ich ins Script rein bringe. Somit bin ich alle HTML-Zeichen, JS usw aus GET,POST,oder Cookie usw los.
Für ALLE MySQL-Abfragen gebe ich dann nochmal auf ALLE Variablen direkt vor der SQL-Anweisung ein mysql_escape_string() auf die Variablen und diese vor schädlichem Code zu befreien, der evtl dennoch durch htmlspecialchars() gekommen ist (z.B. mittels urlencode()).
Ich hoffe mal, damit sind meine Scripte sicher. Wenn nicht, bin ich offen für Tipps...
Grüße
Dennis
htmlspecialchars() auf ALLE Variablen, die ich ins Script rein bringe. Somit bin ich alle HTML-Zeichen, JS usw aus GET,POST,oder Cookie usw los.
Für ALLE MySQL-Abfragen gebe ich dann nochmal auf ALLE Variablen direkt vor der SQL-Anweisung ein mysql_escape_string() auf die Variablen und diese vor schädlichem Code zu befreien, der evtl dennoch durch htmlspecialchars() gekommen ist (z.B. mittels urlencode()).
Ich hoffe mal, damit sind meine Scripte sicher. Wenn nicht, bin ich offen für Tipps...
Grüße
Dennis
-
- Mitglied
- Beiträge: 701
- Registriert: 19.12.2003 15:53
- Wohnort: Berlin
globalen Variablen nutze ich eh nicht,
werte prüfen und gegebenfalls zuweisen habe ich gemacht,
htmlspecialchars() bei übergabe nutzen,
mysql_escape_string() werde ich mir noch mal angucken.
danke vielmals vorweg.
eine andere frage. magic_quotes hängt doch bei dem übermitteln von post, get und cookie noch ein / an, oder?
wann muss ich dann beim definieren der variabeln stripslashes verwenden?
phpbb verwendet auch nicht bei jeder auswertung stripslashes, oder irre ich mich da?!?
werte prüfen und gegebenfalls zuweisen habe ich gemacht,
htmlspecialchars() bei übergabe nutzen,
mysql_escape_string() werde ich mir noch mal angucken.
danke vielmals vorweg.
eine andere frage. magic_quotes hängt doch bei dem übermitteln von post, get und cookie noch ein / an, oder?
wann muss ich dann beim definieren der variabeln stripslashes verwenden?
phpbb verwendet auch nicht bei jeder auswertung stripslashes, oder irre ich mich da?!?