Sebastian Koehler: Bester Schutz vor SPAM auf Homepages

Moinsen!

Welcher Trick oder Mechanismus ect ist der BESTE um sich vor SPAM zu schützen?
Mit BESTE meine ich soviel wie:

  • Führt generell zum Erfolg (also < 20% SPAM)
  • Browser-Kompatibilität
  • Usability (Also kein CAPTCHA- oder BildAlsEmail -Verfahren zB)
  • Möglichst einfach einzubinden / Einfache Technik

-> Naja einfach eure Lieblings-Technik eben :-)

Sebastian Koehler

  1. Welcher Trick oder Mechanismus ect ist der BESTE um sich vor SPAM zu schützen?
    Mit BESTE meine ich soviel wie:

    • Führt generell zum Erfolg (also < 20% SPAM)
    • Browser-Kompatibilität
    • Usability (Also kein CAPTCHA- oder BildAlsEmail -Verfahren zB)
    • Möglichst einfach einzubinden / Einfache Technik

    -> Naja einfach eure Lieblings-Technik eben :-)

    readonly = guaranteed only home grown SPAM.

    mfg Beat

    --
    ><o(((°>           ><o(((°>
       <°)))o><                     ><o(((°>o
    Der Valigator leibt diese Fische
  2. Auf ne private Seite würd ich schon mal keine Mailadresse setzen, sondern ein Kontaktformular. Dürfte auch keinen stören, denn ne private Seite (sorry jetzt werd ich einfach mal ehrlich) interessiert in den meisten Fällen außer eingeweihten Bekannten und den Spambots eh niemanden wirklich. Und erst recht keinen Unbekannten der mir unbedingt was mailen will.

    Bei einer Firmenseite siehts schon wieder anders aus.
    Und für Gästebücher oder ähnliches muss man halt abwägen, wer da alles was reinschreiben soll und darf, ob mans gleich mit Anmeldung macht oder halt doch mit Captcha oder sonst was.

    1. Am besten die Seite nie online stellen, dann kommt auch kein Spam :-)

  3. hi,

    • Usability (Also kein CAPTCHA- oder BildAlsEmail -Verfahren zB)
    • Möglichst einfach einzubinden / Einfache Technik
      -> Naja einfach eure Lieblings-Technik eben :-)

    Time Shift bei Eingabeformularen. Funktioniert so: Das Form kriegt beim Download einen Zeitstempel. Das Submit wird als SPAM gewertet, wenn es zu früh kommt oder nach Ablauf des Zeitfensters.

    Ein bischen aufwendiger wirds, wenn der Timestamp so verunstaltet werden soll, dass er nicht mehr als Solcher erkennbar ist. Beispielsweise könntest Du den Timestamp in eine IP-Adresse umrechnen, das merkt keiner, dass das ein Timestamp ist:

    1262078342 => 75.57.201.134

    Und vielleicht gibt da son Trottl sogar seine eigene IP-Adresse ein ;-)

    Hotti

    1. Time Shift bei Eingabeformularen. Funktioniert so: Das Form kriegt beim Download einen Zeitstempel. Das Submit wird als SPAM gewertet, wenn es zu früh kommt oder nach Ablauf des Zeitfensters.

      Ein bischen aufwendiger wirds, wenn der Timestamp so verunstaltet werden soll, dass er nicht mehr als Solcher erkennbar ist. Beispielsweise könntest Du den Timestamp in eine IP-Adresse umrechnen, das merkt keiner, dass das ein Timestamp ist:

      1262078342 => 75.57.201.134
      Und vielleicht gibt da son Trottl sogar seine eigene IP-Adresse ein ;-)

      Oder irgend ein Trottel versteht später sein eigenes Script nicht mehr.

      Den Timestamp brauchst du gar nicht an den Client senden.
      Verwende ihn als Teil in einer Digest-Funktion und sende den Hash an den Client.
      Logge Hash und Timestamp in einem File.

      mfg Beat

      --
      ><o(((°>           ><o(((°>
         <°)))o><                     ><o(((°>o
      Der Valigator leibt diese Fische
      1. hi,

        1262078342 => 75.57.201.134
        Und vielleicht gibt da son Trottl sogar seine eigene IP-Adresse ein ;-)

        Oder irgend ein Trottel versteht später sein eigenes Script nicht mehr.

        *G*

        Den Timestamp brauchst du gar nicht an den Client senden.
        Verwende ihn als Teil in einer Digest-Funktion und sende den Hash an den Client.

        Naja, in Perl hab ich ja auch noch pack(), unpack() und Base64. Da kann ich einen TS ein- und auspacken.

        Logge Hash und Timestamp in einem File.

        Das braucht aber dann noch einen Bezug zum UA. Also Cookie oder so... soviel Aufwand treibe ich da nicht (mehr).

        Viele Grüße,
        Horst Denkendorf

        --
        1. Logge Hash und Timestamp in einem File.

          Das braucht aber dann noch einen Bezug zum UA. Also Cookie oder so... soviel Aufwand treibe ich da nicht (mehr).

          Was für ein Bezug? Reicht Dir der Hash nicht aus? Und warum Du etwas, was Du gerade noch in anderer Form in ein Formular packen wolltest, nun in einen Keks stopfen willst, erschließt sich mir auch nicht.

          Die Methode (Zeitfenster) ist aber mit Vorsicht zu genießen, sie schlägt oft negativ an und/oder versagt oft. Bevor man sie allein einsetzt, sollte man sie lieber weglassen.

          1. Logge Hash und Timestamp in einem File.

            Das braucht aber dann noch einen Bezug zum UA. Also Cookie oder so... soviel Aufwand treibe ich da nicht (mehr).

            Was für ein Bezug? Reicht Dir der Hash nicht aus? Und warum Du etwas, was Du gerade noch in anderer Form in ein Formular packen wolltest, nun in einen Keks stopfen willst, erschließt sich mir auch nicht.

            Mistverständnis. Ich brauche keinen Cookie und auch keinen Hash oder Timestamp in Dateien auf dem Server, die in keinem Bezug zu einem UA stehen, der Daten sendet.

            Wer in dieser Sache was bauen will, sollte wissen: Alle Infos, die der Server von einem UA kriegt, können auch automatisiert gesendet sein. Egal ob das ein Cookie, ein Hiddenfeld, ein Captcha oder sonst was für Checksummen sind, auch ein Zeitversatz, das wissen auch die SPAMmer. Was die nicht wissen ist, wo das Zeitfenster liegt und wie die Uhr auf dem Server gestellt ist.

            Viele Grüße,
            Horst Fiesling

            1. Wer in dieser Sache was bauen will, sollte wissen: Alle Infos, die der Server von einem UA kriegt, können auch automatisiert gesendet sein. Egal ob das ein Cookie, ein Hiddenfeld, ein Captcha oder sonst was für Checksummen sind, auch ein Zeitversatz, das wissen auch die SPAMmer. Was die nicht wissen ist, wo das Zeitfenster liegt und wie die Uhr auf dem Server gestellt ist.

              Ich würde eher sagen, Sie kennen das Salz im Hash nicht.
              timestamp usw. ist lediglich zur Erzeugung von Varianz des Hashes zuständig.

              mfg Beat

              --
              ><o(((°>           ><o(((°>
                 <°)))o><                     ><o(((°>o
              Der Valigator leibt diese Fische
              1. Ich würde eher sagen, Sie kennen das Salz im Hash nicht.

                Hmm. Ich habs immer noch nicht kapiert, was Du hash'n willst und wie Du das anwendest. Sag mal: ...

                Horst Flecke

                1. Ich würde eher sagen, Sie kennen das Salz im Hash nicht.

                  Hmm. Ich habs immer noch nicht kapiert, was Du hash'n willst und wie Du das anwendest. Sag mal: ...

                  Es ist doch einfach. Kein Formular ohne eine zugehörige ID.
                  Ist das Formular verbraucht, wird die ID für die nächste Zeit gesperrt.
                  Irgendwelche Bots können nicht einfach ein Formular cachen. Sie müssen zudem durch so blöde Vorgänge wie eine Vorschau gehen.
                  Wie du eine ID herstellst, brauch ich dir wohl nicht erklären.
                  Wenn du nackt die ID aus einem timestamp herstellst, kann ein Bot das voraussehen. Ist dein Hash=deine ID gesalzen, dann hat er keine Chance.
                  Darauf will ich hinaus.

                  mfg Beat

                  --
                  ><o(((°>           ><o(((°>
                     <°)))o><                     ><o(((°>o
                  Der Valigator leibt diese Fische
                  1. Darauf will ich hinaus.

                    Ok, hab verstanden ;-)

                    Ne unique ID und sperren. Da musst Du die ID am Server speichern, ok, die MSG wird ja ohnehin gespeichert.

                    Mein TS ist synchron verschlüsselt, was ein SPammer sieht ist sowas:

                    MzM6NTI4PDk+Pw==

                    Womit das Script weiß, wann das Formular geschickt wurde und beim Submit berechnen kann, obs ins Zeitfenster passt. Der Spammer hingegen weiß aufgrund obiger Angabe nicht einmal, dass das ein Zeitstempel ist und mit diesem Stempel ist auch nur _ein_ Submit möglich (der wird bei mir für alle Zeiten gesperrt).

                    Horst Stempelrabe

                2. Aus dem timestamp einen hash bilden, hash und timestamp auf dem Server speichern und hash ins formular packen. Wird das Formular abgesendet, dann den  zum hash passenden timestamp prüfen.

                  Das ganze als Ersatz für zur IP verbogene timestamps o.ä.

            2. Mistverständnis.

              siehe unten im Thread

              Was die nicht wissen ist, wo das Zeitfenster liegt und wie die Uhr auf dem Server gestellt ist.

              Was irrelevant ist. Wenn sie wissen wie die Zeit "codiert" werden muß, dann können sie auch auslesen, wie spät es der Server im Formular haben wollte.

              1. hi,

                [..] Wenn sie wissen wie die Zeit "codiert" werden muß, dann können sie auch auslesen, wie spät es der Server im Formular haben wollte.

                Gar nix wissen die. Nach Diffie Hellmann kannst Du sogar Teile zum Schlüssel veröffentlichen, wie damit ein passender Schlüssel zusammengebaut wird, wissen jedoch nur Zwei ;-)

                Hotti

                1. Gar nix wissen die.

                  Dann ist es erst recht irrelevant "wo das Zeitfenster liegt und wie die Uhr auf dem Server gestellt ist".

  4. Hallo,

    Welcher Trick oder Mechanismus ect ist der BESTE um sich vor SPAM zu schützen?

    kein UGC (user-generated content). Ganz einfach.

    Mit BESTE meine ich soviel wie:

    • Führt generell zum Erfolg (also < 20% SPAM)
    • Browser-Kompatibilität
    • Usability (Also kein CAPTCHA- oder BildAlsEmail -Verfahren zB)
    • Möglichst einfach einzubinden / Einfache Technik

    Egal was du unternimmst: Wer SPAM in Blogs, Foren, Gästebücher etc. absondern *will*, der schafft das auch. Bestenfalls einige automatische Spamkacker wirst du mit automatischen Maßnahmen abwehren können.

    Oder meintest du SPAM als e-Mail?
    Da ist meiner Ansicht nach das Wichtigste, sorgfältig mit der eigenene Mailadresse umzugehen. Nach meiner Erfahrung kommt SPAM hauptsächlich dadurch, dass Unternehmen, mit denen man mal zu tun hatte (Versandhandel, ebay, Provider) oder Betreiber von Web-Portalen (sog. Social Networks) mit den Daten eben nicht so vertraulich umgehen, wie sie vorgeben. Ich behaupte das, weil ich bei solchen Anmeldungen immer eine leicht variierte Form der Mailadresse angebe (wenn es überhaupt nötig ist). Dann weiß ich auch nachher, wenn die SPAMs kommen, wer getratscht hat.
    Wenn ich die Angabe einer Mailadresse nicht für notwendig halte, der Anbieter aber doch, dann gebe ich nobody@example.net an.

    Die Veröffentlichung einer Mailadresse im Impressum einer Website spielt dagegen eine untergeordnete Rolle.

    So long,
     Martin

    --
    why the heck do you jerk think, that wir ein doppelposting nicht bemerken, wenn you zwischendurch the sprache wechselst?
      (wahsaga)
    1. hi,

      Die Veröffentlichung einer Mailadresse im Impressum einer Website spielt dagegen eine untergeordnete Rolle.

      Der Witz ist hier der, dass diejenigen, die da ihren Bürgenern laufend predigen, mit ihren Daten vorsichtiger umzugehen (hochbezahlte Beamte brüllen das Wort 'Datenschutz'), diese Bürger gleichzeitig per Gesetz dazu verdonnern, ihre eMail-Adresse samt Postanschrift ins Impressum zu schreiben. Das ist jedoch noch lange nicht alles, Stichwort eGovernment "Regierung Online", oder "Arbeitsagentur Online" ... unfassbar was da für ein Kack mit persönlichen Daten getrieben wird. Manchmal denke ich, die können sich ihr schei? Internet selbst in den Hintern stopfen, Justizminister, die noch nicht einmal wissen, was ein Browser ist, geschweige denn ein User Agent oder ein Secure Socket Layer.

      Mahlzeit ;-)
      Horst Haselhuhn

  5. Welcher Trick oder Mechanismus ect ist der BESTE um sich vor SPAM zu schützen?

    Kommt darauf an. Für Seiten bei denen ein Spamer nicht manuell nach einer Umgehungsmethode sucht (die meisten kleinen Seiten) ist eine simple aber eigene Methode oft sehr gut. Bei fertigen und weit verbreiteten scripten reicht dann schon mal das Umbenennen von Dateien und/oder Parametern aus. Auf Formularen die nicht im Index von Suchmaschinen sind habe ich übrigens noch nie Spam bekommen.

    • Möglichst einfach einzubinden / Einfache Technik

    Das hängt mehr davon ab worin man es einbinden will.