SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Einführung in XHTML, CSS und Webdesign

Einführung in XHTML, CSS und Webdesign zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 02.09.2007, 07:08:18
Thomas H. Thomas H. ist offline
Anfänger
 
Registriert seit: May 2007
Beiträge: 77
Schützt htmlspecialchairs vor SQL Injections?

Hi!

htmlspecialchairs schützt ausreichend vor SQL Injections & XSS, oder irre ich mich da?

Danke!
Mit Zitat antworten
  #2  
Alt 02.09.2007, 15:41:52
MatMel MatMel ist offline
Member
 
Registriert seit: Aug 2005
Beiträge: 644
MatMel eine Nachricht über ICQ schicken
AW: Schützt htmlspecialchairs vor SQL Injections?

Eigentlich sollte es schon ausreichend schützen.
Aber du kannst ja trotzdem noch Sachen dazumachen, wie zum Beispiel ein Check mit is_numeric, wenn der Wert immer eine Zahl ist.
Oder das checken auf bestimmte Werte, wenn die Variable nur aus eine bestimmte Menge Werte annehmen kann.
Und halt auf jedenfall register_globals ausmachen und alle Variablen mit Startwerten belegen (also alle Notices wegbekommen).

Edit: Ich hab grade htmlentities() mit mysql_real_escape_string() verwechselt. Ersteres bringt bei SQL Injection recht wenig, sondern hilft nur dabei zu vermeiden, dass ein Benutzer eigenen HTML Code auf die Seite einschleust. Also gegen SQL Injection mysql_real_escape_string() verwenden. htmlentities() selbstverständlich nach Bedarf auch noch ...

Geändert von MatMel (02.09.2007 um 15:46:20 Uhr)
Mit Zitat antworten
  #3  
Alt 02.09.2007, 15:46:39
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Schützt htmlspecialchairs vor SQL Injections?

Zitat:
Zitat von Thomas H. Beitrag anzeigen
htmlspecialchairs schützt ausreichend vor SQL Injections & XSS, oder irre ich mich da?
Ja.

Gegen SQL Injektionen hilft das:
http://de2.php.net/mysql_real_escape_string

XSS:
siehe http://de.wikipedia.org/wiki/XSS
Zitat:
Besser ist es daher, die „guten“ Eingaben exakt zu definieren (Weiße Liste) und nur solche Eingaben zuzulassen.
Es ist ratsam, im Formular HTML als Eingabe zu verbieten und auszuknipsen:
http://de2.php.net/strip_tags
Und zwar komplett, um so auch "inline Javascripte" auszuschließen.
Mit Zitat antworten
  #4  
Alt 02.09.2007, 16:28:04
Thomas H. Thomas H. ist offline
Anfänger
 
Registriert seit: May 2007
Beiträge: 77
AW: Schützt htmlspecialchairs vor SQL Injections?

aber durch den Parameter ENT_QUOTES werden die Anführungszeichen doch konvertiert => keine Gefahr für den mysql_query!?

Normalerweise grenze ich die Benutzereingaben deutlich ein, aber ich will nur eine schon vorhanden Seite (von jemanden anderen) sicher machen....
durch htmlspecialchars werden html-tags doch sowieso nicht mehr ausgeführt, da brauch ich kein strip_tags.

lg
Thomas
Mit Zitat antworten
  #5  
Alt 02.09.2007, 20:02:04
Benutzerbild von conmunich
conmunich conmunich ist offline
Junior Member
 
Registriert seit: Mar 2006
Alter: 44
Beiträge: 285
AW: Schützt htmlspecialchairs vor SQL Injections?

nein, htmlspecialchars wandelt mit der option ENT_QUOTES, wandelt z.b. ein einfaches anführungszeichen ' in die html schreibweise " um. mysql_real_escape_string hingegen escaped ein ' mit einem backslash \ also \'

edit: glaub ich hab dich falsch verstanden. :)

Geändert von conmunich (02.09.2007 um 20:02:49 Uhr)
Mit Zitat antworten
  #6  
Alt 03.09.2007, 01:07:56
defabricator defabricator ist offline
Senior Member
 
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
AW: Schützt htmlspecialchairs vor SQL Injections?

htmlentities(, ENT_QUOTES) hilft sogar gegen die von Chris Shifflet augezeigten Probleme mit addslashes(). Allerdings werden die tatsächlichen Nutzdaten verändert, d.h. es wird "nur" eine für HTML equivalente Darstellung abgespeichert.
Mit Zitat antworten
  #7  
Alt 03.09.2007, 02:03:48
Benutzerbild von meikel (†)
meikel (†) meikel (†) ist offline
SELFPHP Guru
 
Registriert seit: Dec 2003
Ort: Erfurt
Alter: 75
Beiträge: 4.001
AW: Schützt htmlspecialchairs vor SQL Injections?

Zitat:
Zitat von Thomas H. Beitrag anzeigen
aber durch den Parameter ENT_QUOTES werden die Anführungszeichen doch konvertiert => keine Gefahr für den mysql_query!?
Es gibt noch mehr Fallstricke:
Zitat:
mysql_real_escape_string() calls MySQL's library function mysql_real_escape_string, which prepends backslashes to the following characters: \x00, \n, \r, \, ', " and \x1a.
Zitat:
durch htmlspecialchars werden html-tags doch sowieso nicht mehr ausgeführt, da brauch ich kein strip_tags.
Da unterscheiden wir uns wohl...
Mit Zitat antworten
  #8  
Alt 03.09.2007, 02:31:18
defabricator defabricator ist offline
Senior Member
 
Registriert seit: Sep 2007
Ort: Potsdam
Alter: 55
Beiträge: 1.020
AW: Schützt htmlspecialchairs vor SQL Injections?

Zitat:
Zitat von meikel Beitrag anzeigen
Es gibt noch mehr Fallstricke:
mysql_real_escape_string() behandelt unter Umständen sogar noch mehr Zeichen als die hier aufgeführten.
Ich rate allerdings, schon allein um die Daten möglichst unverändert zu speichern, auch zu mysql_real_escape_string() oder der dafür ausgewiesenen Methode der Datenbankabstraktion.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:02:17 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt