zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden PHP Login Script

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 20.05.2011, 21:10
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.04.2011
Ort: Bad Salzuflen
Beiträge: 28
newbie88 befindet sich auf einem aufstrebenden Ast
Standard PHP Login Script

Hallo erstmal,

ich hab ein Loginscript für meine Seite als Login für einen geschützten Bereich
aus dem Internet und wollte mal fragen wie sicher dieser ist.

Code:
login.html

<html>
<head>
<title>Passwort</title>
</head>
<body>
 <form method="post" action="login.php">
<h1>Login Bereich</h1> 
Benutzername: <br />
<input type="text" name = "user">
<br />

Passwort: <br />
<input type="text" name = "password">
<br /><br />

<input type="submit" value="Anmelden">
</form>

</body>

</html>

login.php

<?php

$username1 = "hans";
$username2 = "josef";
$userpw = "hansjosef";


//if (isset($_POST['user'])) 
$user = $_POST['user'];

//if (isset($_POST['password']))
 $password = $_POST['password'];


{
if ($user == $username1 AND $password == $userpw)

{
	echo "Hallo $username1 Schön das du mal wieder vorbei schaust :)";
}

else 

{
	echo "Falsches Passwort oder Benutzername eingegeben. Bitte korrigiere deine eingabe <a href='login.html'>Hier</a>";

}	
}
	

?>

Da das ganze später einmal nur mit 2 Benutzernamen und einem Passwort laufen soll dachte ich mir wäre es ein wenig umständlich dafür eine MySql Tabelle anzulegen und da der Geschützte Bereich nur eine Seite Beträgt
brauche ich auch das Passwort nicht in einer Session zu speichern wenn ich das richtig sehe.

Hoffe das hat keine Einbusen auf die Sicherheit.
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 20.05.2011, 22:33
Benutzerbild von philosapiens
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 08.05.2009
Ort: Berlin Südende
Beiträge: 297
philosapiens befindet sich auf einem aufstrebenden Ast
Standard

Hallo,

ich halte es für sehr unsicher. Du prüfst ja gar keine Eingabe.

Hier etwas Lesestoff zum Thema:

phpBuddy.eu - Login Systeme von Einfach bis Profi

Stöbere mal auch in den anderen Rubriken dieser Seite, sehr aufschlussreich wie ich finde.
__________________
Der höchste Lohn für unsere Bemühungen ist nicht das, was wir dafür bekommen, sondern das, was wir dadurch werden.

Mein aktuelles Projekt bei idealseiten.de
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 20.05.2011, 22:54
Benutzerbild von Praktikant
Semantikbremse.
XHTMLforum-Kenner
 
Registriert seit: 22.04.2008
Beiträge: 4.985
Praktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz sein
Standard

Er braucht die Eingaben nicht prüfen, bei den Skript. Er gibt davon nichts wieder aus und er verarbeitet es auch nicht in einem SQL-Statement. Ich würde es aber trotzdem mit htmlspecialchars() prüfen.

Ich denke, dein Skript macht nicht besonders viel Sinn. Du sagst, du hast nur eine Seite. Irgendwann werden es sicherlich mal zwei Seiten sein und dann brauchst du schon eine Session. Bau es lieber gleich richtig. Dann kannst du Benutzer auch nach einer Zeit wieder automatisch abmelden. Bei deinem Skript musst du dich bei jedem Aufruf wieder anmelden, das nervt dich sicherlich bald. Kannst du nur mit einer Session umgehen.

Zu guter letzt: Lager deine "Benutzerdatenbank" lieber aus.
__________________
Rettet die Erde.... sie ist der einzige Planet mit Schokolade!
Mit Zitat antworten
  #4 (permalink)  
Alt 20.05.2011, 23:07
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 26.04.2011
Ort: Bad Salzuflen
Beiträge: 28
newbie88 befindet sich auf einem aufstrebenden Ast
Standard

Erst mal danke für die vielen nützlichen Beiträge von euch

Zum Praktkant hinter dem Script soll eigendlich nur ein Zugriffszähler für die Seite angelgt werden. Sprich das man dort angeziegt wird wann das letzte mal und wie viele Leute schon auf der Seite waren. Nichts weiter interessantes aber muss ja nicht jeder sehen. Aber ganz unrecht hast du damit nicht falls einem doch noch Sachen einfallen lohnt es sich mit Sessions zu arbeiten. Da es nur den Betreiber und und den Programmierer der Seite gibt bleibt es bei 2 Usern
deswegen eine Datenbank anlegen???

Zu philosapiens danke für deinen Link der ist wirklich hilfreich werd ich mir nen Lesezeichen von machen
Mit Zitat antworten
  #5 (permalink)  
Alt 20.05.2011, 23:12
Benutzerbild von Praktikant
Semantikbremse.
XHTMLforum-Kenner
 
