我上周推出了我的第一个网络应用程序(后端使用node/express
,在Heroku
服务器上运行),但是在日志中已经看到了一些奇怪的注册行为。
起初我以为这是真正的用户,但它已经发生了足够多次并且有着相同的模式,因此可以明显地判断这是某种垃圾邮件机器人。
我的网站包含一个注册表单
,需要提供firstname
,lastname
,email
,password1
和password2
(必须匹配)。提交表单后,用户必须再点击一个按钮来选择他们想要注册的帐户类型,并向提供的电子邮件发送验证邮件。
在过去的几天里,我已经有了大约10个可疑的注册,浏览模式如下(以下是昨晚的两个例子):
timestamp page
04:48:45 viewBlogPage
04:48:47 registerUser
[ Send email for user to verify ]
04:48:54 sendResetToken
04:48:56 sendResetToken
04:48:58 getBlogPost
04:49:10 getBlogPost
04:49:12 getBlogPost
04:49:15 getBlogPost
04:49:15 getBlogPost
22:22:32 viewBlogPage
22:22:32 registerUser
[ Send email for user to verify ]
22:22:38 sendResetToken
22:22:39 sendResetToken
22:22:40 getBlogPost
22:22:41 getBlogPost
22:22:42 getBlogPost
22:22:42 getBlogPost
22:22:43 getBlogPost
在每种情况下,
用户
都必须执行以下操作:
- 导航到主要的博客页面(包含博客文章列表)
- 导航到注册页面,输入有效的
表单
数据并提交表单。在每种情况下,firstname
和lastname
都是无意义的,似乎是随机字符字符串(例如firstname: 'Iluuxpmv',lastname:'Yrtkaugn'
和firstname: 'Qatocgyp',lastname:'Hdfurawghgkqs'
) - 发送了一封未经验证的电子邮件
用户
然后导航到登录页面,并尝试在短时间内两次重置密码用户
然后导航到一个特定的博客文章五次
我的第一个问题是我该如何阻止这种行为?
但更广泛的是,我对为什么这些(可能是)机器人以这种奇怪的方式浏览我的网站感兴趣。
如果这是垃圾邮件机器人,那么它只发生了大约10次,而且他们点击的是不包含表单的非随机页面,这似乎很奇怪。
是否有一些解释可以帮助我防止这种情况的发生?