My Top 6 Honeytokens
blogs.sans.org
blogs.sans.org
Then the real activation link is down below that, clearly marked as well.
The majority of spambots and exploit worms, etc, just have a simple regex for parsing out the first "right-looking" link in the activation email to get their account activated.
On one forum I dealt with, this caught 100% of the hundreds of spambots hitting the forum each month.
Kind of interesting that bots can have some of the best captcha-guessing algorithms, but change up a little of the expected flow from the most common and you can quickly notice which visitors are bots or otherwise.
Honeytokens work incredibly well for everyone else -- spamming is a game of finding easy marks. And there are enough easy marks out there that spammers would rather pack up and move on to the next target than deal with a determined engineer.
As rantfoil said, if you're Yahoo or GMail or some other major site, they'll fix their bot right away. Yet if you're at all below their radar, this is the sort of easy trick that can buy you some time for spam control replanning. This works great for web software that is constantly attacked by generic script kiddie bots. It's a good bit easier than switching entirely to a different system for blogs, forums, wiki, or CMS when your captcha is broken.
I think the former is more likely to happen with the tactics mentioned, and the people who want in are going to just be slowed down a tad trying that path before going another route.
I know a lot of curious people who would try to "probe" around those sorts of fake entrances just because they saw them and not because they really cared anything about attacking the site.
None of these suggestions will help you solve actual security problems that your users will face, like stolen session cookies. Implementing these suggestions might be fun, but it will probably make your app less secure.
Honeypots are always dangerous because they can end up ensnaring good visitors & bots with the bad. Yahoo, MSN, and ASK all follow links even if the rel="nofollow" attribute is set. One should at least disallow these loops in the sites's robots.txt file.
http://en.wikipedia.org/wiki/Nofollow#Interpretation_by_the_...
Refusing to initialize a session for non-browser UAs just invites abuse via agent masking by malicious users, while locking out innocuous and acceptable uses by your real users.
In my experience if your honeypot field has a nonsensical name or is named something like 'do_not_fill_field' then problems are unlikely to be encountered.