Registriert seit: 22.04.2008
Beiträge: 4.985
Praktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz sein
Standard

Zitat:
Zitat von newbie88 Beitrag anzeigen
Da es nur den Betreiber und und den Programmierer der Seite gibt bleibt es bei 2 Usern
deswegen eine Datenbank anlegen???
Nein, aber auch ein Flatfile kann als Datenbank dienen. Und das solltest du auslagern.
Was mir noch einfällt: Jeder Benutzer sollte sein eigenes Passwort haben. Zurzeit kann sich auch nur der Benutzer mit $username1 anmelden.
__________________
Rettet die Erde.... sie ist der einzige Planet mit Schokolade!
Mit Zitat antworten
  #6 (permalink)  
Alt 21.05.2011, 11:46
Benutzerbild von laborix
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.12.2005
Beiträge: 1.494
laborix ist ein sehr geschätzer Menschlaborix ist ein sehr geschätzer Menschlaborix ist ein sehr geschätzer Mensch
Standard

Zitat:
Zitat von Praktikant Beitrag anzeigen
... Ich würde es aber trotzdem mit htmlspecialchars() prüfen....
Und wie gehst du mit folgenden Fall um:

Login: Müller
pwd: h&%Pü+-

Das habe ich mal ausprobiert, aber ist bei UTF-8 voll in die Hose gegangen
__________________
Personal stuff
Mit Zitat antworten
  #7 (permalink)  
Alt 21.05.2011, 12:01
Benutzerbild von Praktikant
Semantikbremse.
XHTMLforum-Kenner
 
Registriert seit: 22.04.2008
Beiträge: 4.985
Praktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz sein
Standard

Klappt auch bei UTF-8 vollig problemfrei, selbst mit deiner Kombination.
__________________
Rettet die Erde.... sie ist der einzige Planet mit Schokolade!
Mit Zitat antworten
  #8 (permalink)  
Alt 21.05.2011, 12:40
Benutzerbild von laborix
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.12.2005
Beiträge: 1.494
laborix ist ein sehr geschätzer Menschlaborix ist ein sehr geschätzer Menschlaborix ist ein sehr geschätzer Mensch
Standard

Dann habe ich wohl irgendwo etwas fehlerhaft umgesetzt, werde meine Login-Klasse noch durchtesten.

Zur Zeit entferne ich manuell mit str_replace ungewünschte Zeichen/Zeichenketten, mal sehen
__________________
Personal stuff
Mit Zitat antworten
  #9 (permalink)  
Alt 21.05.2011, 12:46
Benutzerbild von Praktikant
Semantikbremse.
XHTMLforum-Kenner
 
Registriert seit: 22.04.2008
Beiträge: 4.985
Praktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz seinPraktikant kann auf vieles stolz sein
Standard

Naja. Ich entferne bei meinen Logins nichts selber. Ich prüfe in der Regel auch nicht auf htmlspecialchars() sondern auf mysql_real_escape_string(), verschlüssel das Passwort, setzte den Salt aus der Datenbank dran und vergleiche die verschlüsselten Strings. In der Regel reicht das, da ich weder Benutzername, noch Passwort wieder ausgebe - ausgenommen die Kombination war falsch. Dann steht der Benutzername wieder im Textfeld.
__________________
Rettet die Erde.... sie ist der einzige Planet mit Schokolade!
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 21.05.2011, 13:49
Benutzerbild von laborix
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.12.2005
Beiträge: 1.494
laborix ist ein sehr geschätzer Menschlaborix ist ein sehr geschätzer Menschlaborix ist ein sehr geschätzer Mensch
Standard

Das mit dem Salt Wert bin ich noch am Experimentieren, wobei ich mich hier immer frage, ob man einmal verschlüsselt oder zweimal (mit Salt Wert).

Laut einigen Internet Seiten ist es anscheinend möglich, unter bestimmten Voraussetzung, je nach Verschlüsselungmethode (zum Beispiel SHA1), dieses zu knacken. Mit zweifach und Salt geht das eventuell nicht mehr

Ob ich bereit bin, diesen Aufwand zu treiben, weiss ich nicht.
__________________
Personal stuff
Mit Zitat antworten
Sponsored Links
Antwort

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Login Script verändern andre-ne Serveradministration und serverseitige Scripte 13 08.04.2011 17:39
PHP Script mit GET-Parametern als Img-Src Ares Serveradministration und serverseitige Scripte 2 13.09.2008 21:19
Dateien auslagern - Include und PHP ArcVieh Serveradministration und serverseitige Scripte 17 27.03.2008 18:09
PHP Login Script Pixel Design Serveradministration und serverseitige Scripte 19 19.01.2007 13:36
Suche kleines PHP Upload Script. ConiKost (X)HTML 2 03.08.2006 09:43


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