www.ich-bau-euch-eure-Clusterseite.de

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon Gast » 30. Nov 2009, 22:12

hmm stimmt ;) hab ich noch nich dran gedacht.. aba es stimmt :lol:
Gast
 

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon ThaSpeedy » 3. Dez 2009, 22:05

Spiel ja keine rolle, aber was mir immer graut sind javascript (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 :mrgreen:

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 8-)

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);
?>



Gruss Speedy 8-)
Zuletzt geändert von ThaSpeedy am 23. Dez 2009, 14:53, insgesamt 1-mal geändert.
I never comment my sourcecode. What's HARD to write must be HARD to read!
Bild
ThaSpeedy
Hobby-Bastler
 
Beiträge: 397
Registriert: 1. Aug 2008, 17:19
Hat Gedankt: 0 time
 Danksagungen: 7 times

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon Gast » 23. Dez 2009, 00:02

hmmm soweit bin ich noch nich ganz^^..
hab mein buch (das ist so etwas mit papier :D wer kenns ncoh??) aba auch noch nich wirklich lange... lern grad css formatierung.. (weihnachten krig ich dann PHP und mysql *freu*)

mfg shooter
Gast
 

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon liro » 23. Dez 2009, 13:44

ich würde die passwörter nciht im klartext speichern... sha1/md5 hilft...
Bild
liro
Zocker
 
Beiträge: 243
Registriert: 25. Jul 2008, 16:53
Hat Gedankt: 0 time
 Danksagungen: 0 time

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon liro » 23. Dez 2009, 14:07

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 :mrgreen:

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 8-)

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 8-)
Bild
liro
Zocker
 
Beiträge: 243
Registriert: 25. Jul 2008, 16:53
Hat Gedankt: 0 time
 Danksagungen: 0 time

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon ThaSpeedy » 23. Dez 2009, 14:38

bloß, wieso sollte ich was in cookies speichern? und man kommt nicht mehr an die werte rann, weshalb es ziemlich sinnfrei ist
ich habe nie behauptet das java = javascript ist^^ wär ja auch schwachsinn^^ das ajax was summa benutzt stellt sicherheistmängel dar, wobei ajax immer manipulierbar ist, da der user den kompletten quellcode sehen kann was bei php nicht möglich ist ausser bei hacken des servers...

hier mal ein ungetestetes sample!
also noch fragen? (ja nicht alle funktionen dabei aber der kern ist da)
Code: Alles auswählen
<?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;
        }
    }
}
   ?>
I never comment my sourcecode. What's HARD to write must be HARD to read!
Bild
ThaSpeedy
Hobby-Bastler
 
Beiträge: 397
Registriert: 1. Aug 2008, 17:19
Hat Gedankt: 0 time
 Danksagungen: 7 times

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon liro » 23. Dez 2009, 18:19

xajax(framework, welches für who werwendet wird) überträgt doch nur die daten und setzt sie in bestimmte container ein(zb divs mit bestimmter id)(zu mindest macht summa dies so). so kann der benutzter auf kaum welcher funktionen zugreifen. und solange du alles übertragene mit escape sicherst kann auch nichts passieren(i fall von ner db)(die gilt auch für normale seiten)

da der user den kompletten quellcode sehen kann was bei php nicht möglich ist ausser bei hacken des servers...


wie schon gesagt... kann er eben nicht, da eben nciht alles aufm browser läuft, sondern aufm server berechnet wird.
Bild
liro
Zocker
 
Beiträge: 243
Registriert: 25. Jul 2008, 16:53
Hat Gedankt: 0 time
 Danksagungen: 0 time

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon ThaSpeedy » 24. Dez 2009, 01:14

... glaub mir es gibt/gab bis dato einen nicht allgemeinen bekannten befehl um auf das admin menu zugriff zu erhalten .... :mrgreen:
I never comment my sourcecode. What's HARD to write must be HARD to read!
Bild
ThaSpeedy
Hobby-Bastler
 
Beiträge: 397
Registriert: 1. Aug 2008, 17:19
Hat Gedankt: 0 time
 Danksagungen: 7 times

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon liro » 24. Dez 2009, 09:42

ThaSpeedy hat geschrieben:... glaub mir es gibt/gab bis dato einen nicht allgemeinen bekannten befehl um auf das admin menu zugriff zu erhalten .... :mrgreen:


ja, möglich ist es, nur würde es genauso auch mit ner "normalen" seite funktionieren => kein ajax fehler
Bild
liro
Zocker
 
Beiträge: 243
Registriert: 25. Jul 2008, 16:53
Hat Gedankt: 0 time
 Danksagungen: 0 time

Re: www.ich-bau-euch-eure-Clusterseite.de

Beitragvon ThaSpeedy » 31. Dez 2009, 05:12

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 .... :mrgreen:


ja, möglich ist es, nur würde es genauso auch mit ner "normalen" seite funktionieren => kein ajax fehler

aber es wir die nicht so ins gesicht gezeigt wie man auf bestimmte elemente drauf zu greifen kann^^ wobei man da auch noch eine sicherheit einbaut weil man jaa mit links arbeitet und nicht mit ajax was das aufrufen wesentlich einfacher und experimentierfreudiger macht :mrgreen:
I never comment my sourcecode. What's HARD to write must be HARD to read!
Bild
ThaSpeedy
Hobby-Bastler
 
Beiträge: 397
Registriert: 1. Aug 2008, 17:19
Hat Gedankt: 0 time
 Danksagungen: 7 times

VorherigeNächste

Zurück zu Programmierung



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron