php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 29.04.2010, 16:01  
Neuer Benutzer
 
Registriert seit: 29.04.2010
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
splash_iem befindet sich auf einem aufstrebenden Ast
Standard Login MySQL / PHP SICHER????

hallo zusammen,

ich habe jetzt einen Login geschrieben und frage mich jetzt ob er auch sicher genug ist...
Vielleicht Schaut ihr es euch mal an.

Danke im Voraus und mit freundlichem Gruß

PHP-Code:
<?php
session_start
();
?>

<?php

$verbindung 
mysql_connect("localhost""BENUZER" "PASSWORT")
or die(
"Verbindung zur Datenbank konnte nicht hergestellt werden");

mysql_select_db("DATENBANK") or die ("Datenbank konnte nicht ausgewählt werden");

$username $_POST["username"];
$password $_POST["password"];

$abfrage "SELECT NICKNAMENSPALTE, KENNWORTSPALTE FROM TABELLE WHERE Nickname = '".$username."'";
$ergebnis mysql_query($abfrage)
or die(
"Error: $abfrage <br>".mysql_error);


while (
$row mysql_fetch_object($ergebnis))

if(
$row->Kennwort == $password)
    {
    
$_SESSION["username"] = $username;
    echo 
"Login erfolgreich. <br> <a href=\"geschuetzerbereich.html\">Geschützer Bereich</a>";
    }
else
    {
    echo 
"Benutzername und/oder Passwort waren falsch. <a href=\"loginformular.html\">Login</a>".$row->Kennwort."test";

    }

?>
splash_iem ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 29.04.2010, 16:05  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Nein ganz und gar nicht.

1. SQL Injection ist möglich.
2. Anscheinend speicherst du deine Passwörter im Klartext. Das solltest du vermeiden. Speichere sie als "salted Hash".

Du solltest auserdem den Login auf maximal einen User beschränken. Da du im Query mehrere User ausliest und dann auch noch in einer Schleife überprüfst ob das Passwort stimmt kann es da schnell zu Problemen kommen.

Ansonsten lies dir mal folgendes durch:
Hinweis:
[!] Bitte lies dir diesen Thread zu den Grundlagen von PHP durch. Die Grundlagen sind essentiell für das Arbeiten mit PHP, MySQL, HTML, JavaScript oder CSS!
Flor1an ist offline   Mit Zitat antworten
Alt 29.04.2010, 16:47  
Neuer Benutzer
 
Registriert seit: 29.04.2010
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
splash_iem befindet sich auf einem aufstrebenden Ast
Standard

Danke schonmal für die schnelle Antwort...

was genau kann bzw. muss ich ändern?
splash_iem ist offline   Mit Zitat antworten
Alt 29.04.2010, 16:52  
Erfahrener Benutzer
 
Registriert seit: 06.10.2009
Beiträge: 112
PHP-Kenntnisse:
Fortgeschritten
ToxicToast ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wie gesagt, speichere deine Passwörter nicht im Klartext.
Ich kann md5(); empfehlen.

Folglich würde deine Variable nun so aussehen:
$password = md5($_POST["password"]);

Und am besten liest du dir den Artikel mal durch:
SQL-Injection – Wikipedia
__________________
Merke: PHP ist keine politische Partei und MySQL ist nicht der Name eines Toasters
ToxicToast ist offline   Mit Zitat antworten
Alt 29.04.2010, 16:55  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

@ToxicToast: Wieso kannst du md5 empfehlen? Man sollte md5 nicht einfach nur so verwenden. Es sollte immer noch ein Salt verwendet werden.

Zu den Punkten solltest du selbst mal googlen um was es geht und wie man es beheben kann. Und du solltest prüfen ob $_POST['username'] und $_POST['password'] überhaupt gesetzt sind.
Flor1an ist offline   Mit Zitat antworten
Alt 29.04.2010, 17:00  
Neuer Benutzer
 
Registriert seit: 29.04.2010
Beiträge: 7
PHP-Kenntnisse:
Fortgeschritten
splash_iem befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Flor1an Beitrag anzeigen
Und du solltest prüfen ob $_POST['username'] und $_POST['password'] überhaupt gesetzt sind.
sry, aber das verstehe ich nicht so ganz...


und mit md5 bin ich mir auch noch nicht so sicher ob das die ideale lösung ist
splash_iem ist offline   Mit Zitat antworten
Alt 29.04.2010, 17:01  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Man sollte immer Abfragen ob eine Variable gesetzt ist. Was ist wenn jemand das Formular abschickt, aber nur das Inputfeld für den Usernamen im Formular mitgeschickt wird? Dann kommt ein Fehler weil $_POST['password'] nicht existiert. Diesen solltest du aber abfangen.

md5 solltest du mit Salt verwenden, dann spricht imho nichts dagegen!
Flor1an ist offline   Mit Zitat antworten
Alt 29.04.2010, 17:06  
Erfahrener Benutzer
 
Registriert seit: 06.10.2009
Beiträge: 112
PHP-Kenntnisse:
Fortgeschritten
ToxicToast ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Von "einfach nur so" verwenden war ja auch nicht dir rede.
Aber stimmt, du hast Recht, gibt mitlerweile genügend Programme die Hash's entschlüsseln können...

Allerdings:
Die Sicherheit hängt hier mal wieder ganz vom Entwicker ab.
Wie lang ist der private Schlüssel?
Wieviele Sonderzeichen und kryptische Reihenfolgen hat der private Schlüssel
Wie sicher ist der Server konfiguriert
usw usw...
__________________
Merke: PHP ist keine politische Partei und MySQL ist nicht der Name eines Toasters
ToxicToast ist offline   Mit Zitat antworten
Alt 29.04.2010, 18:14  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

Naja gut es geht jetzt ums PHP Skript, da brauchen wir nicht noch über die Sicherheit des Servers reden

Und "Programme die Hash's entschlüsseln können" würde ich gerne noch richtig stellen. Ein Hash kann nicht entschlüsselt werden, er wird schließlich auch nicht verschlüsselt. Er kann nur in Tabellen nachgeschlagen werden ob er zufällig in dieser Tabelle drinnen steht und dazu dann der Klartext.

Klar hängt die Sicherheit dann vom Salt ab, aber es sollte leicht sein zumindest den Salt etwas komlizierter zu gestallten.
Flor1an ist offline   Mit Zitat antworten
Alt 29.04.2010, 19:04  
Erfahrener Benutzer
 
Registriert seit: 06.10.2009
Beiträge: 112
PHP-Kenntnisse:
Fortgeschritten
ToxicToast ist zur Zeit noch ein unbeschriebenes Blatt
Standard

"Programme die Hash's entschlüsseln können" gut, dann war hier die Wortwahl unglücklich gewählt
Btw. ich glaub das hier wird Offtopic XD

@splash_iem
Prüfen tust du das mit isset.
Tutorials dazu gibts wie Sand am Meer =p
__________________
Merke: PHP ist keine politische Partei und MySQL ist nicht der Name eines Toasters
ToxicToast ist offline   Mit Zitat antworten
Antwort


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] MySQL Link Resource in einer statischen Variablen speichern Lenki PHP-Fortgeschrittene 8 18.03.2010 16:37
Login + Mysql pinky Scriptbörse 6 22.02.2010 21:01
spammassassin, mysql login problem JEGO Server, Hosting und Workstations 1 17.02.2010 09:41
GUI-Tool kann sich nicht mit MySql verbinden KWitt72 PHP Tipps 2008 3 21.12.2008 16:56
Mysql LoginScriptzu MySqli LoginScript lithium PHP Tipps 2008 27 17.11.2008 19:48
Lerne Grundlagen | Quellensammlung cycap PHP Einsteiger 0 12.11.2008 16:23
Login Script mit if-Abfrage für Rechte (in vbdg mit mySQL) haubna PHP Tipps 2008 9 18.08.2008 14:03
PHP / MySQL | Login Script Problem PHP Tipps 2006 15 17.02.2006 12:26
Kein Zugriff über ODBC mit der IP-Adresse auf MySql DB Datenbanken 4 09.02.2006 11:04
Login mithilfe von MySql Brease PHP Tipps 2007 20 09.11.2005 15:07
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
MYSQL läuft nur wenn /tmp auf 777 Datenbanken 5 06.07.2005 08:38
MYSQL root login und logging Problem Datenbanken 2 16.03.2005 08:41
PHP mysql problem beim login. c01001 PHP Tipps 2004 8 05.08.2004 15:57
php login mit mysql c01001 PHP Tipps 2004 2 04.08.2004 21:30

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php login mysql, http://www.php.de/datenbanken/67441-login-mysql-php-sicher.html, php mysql login sicher, php mysql login, login mysql php, php sichere mysql abfragen, php mysql sicherer login, sichere mysql abfragen php, php sicheres login, sicheres mysql, php sicherer login, sicheres login mit php und mysql, login php mysql, sicherer php login, sicheres login php mysql, php sicher login, sicheres php login, login mit php und mysql, php sicherer datenbank, übung farbstoffchemie

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