molily: Unterschied zwischen Firefox und anderen Browsern?

Beitrag lesen

Hallo,

  if (resulttext.search("Success") >= 0) {  

Hier kannst du besser .indexOf("Success") > -1 verwenden. search() ist für reguläre Ausdrücke gedacht.

req.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
req.setRequestHeader("Content-length", formdaten.length);
req.setRequestHeader("Connection", "close");

Diese Zeilen dürften eigentlich unnötig sein. Bei POST-Requests ist application/x-www-form-urlencoded Standard, und der Browser setzt auch die korrekte Content-Length. Die Angabe von Connection: Close ist nicht zwingend nötig, lass den Browser entscheiden, wann er die TCP-Verbindung schließt.

[code lang=html]
$verbindung = @mysql_connect($server,$login,$pass);
$test_pw = md5($password);
$abfrage = "select anzeigename,loginname from userlogins where loginname='$loginname' AND password='$test_pw'";

Dieses Script hat verschiedene Schwächen und Sicherheitslücken. Problematisch sind hier:

  • Verwendung von register_globals anstatt $_GET, $_POST usw.
  • Verwendung der veralteten mysql_*-Funktionen anstatt mysqli oder PDO mit Prepared Statements
  • Eingabedaten werden ohne Behandlung (Escaping) in SQL-Anfragen eingebaut. Das ist ein Sicherheitsrisiko, siehe auch Kontextwechsel
  • Die Passwörter werden ohne Salt mit MD5 gehasht. Es ist ein Kinderspiel, das zu knacken. Besser wäre bcrypt oder PBKDF2.
  • Als Authentifizierung im Cookie dient anscheinend der Benutzername und ein davon direkt abgeleiteter Wert. Das ist leicht zu fälschen, wenn der Benutzername bekannt ist. Trenne die Session-Daten von der zufälligen Session-ID. Ändere die Laufzeit der Session entsprechend, falls nötig.

Ich rate dir, ein gutes PHP-/MySQL-Buch durchzuarbeiten. Das bringt einem bei, wie man heutzutage Datenbank-Verbindungen aufbaut, Inhalte bereinigt, Passwörter speichert und Sessions erzeugt.

Viele Grüße,
Mathias

0 55

Unterschied zwischen Firefox und anderen Browsern?

Klaus
  • browser
  1. 0
    Matze
    1. 0
      molily
      1. 0
        Matze
        1. 0
          Klaus
          1. 0
            Matze
            1. 0
              Klaus
              1. 0
                Matze
  2. 0
    Felix Riesterer
    1. 0

      Zustimmung: Einfach MD5-gehaschte Passwörter sind unsicher

      Jörg Reinholz
      • programmiertechnik
      1. 0
        Klaus
        1. 0
          Matze
          1. 0
            Klaus
          2. 0
            MudGuard
        2. 2
          molily
          1. 0
            Klaus
            1. 0

              Statt md5(str) - Das, was heise vorschlug in einf. Code gegossen

              Jörg Reinholz
              1. 0
                molily
                1. 0
                  Jörg Reinholz
                  1. 0
                    Jörg Reinholz
                  2. 2
                    molily
                    1. 0
                      molily
                    2. 0
                      Jörg Reinholz
                      1. 0
                        molily
                        1. 0
                          Jörg Reinholz
                          1. 1
                            dedlfix
                            1. 0
                              Jörg Reinholz
                              1. 0
                                molily
                                1. 0
                                  molily
                                  1. 0
                                    Jörg Reinholz
                                2. 0
                                  Jörg Reinholz
                              2. 1
                                Sven Rautenberg
                                1. 0
                                  Jörg Reinholz
                        2. 0
                          Jörg Reinholz
                          1. 2
                            molily
                            1. 0
                              Jörg Reinholz
                              1. 0

                                Kostenloses Bildungsangebot

                                molily
                                1. 0
                                  molily
                                  1. 0

                                    Unbrauchbares Bildungsangebot

                                    Jörg Reinholz
                                  2. 0

                                    Kostenloses Bildungsangebot - jetzt für Dich

                                    Jörg Reinholz
                                2. 0

                                  Kostenloser Hinweis auf Deinen Denkfehler

                                  Jörg Reinholz
              2. 0
                Der Martin
              3. 1
                Sven Rautenberg
                1. 0
                  Matthias Apsel
    2. 0

      Verschlüsselung clientseitig. Kann mir das mal einer erklären ?

      Siri
      1. 0
        misterunknown
        1. 0
          Siri
      2. 0
        Jörg Reinholz
        1. 0
          Siri
      3. 0

        Noch ne Frage: Wo wird eigentlich der Schlüssel hinterlegt?

        Siri
  3. 0
    Jörg Reinholz
    1. 0
      Klaus
  4. 0
    molily
    1. 1

      Session-Konfiguration

      Matze
    2. 0
      Klaus