Willkommen bei Network & Security     remoteshell-security.com
Partnerseiten
login.php?sid=91765f326135856216a47fce16d69cd5 profile.php?mode=register&sid=91765f326135856216a47fce16d69cd5 faq.php?sid=91765f326135856216a47fce16d69cd5 memberlist.php?sid=91765f326135856216a47fce16d69cd5 search.php?sid=91765f326135856216a47fce16d69cd5 index.php?sid=91765f326135856216a47fce16d69cd5

Foren-Übersicht » Internetprogrammierung » PHP-Login
Neues Thema eröffnen  Neue Antwort erstellen Vorheriges Thema anzeigen :: Nächstes Thema anzeigen 
PHP-Login
BeitragVerfasst am: 28.12.2006 21:02 Antworten mit Zitat
Kaito
Anmeldedatum: 12.01.2006
Beiträge: 80
Wohnort: /desktop/papierkorb




HI

Ich hab ein loginscript für eine hp gestalltet und nun will ich das man seine userdaten ändern kann

hoffe ihr könnt mir helfen

login.php
Code:
<?
session_start();
include 'sessionhelpers.inc.php';
if (isset($_POST['login']))
{
    $userid=check_user($_POST['username'], $_POST['userpass']);
    if ($userid!=false)
        login($userid);
    else
        echo 'Ihre Anmeldedaten waren nicht korrekt!';
}
if (!logged_in())
    echo '<form method="post" action="login.php">
        <label>Benutzername:</label><input name="username" type="text"><br>
        <label>Passwort: </label><input name="userpass" type="password" id="userpass"><br>
        <input name="login" type="submit" id="login" value="Einloggen">
    </form>';
else
    echo '<a href="logout.php">Ausloggen</a>';
echo '<p /><a href="logged_in.php">Check </a>';
echo '<p /><a href="user.php">Userdaten</a>';

?>



prüfen ob man eingeloggt ist
Code:
<?
session_start();
include 'sessionhelpers.inc.php';
echo 'Sie sind ';
if (!logged_in())
    echo 'nicht';
echo ' eingeloggt.<p />';
echo '';
echo '<a href="login.php">Start</a>';
?>





sessionhelper

Code:
<?
function connect()
{
    $con= mysql_connect('localhost','htnrevision_04','psw321') or die(mysql_error());
     mysql_select_db('htnrevision_04',$con) or die(mysql_error());
}

function check_user($name, $pass)
{
    $sql="SELECT UserId
    FROM users
    WHERE UserName='".$name."' AND UserPass=MD5('".$pass."')
    LIMIT 1";
    $result= mysql_query($sql) or die(mysql_error());
    if ( mysql_num_rows($result)==1)
    {
        $user=mysql_fetch_assoc($result);
        return $user['UserId'];
    }
    else
        return false;
}

function login($userid)
{
    $sql="UPDATE users
    SET UserSession='".session_id()."'
    WHERE UserId=".$userid;
     mysql_query($sql);
}

function logged_in()
{
    $sql="SELECT UserId
    FROM users
    WHERE UserSession='".session_id()."'
    LIMIT 1";
    $result= mysql_query($sql);
      return ( mysql_num_rows($result)==1);
}
function user()
{
    $sql="SELECT UserName
    FROM users
    WHERE UserSession='".session_id()."'
    LIMIT 1";
    $result= mysql_query($sql);
}
function logout()
{
    $sql="UPDATE users
    SET UserSession=NULL
    WHERE UserSession='".session_id()."'";
     mysql_query($sql);
}

connect();
?>


user

Code:
<?
session_start();
include 'sessionhelpers.inc.php';

if (!logged_in())
    echo 'Sie sind nicht eingeloggt!<br>Bitte loggen sie sich <a href="login.php">hier</a> ein.';
 
 
echo '<label>Benutzername:</label><input name="username" value="$username" type="text" id="username"> <br>';
echo '<label>Passwort: </label><input name="userpass" value="$userpass" type="text" id="userpass">';

?>


logout.php

Code:
<?
session_start();
include 'sessionhelpers.inc.php';
echo 'Sie sind ';
if (!logged_in())
    echo 'nicht ';
echo 'eingeloggt.<p />';
logout();
echo '<a href="login.php">Einloggen</a>';
?>


in der user.php will ich das machen währe schon wenn ihr mir helfen köntet.

cya Kaito

_________________
Meine Seite:

www.sharerama.de

Sie ist noch im Aufbau
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer
BeitragVerfasst am: 29.12.2006 14:29 Antworten mit Zitat
duddits
Anmeldedatum: 03.01.2006
Beiträge: 569
Wohnort: /proc




Hi,

wiesieht denn die Datenbank aus?

_________________
Quidquid agis, prudenter agas et respice finem!

Jabber ID: duddits@amessage.info
Webseite: http://www.remoteshell-security.com
Weblog: http://blog.remoteshell-security.com
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Jabber ID
BeitragVerfasst am: 29.12.2006 15:26 Antworten mit Zitat
BlackLotus
Anmeldedatum: 04.01.2006
Beiträge: 717
Wohnort: www and 127.0.0.1/localhost




ne tabelle die users heißt darin
UserId UserName UserPass UserSession
wobei UserPass md5 ist

_________________
Eine Kette ist nur so stark wie ihr schwächstes Glied.

Die Welt wird nicht von denen bedroht die böse sind,sondern von denen die das Böse zulassen.
Albert Einstein

Man kommt nicht aus seiner Haut raus.....,
Nur Schlamm kann das Very Happy

http://blackwiki.bl.ohost.de
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
BeitragVerfasst am: 29.12.2006 15:40 Antworten mit Zitat
duddits
Anmeldedatum: 03.01.2006
Beiträge: 569
Wohnort: /proc




Hi,

habe momentan nicht viel Zeit dir bei deinen Vorhaben zu helfen, aber auf eines wollte ich dich dann doch hinweisen.

Du validierst nirgends in deiner sessionhelpers.inc.php den String aus $name und $pass, welches zu Folge hat, das ein User mit bösen Absichten deine Authentifizierung umgehen kann.
Beispielsweise, wenn er für Benutzer und Passwort folgenden String eingibt:
Code:
Benutzername:    ' OR '1'='1'/*
Passwort:           


Der SQl Befehl sähe dann wie folgt aus:
Code:
"SELECT UserId
    FROM users
    WHERE UserName='".'OR '1'='1'/*."' AND UserPass=MD5('".."')
    LIMIT 1";


Du solltes also irgendwo die beiden Strings aus $pass und $name auf die Zeichen " und ' überprüfen.

EDIT:
In Klartext bei deinem hier geposteten Script ist eine SQL-Injection Lücke.

mfg duddits


Zuletzt bearbeitet von duddits am 29.12.2006 22:59, insgesamt einmal bearbeitet

_________________
Quidquid agis, prudenter agas et respice finem!

Jabber ID: duddits@amessage.info
Webseite: http://www.remoteshell-security.com
Weblog: http://blog.remoteshell-security.com
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Jabber ID
BeitragVerfasst am: 29.12.2006 21:00 Antworten mit Zitat
Kaito
Anmeldedatum: 12.01.2006
Beiträge: 80
Wohnort: /desktop/papierkorb




ich weiß zwar nicht was du meinst aber ok

nur mein problem währe damit immer noch im raum

aha und die db hat:

UserId
UserName
UserPass
UserSession


htnrevision.funpic.de/login.php

cya Kaito


Zuletzt bearbeitet von Kaito am 30.12.2006 00:18, insgesamt 3-mal bearbeitet

_________________
Meine Seite:

www.sharerama.de

Sie ist noch im Aufbau
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer
BeitragVerfasst am: 29.12.2006 22:02 Antworten mit Zitat
BlackLotus
Anmeldedatum: 04.01.2006
Beiträge: 717
Wohnort: www and 127.0.0.1/localhost




Btw kannst du mal die Adresse von der Seite posten damit wir das Script in Aktion erleben dürfen.^^
PS duddits meint ,dass da eine Lücke drin ist

_________________
Eine Kette ist nur so stark wie ihr schwächstes Glied.

Die Welt wird nicht von denen bedroht die böse sind,sondern von denen die das Böse zulassen.
Albert Einstein

Man kommt nicht aus seiner Haut raus.....,
Nur Schlamm kann das Very Happy

http://blackwiki.bl.ohost.de
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
BeitragVerfasst am: 30.12.2006 15:33 Antworten mit Zitat
Kaito
Anmeldedatum: 12.01.2006
Beiträge: 80
Wohnort: /desktop/papierkorb




ok hier der Link

http://htnrevision.funpic.de/login.php

is zwar mit werbung aber egal^^

cya Kaito

_________________
Meine Seite:

www.sharerama.de

Sie ist noch im Aufbau
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer
BeitragVerfasst am: 30.12.2006 17:24 Antworten mit Zitat
BlackLotus
Anmeldedatum: 04.01.2006
Beiträge: 717
Wohnort: www and 127.0.0.1/localhost




Joa kannst du bitte dann auch den neuen verbesserten Code schicken?

_________________
Eine Kette ist nur so stark wie ihr schwächstes Glied.

Die Welt wird nicht von denen bedroht die böse sind,sondern von denen die das Böse zulassen.
Albert Einstein

Man kommt nicht aus seiner Haut raus.....,
Nur Schlamm kann das Very Happy

http://blackwiki.bl.ohost.de
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
BeitragVerfasst am: 30.12.2006 18:06 Antworten mit Zitat
Kaito
Anmeldedatum: 12.01.2006
Beiträge: 80
Wohnort: /desktop/papierkorb




welchen verbesserten code ich hab dir den link gegeben das du ihn dir anschaun kanst^^

cya

_________________
Meine Seite:

www.sharerama.de

Sie ist noch im Aufbau
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer
BeitragVerfasst am: 30.12.2006 18:52 Antworten mit Zitat
BlackLotus
Anmeldedatum: 04.01.2006
Beiträge: 717
Wohnort: www and 127.0.0.1/localhost




Verarsche??
Du hast uns den alten Code gegeben der Code der auf der Seite ist wurde bereits verbessert

_________________
Eine Kette ist nur so stark wie ihr schwächstes Glied.

Die Welt wird nicht von denen bedroht die böse sind,sondern von denen die das Böse zulassen.
Albert Einstein

Man kommt nicht aus seiner Haut raus.....,
Nur Schlamm kann das Very Happy

http://blackwiki.bl.ohost.de
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
BeitragVerfasst am: 30.12.2006 21:43 Antworten mit Zitat
Kaito
Anmeldedatum: 12.01.2006
Beiträge: 80
Wohnort: /desktop/papierkorb




ne das is genau der selbe code ^^

cya

_________________
Meine Seite:

www.sharerama.de

Sie ist noch im Aufbau
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer
BeitragVerfasst am: 31.12.2006 00:05 Antworten mit Zitat
Cerox
Anmeldedatum: 31.12.2005
Beiträge: 782
Wohnort: Engelskirchen




Zitat:
nun will ich das man seine userdaten ändern kann


Entwerfe ein Formular, in dem du die aus der Datenbank ausgelesenen Daten (z.B. Usernamen) postest.

Also z.B.

Code:
<input type="text" name="username" value="<?php echo $aus_der_datenbank_ausgelesener_username ?>">


Beim Abschicken des Formulars wird die Eingabe dann geprüft und mit einem

Code:
UPDATE users SET username=$_POST[username] WHERE UserId=id_des_ausgelesenen_users


Ich verstehe ehrlich gesagt eh nicht was du meinst - oben updatest du doch schon - also weißt du doch wie es geht.
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden
BeitragVerfasst am: 31.12.2006 10:09 Antworten mit Zitat
Kaito
Anmeldedatum: 12.01.2006
Beiträge: 80
Wohnort: /desktop/papierkorb




das was auf der hp ist ist nur der login und das überprüfen mehr nich

@ cerox also einfacher ich will den aktuelen eingeloggten user ausgeben und weiß nich wie ich das machen soll

cya Kaito

_________________
Meine Seite:

www.sharerama.de

Sie ist noch im Aufbau
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden ICQ-Nummer
PHP-Login
Foren-Übersicht » Internetprogrammierung
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Alle Zeiten sind GMT + 1 Stunde  
Seite 1 von 1  

  
  
 Neues Thema eröffnen  Neue Antwort erstellen  


Forensicherheit

Powered by phpBB © 2001-2004 phpBB Group
phpBB Style by Vjacheslav Trushkin
Deutsche Übersetzung von phpBB.de


remoteshell-security.com | Partner | Boardregeln | Impressum