从未被查看或激活的新用户

我正在追踪我们 Discourse 上涌入的大量垃圾账号。有大量(数百个!)近期创建的账号从未被“查看过”(Seen),也尚未“激活”(Activated)——这是怎么回事?他们是使用某种 API 创建账号吗?还是创建了账号但从未登录?这似乎是一个_非常强烈_的信号,表明这些账号是垃圾账号,但我不知道这具体意味着什么,也不知道我能否据此进行筛选并批量删除它们。

有没有界面可以查找并清除此类未查看和/或未激活的账号?或许这可以在经过一段较长的延迟后自动执行?

3 个赞

看起来有一种方法,我相信在若干天后会自动对未激活的账户执行此操作,该天数可以调整为更长或更短:

3 个赞

如果这是一波近期出现的集中注册,我猜大概是某种机器人……如今互联网上的大部分服务都会遭受频繁的机器人攻击……这些账户在激活之前都是无效的,所以我也不明白为什么有人要创建后又放弃它们。

有人创建了账户,但从未验证邮箱,因此无法登录。如果账户未激活,就永远不会产生 seen 记录。

Discourse 本质上就是一个大型 API,因此有人可以直接访问界面所使用的相同端点来创建账户。当然有可能实现自动化,不过想要快速创建大量账户,就得绕过速率限制。

在 admin/users/list/new 页面有一个“未激活”筛选器

从这里你可以点击表格头部头像上方的图标进入批量选择模式。如有需要,你可以通过这种方式删除账户。

默认情况下,Discourse 会在 14 天后自动删除这些账户,前提是他们没有任何帖子,相关站点设置为 purge_unactivated_users_grace_period_days。

如果你选中其中一个用户并进入其管理页面,还可以使用“IP 查询”按钮来查看与同一 IP 关联的账户。如果有多个账户关联,你会得到删除它们的选项:

你其实无需手动操作,可以依赖自动清理功能……但如果账户数量很多,或者有些账户被激活后用于发布垃圾内容,也许值得留意一下。

有没有什么规律?相同的地点?相同的 IP?相同的邮箱域名?如果发现某种特征,可以考虑增加更多防护措施。

5 个赞

谢谢 Kris!这对我来说不幸地也非常有帮助。我们刚也经历了一波明显是垃圾信息的新用户激增。自10月16日以来,共有268个用户从同一个IP地址注册,用户名都是“b”加上一串随机数字(如 b123456789)。

真不酷

1 个赞

我们也遇到了同样的情况……最近有 266 个账号来自 89.124.71.104

当我试图屏蔽其中一个账号时,图形界面允许我手动额外选择 10 个用户进行挂起,但并非全部。如果能提供一个“全选”按钮,而不是必须选择 10 个并重复 25 次,那就太好了。

除非已经有更好的批量挂起方法?

2 个赞

另一种解决方案可能是允许在此处“并删除所有来自同一 IP 的未确认账户”

2 个赞

算了……是我眼花了。有一个“全选”选项,可以一次删除100个用户。

我只是没看到显示用户旁边 [ ] 复选框的按钮。

3 个赞

有意思的是,那也是我账号背后的 IP 地址。

2 个赞

这些温和的浪潮是否可能来自与 Mastodon 刚才发生的情况类似的 OAuth 应用小玩意儿[1]?症状非常相似。


  1. 免责声明:显然,我完全不知道 OAuth 应用是如何工作的 ↩︎