<?php
$cash = '0KOzQ@[v[Zl_&mÜ@-]cmyAoa,>WKÜFJux{g/L-H<vQ0${>Tw#;tzlx-sLeCErp_=]ZLdR{JSbhTÜR.VXÄ{KcLnhQO-)s$b&üu(+';
$random = time();
/**
$random in die db fürs vergleichen, username und id gleichzeitig abfragen
**/
$hashmd5 = md5($cash.$random.$username.$userid);
?>
ThaSpeedy hat geschrieben:Spiel ja keine rolle, aber was mir immer graut sind java (auch ajax) injektion, von mysql fang ich erstmal gar nicht an, hat man ja mitbekommen wie schön ajax ist aber gleichzeitig unsicher es ist gell summa
java != javascript
und wieso sollte ajax unsicher sein?
Die Frage ist auch wie sauber du proggst und ob es OpenSource sein wird was du dir da bastelst, denn mit grossen interesse (lernen usw^^) würde ich mir den quellcode anschauen, falls das der fall ist. PHP mit MySql ist eine schöne sache wenn man weiss wie man damit umgeht
Allgemein gilt mit Sessions etc.
Immer Hash-Werte nehmen wenn was in session oder cokies gespeichert wird:
- Code: Alles auswählen
<?php
$cash = '0KOzQ@[v[Zl_&mÜ@-]cmyAoa,>WKÜFJux{g/L-H<vQ0${>Tw#;tzlx-sLeCErp_=]ZLdR{JSbhTÜR.VXÄ{KcLnhQO-)s$b&üu(+';
$random = time();
/**
$random in die db fürs vergleichen, username und id gleichzeitig abfragen
**/
$hashmd5 = md5($cash.$random.$username.$userid);
?>
bloß, wieso sollte ich was in cookies speichern? und man kommt nicht mehr an die werte rann, weshalb es ziemlich sinnfrei ist
Gruss Speedy
<?php
class Login extends MySQLi {
private $username = NULL;
private $passwort = NULL;
private $hash = PWHASH; // define(PWHASH,"blaaaaaaaaaablalallbllal");
var $sessionip;
var $sessionUserid;
var $sessionusername;
var $sessionaktiv;
var $sessionid;
private function EntcrytePasswort($passwort)
{
return md5($this->username.$passwort.$this->hash);
}
function Einloggen($username,$passwort)
{
$this->username = $username;
$this->passwort = $passwort;
If($this->IsEmpty($this->username)!=true && $this->IsEmpty($this->passwort)!=true)
{
throw new Exception("Loginname oder Passwort leer"); //Fehler schmeissen
}
else
{
$query = sprintf("Select ID,Aktiv,Loginname FROM UserDaten WHERE Loginname='%s' AND Passwort = '%s' LIMIT 0,1",$this->Clean($this->username),$this->EntcrytePasswort($this->Clean($this->passwort)));
$result = parent::query($query);
$row = parent::fetch_object($result);
If($row->Aktiv == "1")
{
session_name("SESSION".$row->ID."USER"); // Session name
$_SESSION['logged_in'] = true; // einloggen auf "ein"
$_SESSION['user_id'] = $row->ID; // userid speichern
$_SESSION['user_name'] = $row->Loginname; // username speichern
$_SESSION['IP'] = $_SERVER['REMOTE_ADDR']; //ip adresse zum validieren
$query = sprintf("UPDATE Session SET UserID='%s',IP='%s',SessionID='%s' WHERE User='%s'" ,$row->ID,$_SERVER['REMOTE_ADDR'],session_id(),$row->Loginname);
if(parent::query($query))
{
header("Location: index.php");
exit();
}
else //mysql fehler
{
throw new Exception("Fehler beim Eintragen der Logindaten");
}
}
else
{
throw new Exception("Account Bitte Aktivieren!");
}
}//empty
}// function
function CheckLogin ()
{
$this->GetLoginDataFromSession();
if($this->sessionaktiv == true)
{
$query = sprintf("Select ID FROM Session WHERE User='%s' AND UserID='%s' AND IP='%s' AND SessionID='%s' LIMIT 0,1",$this->sessionusername,$this->sessionUserid,$this->sessionip,$this->sessionid);
$result = mysql_query($query);
if(mysql_num_rows($result)==1)
{
return true;
}
else
{
return false;
}
//return false;
}
else
{
return false;
}
}
}
?>
da der user den kompletten quellcode sehen kann was bei php nicht möglich ist ausser bei hacken des servers...
ThaSpeedy hat geschrieben:... glaub mir es gibt/gab bis dato einen nicht allgemeinen bekannten befehl um auf das admin menu zugriff zu erhalten ....
liro hat geschrieben:ThaSpeedy hat geschrieben:... glaub mir es gibt/gab bis dato einen nicht allgemeinen bekannten befehl um auf das admin menu zugriff zu erhalten ....
ja, möglich ist es, nur würde es genauso auch mit ner "normalen" seite funktionieren => kein ajax fehler
Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste