Interesting approach. Although, one thought crossed my mind: why not randomize the generated field name and position (ie., weight)? Wouldn't such a field be untrappable by spam bots, because two fields will never be the same?

Comments

lipcpro’s picture

Version: » 5.x-1.x-dev

Great idea. One problem with it is the module uses a name matching css file, on a busy server this might not be a good idea to be creating all those files. Another is the code at the moment is very small and would not add a lot more to Drupal's building of all the forms that would be affected. Not to mention that it would add another set of sql queries to that process, slowing the page some more. Either a database of words to use (so they look like meaningful words to a bot?) or not to (so they don't conflict with fields already in the form) would have to be created and queried because the form fields in any Drupal install are in code, not the db, and I can't guarantee that another field won't be added to the form by another module.

Now if they could be randomly generated by the administrator on a regular basis, or a cron job, that might work.

aaron’s picture

Note that if you go this route, spam bots that catch on might ultimately look at the field description as well, so that may also need to be randomized somehow. Might be a good idea in general to allow the admin to set the description anyway, to help randomize things a bit from site to site.

dariogcode’s picture

I think we can do it without add css file, using #prefix and #suffix of FAPI, so the random field idea will work great.

Reg’s picture

I was going to post an issue on a stealth option but I think this issue is tightly related so I'll point it out here.

I noticed in the HTML that spamicide puts the text: "To prevent automated spam submissions leave this field empty". If you were a spammer and were targeting Drupal websites, would this not be the first thing you would look for? ...and then write a little code to work around it.

Perhaps a checkbox that toggles on and off "tale tell" signs of its presence would be appropriate Or even better, put the tale tell signs randomly next to legitimate fields or the fake field(s)... then they won't know what to write for!

In other words, consider the spammers just as smart as you are and think about how you would get around your own protection. After all, Drupal is high profile and will receive specialized targeted attacks.

Frank Ralf’s picture

Version: 5.x-1.x-dev » 6.x-1.3

Just changing version as this might still be a feature request.

It would be great, though, to have some empirical data whether a lot of spam bots really get past this module.

And you should be able to change the message to your liking using Drupal's translation system (even delete it, but that might not be recommended if real people see the field by accident).

lipcpro’s picture

@Reg The description field is a must have as I want to have spamicide work for screen readers/web accessibility guidelines re: http://www.w3.org/WAI/gettingstarted/Overview.html to let those users with disabilities to still be able to access sites using spamicide.
I have to figure out a way to have a description on the field that can be changed by admins that would allow for translations as well. The problem is that most translation is done by using lc.pot files in the module, where lc = the language code. What we need is a way to store it in the database or create the files in sites/sitename/files/spamicide directory and have the locale module pay attention to them. If anyone has any ideas I'm more than willing to flesh this out with the dev version.

buzzman’s picture

just brainstorming this "must have description" thingie >>>

- if the web accessibility guidelines allow, then maybe use a background image around the input field (that is double the height of the input) and carries this short message in the image @ it's top half? next, hide this background with JS for normal users.

- if the background thing is not good per the guidelines, how about a normal image that has this text and that's added to the right/left/top/bottom (make this a choice) of the input field and has an ALT that carries the description, and of course hide with JS for normal users.

cheers ;-)

danielb’s picture

User provided strings can be translated with the i18n string module
http://groups.drupal.org/node/149984
http://drupal.org/project/i18n
also pot files are no longer the way to do translations
http://localize.drupal.org/translate

lamp5’s picture

Issue summary: View changes
Status: Active » Closed (outdated)