E-Mail-Adresse auf Validität prüfen

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

  • #16
    Original geschrieben von combie
    Das "sauberer Code" Argument verstehe ich jetzt nicht ganz...
    Ich schon. Die Struktur zu versauen (und nichts anderes bedeuten jedes Mal wechselnde Feldnamen für mich - bspw. das in meinem Browser implementierte Autocomplete machst du damit unmöglich) kommt einer Kapitulation vor den Spammern gleich.

    SessionIds per URL kommen zum Glück langsam aus der Mode. Und ohne Sesions bekommst du die Capatchas nicht in den Griff. Also auch da schon der Cookiezwang!!!!
    Bei einem POST-Formular kann die SID problemlos per hidden-Feld weitergegeben werden - nix Cookiezwang.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #17
      Stimmt, das Autocomplete verliert man damit!
      Das gehöhrt allerdings (noch) nicht zur Spezifikation.

      Kapitulation vor den Spammern
      Das ist in meinen Augen, die Verwendung der (maschinenlesbaren)Suchbildchen! Der Besucher bekommt zusätzliche Arbeit aufgezwungen, weils die Programmierer nicht dicht kriegen.

      POST-Formular.... - nix Cookiezwang.
      Nunja... Die meisten Websiten verwenden doch auch wohl mehr Links und nicht nur POST-Formulare, also steht dann die SID doch wieder in der Url.. Also doch Cookiezwang, wenn man das vermeiden will.

      Klar hat jede Methode ihre Nachteile!

      Es war in meinem Sinn die unsichtbaren Möglichkeiten hier zu präsentieren, wer was daraus macht, möchte und muss ich jedem selbst überlassen.
      Zuletzt geändert von combie; 20.07.2007, 11:20.
      Wir werden alle sterben

      Kommentar


      • #18
        @combie: Um das nochmal klar zu stellen, einige deiner Tipps fand ich sehr gut und werde ich auch definitiv in der Praxis testen. In der Theorie klingt das jedenfalls gut (find ich ).

        Aber von der Sache mit den Cookies bin ich nach wie vor nicht begeistert. Genau wie von der Idee mit den zufälligen Feldnamen.

        Vielen Dank nochmal für die Tipps, ich werde vorerst auf das Captcha verzichten (jetzt wo ich's schon fertig geschrieben hab ).
        Das Genie überblickt das Chaos!

        Wer Rechtschreibfehler findet, darf sie behalten!

        Kommentar


        • #19
          Achso, ich hätte da noch eine andere Frage und zwar ist es ja (bei ungeprüfter Weiterverwendung der Formulareingaben) problemlos möglich beispielsweise ein Kontaktformular zum Versenden von Spam zu nutzen.

          Nachdem ich mich diesbezüglich etwas informiert habe, bin ich auf folgende Lösung zur Vermeidung des Problems gestoßen.

          PHP-Code:
          strip_tags($_POST['formularfeld']); 
          Ich nutze die Funktion bei jedem Formularfeld.

          Nun meine Frage, ist dieser Schutz ausreichend, oder sollten noch weitere Maßnahmen getroffen werden um solchem Missbrauch vorzubeugen?
          Das Genie überblickt das Chaos!

          Wer Rechtschreibfehler findet, darf sie behalten!

          Kommentar


          • #20
            strip_tags() schützt recht gut vor XSS Angriffen, hat mit Spam aber erstmal nix zu tun.

            Aber von der Sache mit den Cookies bin ich nach wie vor nicht begeistert.
            Ich auch nicht! Aber wenn man auf der Seite sowieso mit Sessions arbeiten muß, wegen Warenkorb oder Login usw. Ist die Arbeit mit Cookies ein großer, guter Schutz vor versehentlicher Übernahme der Session durch "Unbefugte".
            Zuletzt geändert von combie; 20.07.2007, 11:14.
            Wir werden alle sterben

            Kommentar


            • #21
              Nun meine Frage, ist dieser Schutz ausreichend, oder sollten noch weitere Maßnahmen getroffen werden um solchem Missbrauch vorzubeugen?
              Kommt drauf an wo du das Feld einbaust. Wenn es nur der Text der Email ist, dann ist das ausreichend. Wird das Feld aber im Head Bereich der Email verwendet MUSST du zusätzlich auch auf \n resp \r\n Testen !
              Nehmen wir an du baust das Feld als Betreff ein, dann würde ich als Spammer mal folgendes versuchen
              Code:
              <input type="text" />Ihre Email\r\nBcc: du@du.de
              Ein Strip Tags wird nur HTML Tags entfernen und die \r\n stehen lassen. Wenn dieser Wert an die mail() im Betreff übergeben wird, dann wird korrekt als Betreff "Ihre Email" angegeben der Zeilenumbruch führt dazu, dass Bcc: als neue Header Zeile interpretiert wird.

              Gruss

              tobi
              Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

              [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
              Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

              Kommentar


              • #22
                Hmm, mit strip_tags wird doch das Einschleußen von PHP- und HTML-Tags verhindert. Da beispielsweise der E-Mail-Header durch das Anhängen von CC bzw. BCC-Einträgen verfälscht und somit zum Versenden von Spam verwendet werden kann, oder?

                Gibt es noch weitere Möglichkeiten Spam über mein Kontaktformular zu versenden?
                Das Genie überblickt das Chaos!

                Wer Rechtschreibfehler findet, darf sie behalten!

                Kommentar


                • #23
                  @jahlives: ich habe mein Formular mit einer ähnlichen Eingabe getestet. Der Server (bin mir jetzt nicht Sicher welche PHP-Einstellung dafür zuständig ist) setzt ein \r in \\r um. Rein vom Schutz her würde das dann doch eigentlich reichen, oder?

                  Klar, um sauberen Code bzw. eine saubere E-Mail zu bekommen sollten diese Zeichen dann auch entfernt werden bzw. der restliche Eintrag ab dem Auftreten dieses Zeichens.
                  Das Genie überblickt das Chaos!

                  Wer Rechtschreibfehler findet, darf sie behalten!

                  Kommentar


                  • #24
                    Klar, um sauberen Code bzw. eine saubere E-Mail zu bekommen sollten diese Zeichen dann auch entfernt werden bzw. der restliche Eintrag ab dem Auftreten dieses Zeichens.
                    Wenn solche Zeichen in einer Usereingabe vorkommen, lasse ich meine Mailscripts einfach verrecken. Da verarbeite ich nicht auch nur ein Zeichen davon...
                    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

                    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
                    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

                    Kommentar


                    • #25
                      @jahlives: Klar, das fiel mir dann ein, als ich mir den Eintrag nochmal durchgelesen hatte (Vorschau-Funktion nutzen wäre besser gewesen ).

                      Jetzt muss ich aber nochmal abschließend fragen: Sollten sonst noch irgendwelche Prüfungen etc. vorgenommen werden?

                      Und welche Zeichen außer \n und \r sollte ich noch abfragen? Wie bereits erwähnt habe ich verschiedene Pattern gefunden, aber keines davon arbeitet wirklich korrekt (Funktionieren eigentlich gar nicht) und ein solches Pattern zu zerlegen ist auch nicht wirklich schnell gemacht.
                      Das Genie überblickt das Chaos!

                      Wer Rechtschreibfehler findet, darf sie behalten!

                      Kommentar

                      Lädt...
                      X