如何在类似论坛的应用程序中防止垃圾邮件?

时间:2008-10-21 12:38:59

标签: spam-prevention

除了pastie.orgp.ramaze.net等网络应用的CAPTCHA之外,还有其他方法吗?根据我的口味,CAPTCHA需要很长时间才能得到一小块糊状物。

7 个答案:

答案 0 :(得分:8)

您可以尝试Honeypot CAPTCHAs。基本上,您使用CSS隐藏一些表单域。您的用户永远不会填写这些字段,因为他们不会看到它们,但是不支持CSS的垃圾邮件机器人会将其填满。在服务器端,您只需忽略注释/粘贴/等。那个字段填写完毕。

除蜜罐外,您还可以使用时间戳和一次性令牌来停止重播攻击。这是一个discussion of combining the two techniques

答案 1 :(得分:2)

就个人而言,在我的博客上,我从机器人那里收到了大量垃圾邮件。在分析了垃圾邮件的样子之后,我做了一些快速的正则表达式来检测诸如一个充满链接的帖子,或者主题,评论和名称字段都填充了相同文本的情况。如果帖子被阻止,我会显示一个很好的用户友好消息。自从我采用这种技术以来,我每周都会将数百条垃圾评论从几乎归零。我想我想说的是,分析你正在获得什么样的垃圾邮件流量,看看是否有一种简单的方法可以通过一些简单的分析来解决它,而不是诉诸像验证码这样的东西。

答案 2 :(得分:1)

我以前成功使用过hashcash。

它需要启用javascript的浏览器并将帖子延迟几秒钟(可配置),但具有不添加UI复杂性的优势。

虽然hashcash不能避免垃圾邮件 per se ,但它要求垃圾邮件发送者浪费时间计算javascript哈希值,这反过来要求垃圾邮件发送者启用了javascript(其中是非常罕见的,并且它每分钟不能做几次垃圾邮件

答案 3 :(得分:1)

您可以尝试Akismet。它非常擅长阻止垃圾邮件,可以免费(取决于您的使用),并且有许多网络应用程序的API。

虽然你的两个没有列出,但是需要做一些工作才能让它们与它们一起工作。 pastie.org是否基于rails?如果是这样,那么Akismet就有一个rails API。

答案 4 :(得分:1)

来自wikipedia

  

CAPTCHA系统是一种手段   自动生成新的   挑战:

* Current software is unable to solve accurately.
* Most humans can solve.
* Does not rely on the type of CAPTCHA being new to the attacker.

我自己在解析Captchas(至少是基于图像的)时非常糟糕,对我而言,感觉就像当前的实现没有填充上面的“规范”。实际上许多广泛使用的实现可以用软件解决。我和大多数人一样,我无法解决这些问题......(主观我知道)

我可能会尝试实现一个系统,用户可以将这些内容标记为我删除的垃圾邮件。是的,垃圾邮件是可见的,但没有管理员本人的任何输入,也不会长久。

考虑到这一点,SO的声誉和投票系统可以非常有效地减少垃圾邮件的影响,因为问题会被关闭并投票结果=>情人能见度

答案 5 :(得分:1)

查看defensio.com。它使用贝叶斯过滤(如邮件过滤器)。它非常有效。这是一个免费的网络服务。

免责声明:过去曾在那里工作过。

答案 6 :(得分:0)

Phil Haacks invisible captcha之类的东西怎么样?