Honeypot (PHP Lexikon)

letzte Änderung am 10.10.2009

Als Honeypot (Honigtopf) wird ein Mechanismus bezeichnet, der der Unterscheidung von menschlichen Benutzern und Bots dient. Deshalb kommen Honeypots im Internet zum Einsatz, um Bot-Einträge über Formulare zu identifizieren.
Die Bezeichnung selbst rührt daher, dass im Regelfall ausschließlich die gewünschte Zielgruppe in den Honigtopf tapst und anschließend an der Honigspur erkannt werden kann, die sie hinterlässt.

In den Anfängen der SPAM-Bots reichte es häufig aus, ein leeres Input-Feld vom Typ "hidden" in einem Formular zu platzieren. Da dieses für den normalen Benutzer nicht sichtbar war und somit in der Regel leer stehen blieb, konnten Bots daran erkannt werden, dass nach dem Abschicken des Formulars ein Wert für dieses Feld existierte.
Die Vergangenheit hat allerdings gezeigt, dass sich Bots neuen Entwicklungen schnell anzupassen wissen. Der vergleichsweise simple Trick des hidden-Felds wurde deshalb schon nach kurzer Zeit von den meisten Bots entlarvt.

In Folge dessen sind die Betreiber von Webseiten dazu gezwungen, effektivere und komplexere Honeypots zu entwickeln, um Bots auch weiterhin die Stirn bieten zu können. Gerade deshalb fanden grafische CAPTCHAs in den letzten Jahren eine weite Verbreitung im Internet. Leider handelt es sich um eine Maßnahme, welche die Benutzerfreundlichkeit stark beeinträchtigt. Das Entziffern von grafischen CAPTCHAs ist in vielen Fällen selbst für motivierte Benutzer kaum noch möglich.

Die bessere Lösung ist deshalb der Einsatz von intelligenten Validatoren und Honeypots. Diese bemerkt der Endanwender in der Regel überhaupt nicht.
Mögliche Ansätze sind die Zeit, die zwischen Generierung und Abschicken des Formulars verstreicht oder die Anzahl von externen Links innerhalb eines Eintrags. Eine Blacklist (Stichwort "Badwords") ausgewählter Begriffe kann in einigen Fällen ebenfalls hilfreich sein.
Außerdem können anstatt des überholten hidden-Feldes gewöhnliche Input-Felder in einem Formular platziert werden, welche - versehen mit typischen Namen wie "username" oder "email" - per CSS für den Normal-Anwender ausgeblendet werden. Gleichzeitig können die richtigen Felder mit kryptischen Namen versehen werden. Es ist aber nur eine Frage der Zeit, bis auch dieser Trick von Bots erkannt werden kann.

Wichtig ist es deshalb, eine Kombination unterschiedlicher Mechanismen zu schaffen, welche für Bots und deren Autoren sowohl schwer zu identifizieren als auch zu umgehen sind.
Durch die Analyse von erfolgreichen Bot-Einträgen können die erstellten Mechanismen nach und nach ausgebaut und verbessert werden, sodass am Ende ein zuverlässiger, aber individueller Schutzwall gegen Bots stehen kann.

>> Allgemeine Fragen oder Probleme mit dem Lexikon-Begriff? Hier gehts zum Forum!

Impressum / Datenschutzerklärung          © der-Webdesigner.net 2002 - 2011           top ▲