他为什么不用呢?我不明白。这能解决他的攻击问题。
那么,也许最好的地方是 Marketplace?
与其让“官方”插件出问题,不如让第三方插件出问题?
这永远不会是官方插件,如果 Jeff 今天认为需要的话,那只是我 GitHub 账户里的三行代码。
但这会破坏一批合法账户的邮件登录功能,包括我在 Gmail 上的邮件账户。
是的,但我不认为你会使用他的网站。
在战争状态下,一定数量的平民伤亡是可以接受的。那么,当每天要处理成千上万封带有“加号地址”的垃圾邮件时,如果有 2% 的用户无法注册,又算得了什么呢?这就像 Cloudflare 的“正在遭受攻击”模式一样,一些合法用户确实会被挡在门外。这是为了更严格的安全所必须付出的代价。
你的论点是,Cloudflare 的“正在遭受攻击”模式并不完美,因此它就不应该存在 ![]()
无论如何,在我采取行动之前,我需要再看到两起合法用户报告,证明这是一个大规模问题。
如果有什么明显的地方我忽略了,请原谅我,但在注册页面添加 reCAPTCHA 会不会更简单呢?
这些通常是人工垃圾信息发送者。与2010年相比,现在这类人的数量相当多。验证码对人工对手毫无作用。
好吧……我以为这种使用“gmail 点号”和“加号”的注册方式主要是由机器人完成的……
很多真实用户会使用 Sharklasers 等工具(这些工具使用此功能)注册我们的网站,因为他们不希望自己的用户名与现实生活中的身份关联。这会根据具体情况而定。
OP 可以将阅读时间设为 15 分钟作为发帖的信任要求,并规定前 5 篇帖子需由无编辑权限的工作人员审核,我敢打赌他的问题会立即消失。
有一件事我肯定想在此确认,那就是我们为账户注册设置了合理的速率限制。
单个 IP 地址每天应仅允许注册 N 个账户。但我们需要某种绕过机制或站点设置,以应对 NAT 导致大量用户共享同一 IP 的情况。
我倾向于将 . 规范化以适配 Google,但 +somthing 保持原样。因此,如果您打算这样做,或许可以让管理员自行选择他们想要的设置。
情况本来就是这样的……问题在于这是摩萨德。他们拥有大量可用的 IP 地址。
我注意到以下操作存在速率限制:
- 每小时邮箱登录
- 更新激活邮件
- 重发激活邮件
- 列出二次验证方式
- 启用 TOTP
- 管理员登录
目前未看到针对账号创建的具体速率限制,仅有基于 IP 的内置标准速率限制。
想请 @markersocial 安装数据浏览器,并列出“沼泽”中已注册用户的注册 IP 地址。我想确认这些用户是来自 100 个不同的 IP 地址,还是仅仅来自 1 个 IP。
我完全同意,但谷歌也面临这个问题。至少在我工作过的大学,由于所有访问都来自单一 NAT,无法让一个班级集体注册 Gmail。
我怀疑,NAT 白名单将解决大多数现实世界中的问题,因为合法用户的来源通常是可以预测的。
默认每天限制少量(或可配置)的 IP 数量,在我看来是相当安全的。
@sam - 关于 IP 地址,我确认自己确实使用了注册和登录的 IP 限制功能,并拥有一个庞大的被封禁 IP 列表。我可以向你保证,问题并非来自用户在相同 IP 上创建大量账户;如果是那样的话,我们就能轻松封禁。目前唯一能阻止他们的方法,就是将所有 Gmail 注册全部列入黑名单。
—
@codinghorror 有一种非非法的服务,每月只需支付 xxx 美元,即可为你提供 xx,xxx,xxx 个唯一的 IP 地址。因此,任何人都可以轻松获取大量 IP,而不仅仅是摩萨德
。此外,还有许多其他合法服务也提供庞大的 IP 池,当然也存在非法的“租用僵尸网络”服务。
我肯定会升级到最新版本,至少编写相关脚本会更加麻烦,因为我的最新挑战/蜜罐有所调整。
另外,请在此定期发布更新,以便我们了解更多。
目前还在进行中吗?
非常感谢 @sam,抱歉我还没跟进此事。
是的,使用这个技巧(2.5.0.beta1)创建大量账户仍然相当可行。
例如,利用用户名+{随机字符串}@gmail.com 的技巧,有人在最近 10 小时内创建了 748 个账户。他们仅凭这一个 Gmail 地址就已经拥有了数千个账户。
对我来说,要从管理后台移除这些账户,几乎只能通过逐个访问每个账户进行暂停和/或删除。这并不太可行,因为对方几乎可以按一下按钮就创建更多账户。![]()
他们似乎拥有无限的 IP 资源,因此在这种情况下,IP 封禁或限制几乎毫无作用。
此外,使用 Gmail 的点号和加号技巧进行的注册仍然非常频繁。
祝好!
我支持添加一个站点设置 @codinghorror,用于禁用重复 Gmail 账户支持。从技术上讲,添加该设置只需 15-30 分钟。
谢谢 @sam——我给您发了一条私信,其中包含一些可能有帮助的额外信息~
多年来,我在这方面的广泛经验表明,大多数自动垃圾邮件机器人(并非全部,但绝大多数)使用相同的 ‘HTTP_USER_AGENT’ 字符串。即使一些能够伪造 IP 地址的垃圾邮件机器人,也常常使用相同的 ‘HTTP_USER_AGENT’(或者使用一些明显虚假、易于检测的值)。
原因在于,大多数轰炸者和垃圾邮件发送者只是下载一些垃圾邮件机器人软件并运行它,并不真正了解自己在做什么。当然,确实存在例外情况,但 99% 以上的垃圾邮件机器人只是由不太精通技术的垃圾邮件发送者下载并运行的脚本或程序(总体而言,他们并非编程高手)。
事实上,这些 ‘HTTP_USER_AGENT’ 字符串有时非常明显。当然,理论上任何事物都可能被绕过,但在我们论坛几十年的实践中,我们几乎没有遇到垃圾邮件问题(与其他论坛相比)。这是因为我们根据多种标准对电子邮件地址进行评分,并直接拒绝那些明显可疑的地址(我们不对它们进行人工审核;当评分超过某个阈值(置信度水平)时,我们直接拒绝注册,因为谁愿意去审核庞大的垃圾邮件数据库呢?没人愿意)。此外,出于诸多原因,我们多年来一直不使用 Akismet,但我不想在这个话题上跑题 ![]()
不过,在我们旧的 vB 论坛上,这一切都可以通过一个 PHP 插件轻松实现,该插件非常容易修改,并能实时“打一场正义之战”。我们曾使用过贝叶斯分类器,但多年来我找到了更好的方法。我们还使用过 Cookie,只允许那些已接受 Cookie 政策(并根据我们的隐私政策启用 Cookie)的客户端进行注册;当然,我们可以在用户注册后读取 Cookie,并利用它来检测多次登录。坦白说,这能阻止大多数垃圾邮件机器人。这并非什么高深莫测的技术,而且通常也“不仅仅基于 IP 地址”,坦率地说。
另外,供参考:大多数垃圾邮件机器人根本不接受 Cookie,因此只需阻止那些不允许 Cookie 的客户端,就能起到很大作用。
我并非想显得过于“聪明”,但我从事这项工作已超过二十年,曾就该主题发表过学术论文,在这个领域进行过实时网络战,并在实时网络防御和反垃圾邮件技术方面拥有近二十年的经验,所以我确实知道自己在说什么;因此,如果此类功能目前不可用、尚未计划,或难以轻松集成到 Discourse 应用中,请不要过于严厉地直接屏蔽我的回复,谢谢。
让我们包容所有人,尤其是那些愿意帮助用户的专家。
祝好。
……30 秒后……
![]()