php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2006

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 03.04.2006, 15:42  
Erfahrener Benutzer
 
Registriert seit: 03.04.2006
Beiträge: 222
<Daniel>
Standard Eine Frage der Sicherheit?

Hi Leute,
mein erstes Post in diesem Forum und gleich eine Frage ^^

Also:
Macht es Sinn Benutzer/Password Daten die von einer php Seite zur anderen bzw. in eine mySQL Datenbank geschickt werden zu verschlüsseln?
Man kann das ja einmal mit md5() machen (mach ich jedenfalls) und/oder mit crypt() (<- da weiß ich nicht genau wie das geht).
Und zwar bastel ich gerade eine Homepage und ich mach mir Sorgen, dass evtl. jemand die Daten die vom Login gesendet werden, abfangen kann

Oder ist das alles Unsinn? (bitte nicht sagen: "Ist ja nur eine private Homepage, also egal." ^^)

mfg
&lt;Daniel&gt; ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 03.04.2006, 15:54  
Erfahrener Benutzer
 
Registriert seit: 29.10.2004
Beiträge: 1.781
derHund
Standard

um sie verschlüsseln zu können, müssen sie erstmal den server erreichen ... hast du kein https, gehen die daten auf jeden fall einmal unverschlüsselt übers netz.
__________________
derHund ist offline  
Alt 03.04.2006, 16:02  
Erfahrener Benutzer
 
Registriert seit: 03.04.2006
Beiträge: 222
&lt;Daniel&gt;
Standard

Danke schonmal für deinen Beitrag!

Hab schon öfters was über https gehöhrt, weiß aber nicht genau wie ich das am besten konfigurieren muss, hast du evtl. einen Link wo das verständlich erklärt ist? Wäre echt nett! (Hab noch nicht sooo die Ahnung von PHP, hab grad mal ein paar Sachen wie z.B. eine Login php Seite und ein primitives GuestBook, sowie eine kleine primitive News Site, läuft aber alles auf mySQL DBs ^.^°)

mfg
&lt;Daniel&gt; ist offline  
Alt 03.04.2006, 16:03  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

es gibt viele wege, passwörter abzufangen.
die zwei wichtigsten:
* traffic zwischen dem loginformular deines 'users' und deiner seite wird abgefangen - passwort wird - trotz '*' - unverschlüsselt gesendet - du hast verloren.
allerdings kann damit 'schlimmstenfalls' der account deines users gekidnappt werden.

* jemand guckt in deine datenbank rein - wenn dort die passwörter nicht vershlüsselt oder gehasht sind, hast du wieder verloren. hier hat der mensch dann zugriff auf alle benutzer-accounts.

für zweiteres ist hashing (md5, sha1) oder verschlüsselung(crypt) empfehlenswert, allerdings bitte sha1() und nicht mehr das (veraltete) md5 verwenden.
den unterschied zwischen hashing und verschlüsselung solltest du dir übrigens schnellstens einprägen.

die absicherung des ersten problems ist schwieriger, weil vielfältig. cross-site-scripting z.b. ist einfach zu bewerkstelligen, schwer abzusichern.

du kannst
- deine seite mit SSL absichern, dann wird eine man-in-the-middle-attacke schwierig bis unmöglich (zumindest solange der server und der browser des clients korrekt funktionieren).
- das passwort bereits clientseitig verschlüsseln oder hashen (java-applet, javascript) und verschlüsselt an deinen server schicken lassen. schwierigkeit hierbei: der angreifer sieht die verschlüsselungs-/hashingmethode mit sicherheit auch, d.h. es muss eine verschlüsselung/hashing sein, die man durch das einfache lesen des algorithmus nicht rückgängig machen kann.

und nicht vergessen - die authentifizierung des users ist bei weitem nicht die einzige stelle, wo dich jemand angreifen kann. es nutzt nichts, ein stahltor zu bauen und den rest des grundstücks mit einem holzzaun zu umgeben.

... die anderen wissen mehr.

grüße
axo
axo ist offline  
Alt 03.04.2006, 16:05  
Gast
 
Beiträge: n/a
Standard

Hallo Daniel,

md5 zum Abspeichern der Passwörter in der DB ist in jeden Fall ratsam. Wenn du bedenken hast, dass ein Login-Request mitgesniffert werden könnte, kannst du auch die Eingabe im Passwortfeld beim Abschicken noch mit md5 hashen. Hier mal ein Link dazu:

http://aktuell.de.selfhtml.org/artik.../md5/index.htm
 
Alt 03.04.2006, 16:05  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

