更好的实现蜜罐(表格反垃圾邮件)更好的实现蜜罐(表格反垃圾邮件)(Better Honeypot I

2019-05-13 07:12发布

我们如何摆脱我们的网站,这些垃圾邮件机器人的?

每个站点下跌受害者对垃圾邮件机器人在某个时候。 你如何处理它会影响你的客户,大多数解决方案可以从填写表单打消了一些人。

这就是蜜罐技术的用武之地。它可以让你忽略反垃圾邮件插件不强迫用户填写验证码或通过其他跳火圈来填写表单。

这篇文章纯粹是为了帮助他人实现他们的网站上形成一个蜜罐陷阱。


更新:

因为我所有的客户的网站实施以下蜜罐,我们已经成功地阻止了99.5%,我们所有的垃圾邮件(千提交)。 对不使用“高级”部分中提到的技术,这将在不久后实现。

Answer 1:

概念

通过增加一个无形的场,以您的形式,只有收到反垃圾邮件插件可以看到,你可以欺骗他们泄露他们收到反垃圾邮件插件,而不是实际的最终用户。

HTML

<input type="checkbox" name="contact_me_by_fax_only" value="1" style="display:none !important" tabindex="-1" autocomplete="off">

在这里,我们有一个简单的复选框是:

  • 隐藏与CSS。
  • 有一个不起眼但很明显的假名字。
  • 具有等效默认值为0。
  • 不能填写自动完成
  • 无法通过Tab键导航到。 (见的TabIndex )

服务器端

在服务器端,我们要检查,看是否值存在,并且具有比0的值,如果是妥善处理这个问题。 这包括登录尝试,所有提交的领域。

在PHP它可能是这个样子:

$honeypot = FALSE;
if (!empty($_REQUEST['contact_me_by_fax_only']) && (bool) $_REQUEST['contact_me_by_fax_only'] == TRUE) {
    $honeypot = TRUE;
    log_spambot($_REQUEST);
    # treat as spambot
} else {
    # process as normal
}

倒退

这是日志的用武之地。在不知怎的你的用户最终被标记为垃圾邮件时,您的日志将帮助您恢复所有丢失的信息。 它也可以让你学习你的网站上运行的任何漫游,他们应该在未来进行修改,以绕过你的蜜罐。

报告

许多服务允许您通过API或通过上传列表报告已知垃圾邮件机器人的IP。 (如CloudFlare的 ),请帮助通过报告所有的垃圾邮件机器人和垃圾邮件的IP地址找到使因特网成为一个更安全的地方。

高级

如果你真的需要,严厉打击了更先进的垃圾邮件机器人,还有一些额外的东西,你可以这样做:

  • 隐藏蜜罐领域的纯粹与JS的不是纯CSS
  • 使用您不实际使用形态逼真输入名称。 (如“手机”或“网站”)
  • 包括蜜罐算法表单验证。 (大多数最终用户将只得到1个或2个字段错误;反垃圾邮件插件通常会得到大多数字段错误)
  • 使用像CloudFlare的一种服务,它可以自动阻止已知的垃圾邮件的IP
  • 有形式超时,防止即时发布。 (在页面加载3秒提交的形式通常是垃圾邮件)
  • 从张贴不止一次第二更防止任何IP。
  • 对于更多的想法看看这里: 如何创建一个“核”蜜罐赶上形式的垃圾邮件


Answer 2:

一个建议,真正迫使无自动完成:
改变autocomplete="off"通过autocomplete="nope" OR autocomplete="false"

由于给定的值不是一个有效的(用于值autocompleteonoff ),浏览器将停止尝试,以填补该领域。

有关详细信息, 如何关闭表格自动完成 。

希望这可以帮助。

SYA :)



Answer 3:

我们发现,在建议轻微的(虽然简单)的变化在这里取得联系表格蜜罐的有效性的巨大差异。 总之,隐藏字段更改为文本输入,使机器人认为这是一个密码。 事情是这样的:

<input type="text" name="a_password" style="display:none !important" tabindex="-1" autocomplete="off">

你会注意到这个模拟输入密码保持为复选框例如相同的基本准则。 是的,一个文字输入(而不是实际的密码输入),似乎工作得很好。

这显然是微小的变化导致垃圾邮件量大幅下降给我们。



文章来源: Better Honeypot Implementation (Form Anti-Spam)