Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Anfänger fragen.

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [Erledigt] Anfänger fragen.

    Schönen guten Morgen,

    da ich noch blutiger Anfänger bin. Liegen mir Gewissen Fragen aufn Herzen.
    Wo ich denke das ich hier vielleicht hier ganz gut aufgehoben bin.

    Im Vorfeld. Ja hab mir etliche Seiten zu diesem Thema Angeschaut beispielCode's auf zig Seiten dazu durchgelesen und und und.

    Jedoch möchte ich es einfach mal mit meiner allerersten Frage hier im Forum versuchen.

    "Thema Sicherheit und PHP."

    bleiben wir mal beim ersten Thema Login / Registrieren Script.

    Und schon tummeln sich zig information im Internet rum. Die alle die Weisheit mit Löffeln gegessen haben. Jedoch wohlmöglich schon sehr veraltet sind.

    Jedoch gibt es ja viele Wege die nach Rom führen.

    Ich werde hier mal stück für stück . Je nach meinen Wissenstand weiter updaten wenn das ok ist.

    Als erstes werde ich MySqli verwenden.

    So jetzt sollte man natürlich schonmal für sorgen das im EingabeFormular sämtliche nicht benutzten Zeichen herrausgefiltert werden. Das man mit ihnen keinen Schadcode einschläusen möglich ist.

    Das heißt das in der Eingabe natürlich keine Zeichen umgewandelt werden die in Html oder sonstwas irgendwelche bedeutungen haben.

    JO und nun meine Frage. welche is nun richtig und welches nicht. Oder besser gesagt. Wie wäre es für mich als Anfänger am besten diese Information am besten gezielt herrauszubekommen. Ich würde jetzt tippen PHP Manual. Nach der neusten Version schauen. Und vergleich nach Vor und Nachteilen ?.

    Sorry für den Wall of Text. Und ich hoffe das mein Anliegen so halbwegs verständlich rüberkam. Vieleicht mach ich mir darüber auch einfach nur zuviele Gedanken ( Unnütze.) Und alles würde mit HtmlSpecialChars reichen. Was ich aber halt nicht glauben will.

    Hatte unterschiedliches gesehen.

    Extra Functionen. Für $_POST , $_GET etc die direkt diese Buchstaben rausfiltern unwirksammachen. Und dabei gewissen andere Sicherheitsvorkehrungen dadurch aktiviert haben.

    Oder durch extra bestimmen welche Buchstaben halt nur erwartet werden sollten und zulässig sind.

    deshalb bin ich so verwirrt. Aber wahrscheinlich hängt es davon ab was ich dann damit noch vorhabe. Falls so ne SQL Injection vorgenommen wird. etc.


    Mit freundlichen Grüßen.

    Wäre lieb wenn mir hier einfach mal den Ball in die richtige Richtung hauen könnte.

    Will keine Fertigen Code oder sonst was ich würde es nur gerne verstehen.


  • #2
    Wie wäre es für mich als Anfänger am besten diese Information am besten gezielt herrauszubekommen
    Lesestoff:

    http://php-de.github.io/#security

    http://php-de.github.io/jumpto/sicherheit/

    Und generell:

    http://www.php.de/php-einsteiger/489...rundlagen.html
    Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
    PHP.de Wissenssammlung | Kein Support per PN

    Kommentar


    • #3
      Erstmals danke für die wirklich schnell Beantwortung.
      Hatte es schon befürchtet. Und obwohl ich Anfänger bin bin ich wohl einer der eher ließt und ließt und ließt bevor ich überhaupt mal was frage.

      Ok vielleicht hab ich einfach was übersehen. Werde mir die Links nochmal in Ruhe durchlesen.

      Vielen Dank.

      Mit freundlichen Grüßen.
      Thorsten

      Kommentar


      • #4
        Zitat von ThorstAnfang Beitrag anzeigen
        Aber wahrscheinlich hängt es davon ab was ich dann damit noch vorhabe.
        Ja, genau. Grundsätzlich gilt:
        - beim Eintragen musst du darauf achten, das kein PHP/SQL-Code ausgeführt wird. Da kommst du mit Escapen (z.B. mysqli_real_escape_string()) bzw. Prepared Statements hin
        - beim Auslesen dagegen kommt es dann auf HTML/Javascript an. Dieses sollte, außer wenn explizit erwünscht, NICHT ausgeführt werden. Dafür gibt's htmlspecialchars()

        Das dritte, was eigentlich ein anderer Bereich ist, ist Validation. Da kommt es eben darauf an, ob die Eingabe gewissen Kriterien entspricht (z.B. nur Buchstaben für Benutzername). Wenn die Validation fehlschlägt kommt es i.d.R. nochmal zu einer Benutzereingabe. Du solltest da nicht versuchen automatisch irgendwas zu beheben.

        Kommentar


        • #5
          Danke,

          Die Artikel haben mir schonmal ne ganze Ecke weitergeholfen.

          Informationen waren schön gezielt und kompakt und haben nicht erstmal drumrumgeredet.

          Da ich erst gestern gehört hatte das man Htmlspecialchars heutzutage nicht mehr verwenden sollte.
          Bin ich dann doch sehr in Schleudern gekommen.

          Und die Sache mit Validation hatte ich ehrlich gesagt auch noch nicht so miteinbezogen.
          Was wiederrum aber auch extrem wichtig / logisch sein sollte..
          "Ich erwarte ein rotes Auto. Aber da steht ein blaues Flugzeug."

          Prima das hier einen so schnell geholfen wird.

          Kommentar


          • #6
            Da ich erst gestern gehört hatte Htmlspecialchars heutzutage nicht mehr verwenden sollte
            http://php-de.github.io/jumpto/cross...en-des-markups
            Debugging: Finde DEINE Fehler selbst! | Gegen Probleme beim E-Mail-Versand | Sicheres Passwort-Hashing | Includes niemals ohne __DIR__
            PHP.de Wissenssammlung | Kein Support per PN

            Kommentar


            • #7
              Ok jetzt ist auch die letzte Verunsicherung beseitigt worden.

              Hatte es gestern nur falsch Verstanden.
              Dadurch das er seine eigenden Sicherheitsfunktion geschrieben hat, die im Vorfeld alles rausfiltert oder Escaped.
              Jedoch dadurch später nicht mehr benötigt wird eingebaut zu werden oder gerade deswegen sich Sicherheitslücken öffnen weil man es mal vergessen hat zuverwenden.



              Danke danke danke.

              Kommentar

              Lädt...
              X