php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 09.12.2008, 10:41  
Benutzer
 
Registriert seit: 09.12.2008
Beiträge: 32
maller86 befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] Hacksicherer Login

Hallo Community,

ich erstelle diesen thread da ich zu diesem Thema, hier und da draussen,
nicht wirklich das gefunden habe, was ich eigentlich gebrauchen kann.

Mein Ausbilder möchte von mir eine Ausarbeitung eines Hacksicheren Login haben.
Habe da auch was geliefert, aber ihm ist das zu wenig.

Meine vorstellung einen Hacksicheren Login zu realisieren:
Eigene Sessionverwaltung in der Datenbank.
Cookie mit md5-hash aus folgendem Inhalt beim Benutzer:
md5( $sUserSessionID, $iUserID, $sUserIP );
Mit jedem Klick wird die SessionID regeneriert
und in der Datenbank sowie auch im Cookie gespeichert.
Sobald die SessionID oder die IP nicht übereinstimmt, wird ausgeloggt!

Nun meine Frage:
Gibts da noch mehr was ich beachten muss, weil wir noch eMail-Verkehr haben?
Wie könnte ein Hacker das knacken und wie sichere ich das noch weiter ab?


Ich danke euch im Vorraus

Gruß
maller86
maller86 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 09.12.2008, 10:43  
Erfahrener Benutzer
 
Benutzerbild von tomtaz
 
Registriert seit: 17.06.2008
Beiträge: 1.762
PHP-Kenntnisse:
Fortgeschritten
tomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig netttomtaz ist einfach richtig nett
tomtaz eine Nachricht über ICQ schicken tomtaz eine Nachricht über Skype™ schicken
Standard

Nun ja, du könntest, das er sich überhaupt nicht einloggen kann, nach einer gewissen anzahl an Logins das Fomular für Ihn sperren... Oder so
__________________
Mfg Tomtaz
"Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."
tomtaz ist offline  
Alt 09.12.2008, 10:55  
22hase
Gast
 
Beiträge: n/a
Standard

also ich denke mal sicher ist garnix....man kann es den nur schwer machen.

wenn ein hacker was knacke nwill dann schafft er es auch auf eine art und weise...
 
Alt 09.12.2008, 11:04  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Zitat:
Zitat von maller86 Beitrag anzeigen
Mit jedem Klick wird die SessionID regeneriert
Welchen Umfang hat die Aufgabe denn genau? Geht es nur um den Login-Vorgang selbst oder um die Implementierung eines geschützten Bereichs?
  • session_regenerate_id() würde ich nur direkt nach erfolgtem Login einmal anwenden.
  • Sofern es die Anforderungen zulassen, würde ich session.use_trans_sid ab- und session.use_only_cookies anschalten.
  • den IP check würde ich zwar als Standardeinstellung einschalten, aber beim Login abschaltbar für die Session machen. Es gibt immer noch Benutzer, bei denen sich die IP regelmäßig während einer Sitzung ändert.
  • sofern es die PHP Version hergibt bei session_set_cookie_params httponly auf true setzen.
  • Den Ausbilder fragen, welche Form von brute-force-Sperre er bevorzugt. Die meisten davon haben mal kleinere mal größere Auswirkungen auf reguläre Benutzer.
  • für Formulare, die im weiteren Verlauf angriffssicher sein müssen, kannst Du die in http://freedom-to-tinker.com/sites/d...files/csrf.pdf beschriebene Technik verwenden. Dabei hast Du bereits einen httponly Cookie auf dem Rechner gespeichert, den Sessioncookie. Du kannst den Wert also in _SESSION speichern anstatt einen weiteren Cookie zu setzen.

Geändert von David (09.12.2008 um 11:21 Uhr).
David ist offline  
Alt 09.12.2008, 11:05  
Benutzer
 
Registriert seit: 09.12.2008
Beiträge: 32
maller86 befindet sich auf einem aufstrebenden Ast
Standard

es muss doch noch was geben auf was ich nicht geachtet habe oder wovon ich nicht weiß, wenn es ihm zu wenig ist.
maller86 ist offline  
Alt 09.12.2008, 11:07  
Benutzer
 
Registriert seit: 09.12.2008
Beiträge: 32
maller86 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von David Beitrag anzeigen
Welchen Umfang hat die Aufgabe denn genau? Geht es nur um den Login-Vorgang selbst oder um die Implementierung eines geschützten Bereichs?
die seite soll sicher sein, also nicht über login oder menübereich oder durch sonstwas infiltriert werden können.
maller86 ist offline  
Alt 09.12.2008, 11:26  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Hast Du darauf geachtet, dass alle zu schützenden Resourcen Deine Session-Verwaltung beachten?
Hast Du Dich mit csrf beschäftigt? Das oben verlinkte PDF gibt einen Überblick.

Was tust Du mit
PHP-Code:
Cookie mit md5-hash aus folgendem Inhalt beim Benutzer:
md5$sUserSessionID$iUserID$sUserIP ); 
bzw was machst Du dann mit den Daten?
David ist offline  
Alt 09.12.2008, 11:44  
Benutzer
 
Registriert seit: 09.12.2008
Beiträge: 32
maller86 befindet sich auf einem aufstrebenden Ast
Standard

Ich würde die Daten auf dem Server auch nach
md5( $sUserSessionID . $iUserID . $sUserIP );
verschlüsseln und mit dem Cookie des eingeloggten Benutzers vergleichen.

Wenn sich keine übereinstimmung ergibt, so wird ausgeloggt.

//edit:
danke für den Link, werde mir das genauer anschauen mit der PDF-Datei.

Geändert von maller86 (09.12.2008 um 11:49 Uhr).
maller86 ist offline  
Alt 09.12.2008, 11:51  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Was ist mit den beiden Fragen davor?

Das ist dann also Dein Session-Cookie? Oder ist das noch was zusätzliches? Ich sehe gerade den direkten Nutzen nicht auf Anhieb.
David ist offline  
Alt 09.12.2008, 12:01  
Benutzer
 
Registriert seit: 09.12.2008
Beiträge: 32
maller86 befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von David Beitrag anzeigen
Was ist mit den beiden Fragen davor?

Das ist dann also Dein Session-Cookie? Oder ist das noch was zusätzliches? Ich sehe gerade den direkten Nutzen nicht auf Anhieb.

Ich würde den verschlüsselten String als Cookie beim Benutzer abspeichern lassen. Wenn der Benutzer auf der Seite unterwegs ist so wird immer geprüft ob die Daten identisch sind. Durch die Sessionverwaltung in der Datenbank habe ich die einzelnen Daten zur Hand. Verschlüssele diese Daten aus der Datenbank in der gleichen Folge wie die Daten im Cookie und vergleiche diese.
Sobald die verschlüsselten Werte nicht gleich sind, wird ausgeloggt bzw. die Daten aus der Datenbank entfernt. Das Cookie wird zusätzlich gespeichert.

Hoffe es ist so verständlicher formuliert.
maller86 ist offline  
 


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
[Erledigt] Login erstellen coraplanet PHP Tipps 2008 33 21.04.2008 16:49
[Erledigt] nach dem login kommt die willkommensnachricht coraplanet PHP Tipps 2008 6 20.04.2008 00:50
Forum Login per curl leb0rtran PHP Tipps 2008 1 19.03.2008 12:47
Etwas komplexerer Login --> Keine Angst, Suche benutzt dethlef14 PHP Tipps 2006 7 02.10.2006 00:35
.htaccess Login über HTML Login Felder gestalten php1 PHP-Fortgeschrittene 2 09.08.2006 13:53
Session Logout Login Navigation TailerD PHP Tipps 2006 10 24.06.2006 17:12
Frage zu Login Kein Genie PHP Tipps 2006 5 16.06.2006 12:34
phpBB Loginscript in eigenes Login Script einbinden 2wuck PHP Tipps 2007 4 19.12.2005 23:10
Problem mit Login Script PHP Tipps 2007 4 15.11.2005 17:29
Login Script... Beitragsarchiv 1 16.08.2005 02:21
[Erledigt] Login, LogIn, Anmelden, Einloggen -> ??? Off-Topic Diskussionen 20 14.07.2005 11:01
[Erledigt] Windows XP Login Namen verwenden? PHP-Fortgeschrittene 14 17.03.2005 15:37
login mit session id PHP Tipps 2005 10 26.01.2005 12:32
login überprüfung PHP Tipps 2004 7 23.08.2004 11:21
Login Problem PHP Tipps 2004 4 04.06.2004 18:46

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
hacksicherung, formulare hacksicher, hacksichere sessions, hacksicheren login

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:26 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