übrigens: was https ist, sagt dir wikipedia auch. wir sind nicht dazu da, dir die google-suche zu ersparen. und herzlich willkommen im forum
axo ist offline  
Alt 03.04.2006, 16:11  
Erfahrener Benutzer
 
Registriert seit: 03.04.2006
Beiträge: 222
&lt;Daniel&gt;
Standard

@axo
Den Unterschied zwischen hashing und verschlüsseln kenn ich. Beim Hash wird ein Hashwert gebildet, dieser ist wenn man immer wieder den selben z.B. String hashed gleich, z.B. ist 'Auto' immer '06b9281e396db002010bde1de57262eb'.
Beim verschlüsseln kommt immer ein anderes Ergebnis raus, dieser wird durch einen Saltwert beeinflusst/gebildet (Basis).

Zum Traffic abfangen:
Wie kann den der jenige einfach so den Traffic abfangen? So einfach geht das doch nicht oder? Der Angreifer muss dann ja schon was auf dem PC vom Sender drauf gepackt haben ...

Datenbank gucken:
Das geht doch auch nicht so einfach, dazu muss er doch erstmal meinen Benutzernamen + Password haben, damit er überhaupt auf die Datenbank zugreifen kann?

Und wie kann man das am besten mit SSL verschlüsseln? Hast du evtl einen Link fuer mich?
Von Java bin ich nicht so der Fan, da muss der Client ja auch noch Java erstmal installiert haben ...

mfg

€dit Ihr kennt euch doch viel besser aus, deswegen frage ich lieber hier, ihr kennt ja empfehlenswerte Seiten, bis ich sowas bei Google gefunden habe ...
&lt;Daniel&gt; ist offline  
Alt 03.04.2006, 16:17  
Erfahrener Benutzer
 
Registriert seit: 29.10.2004
Beiträge: 1.781
derHund
Standard

btw: javascript != java

daß in der db nur hashes abgelegt werden, sollte klar sein - darum gings dir doch auch nicht, oder? an die daten kommt man schnell ran - ich sag nur phpBB
daß du clientseitig per js nicht hashen willst, kann ich verstehen, würde ich auch nicht machen.

aber: SSL kostet dich in 99% aller fälle geld, du mußt das zertifikat bezahlen ... ob sich da der aufwand lohnt, weiß ich nicht. http://verisign.com/
__________________
derHund ist offline  
Alt 03.04.2006, 16:22  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von derHund
daß du clientseitig per js nicht hashen willst, kann ich verstehen, würde ich auch nicht machen.
Und warum nicht? In der alten PHPlib (für PHP3) gab es sogar ein javascript, welches den MD5 Code berechnete, damit der Client beim Login das Paßwort nicht im Klartext verschickt.
 
Alt 03.04.2006, 16:23  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von <Daniel>
Zum Traffic abfangen:
Wie kann den der jenige einfach so den Traffic abfangen? So einfach geht das doch nicht oder? Der Angreifer muss dann ja schon was auf dem PC vom Sender drauf gepackt haben ...
Naja, wenn der PC in einem lokalen Netz ist (z.B. Firmennetzwerk) und der Angreifer zugriff auf die Switches (oder den Webproxy) dort hat, geht das z.B. auch.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Frage zur dauerhaften voting sperre! litterauspirna PHP Tipps 2008 19 29.05.2008 16:19
Sicherheit in PHP robydog PHP Tipps 2008 52 10.05.2008 13:09
externe MySQL und Sicherheit sportyflo Datenbanken 2 22.02.2008 11:09
Erfahrung mit Sessions ( Sicherheit ) GELight PHP Tipps 2006 6 11.08.2006 17:55
Frage zu Counter PHP Tipps 2006 1 17.02.2006 21:45
Frage zur Sicherheit von GET Variablen malaga PHP Tipps 2005-2 3 20.09.2005 13:36
Frage zu grafiken JohnRambo PHP Tipps 2005-2 23 16.08.2005 20:57
Performence Frage PHP-Fortgeschrittene 10 06.05.2005 19:00
Frage zu einem Editformular PHP Tipps 2005 3 25.04.2005 14:58
Frage zu einer Liste? HTML, Usability und Barrierefreiheit 2 15.02.2005 16:56
[Erledigt] Frage zur Funkrionen? PHP Tipps 2004-2 10 01.12.2004 09:42
Sicherheit und versteckte primäre Partitionen Off-Topic Diskussionen 5 26.11.2004 13:38
Sicherheit bei Wertübergaben PHP Tipps 2004 3 14.10.2004 18:06
Frage zur Sicherheit von Datenbankpasswörtern PHP Tipps 2004 2 14.08.2004 18:29
[Erledigt] Frage! PHP Tipps 2004 4 27.07.2004 11:25


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




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.