Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add basic checks for bot activity on form #48

Merged
merged 2 commits into from
Jul 5, 2022
Merged

Conversation

ccali11
Copy link
Contributor

@ccali11 ccali11 commented Jun 24, 2022

@shanejearley Here are the methods I've employed to deter bot sign-ups:

  • Standard email validation using regex - needs to end in @something.something, for example
  • Hidden <input> "bot trap" - some bots will fill out this input notifying us it is spam while real users will never see it
  • "Time analysis" - rejects the email if submitted less than 3 seconds from landing on the web page
  • Email Address Length - if shorter than 5 characters or longer than 100 characters, we reject the email

Check out this article that I drew inspiration from and let me know if you think we should employ any of the other techniques. The other ones I'd consider are:

  • Adding a ReCaptcha - although when I started down that path it looked like it was for GCP projects only; could be wrong about that. Will investigate further if you think this is worth the slight drawback to user experience. I think there are other "open source" options that we could potentially use as well.
  • Double Opt-In - may be more trouble than it is worth, but open to doing this

The ones I didn't understand, which could be helpful to hear your interpretation of:

  • 6. Hide Target Requests
  • 10. Beware of Cross-Site Request Forgery (CSRF)

Submitting PR now (copying and pasting this comment from my comment made in issue #33 thread for your convenience)

apps/website/src/pages/index/index.vue Show resolved Hide resolved
apps/website/src/pages/index/index.vue Outdated Show resolved Hide resolved
@shanejearley
Copy link
Contributor

@shanejearley Here are the methods I've employed to deter bot sign-ups:

  • Standard email validation using regex - needs to end in @something.something, for example
  • Hidden <input> "bot trap" - some bots will fill out this input notifying us it is spam while real users will never see it
  • "Time analysis" - rejects the email if submitted less than 3 seconds from landing on the web page
  • Email Address Length - if shorter than 5 characters or longer than 100 characters, we reject the email

Check out this article that I drew inspiration from and let me know if you think we should employ any of the other techniques. The other ones I'd consider are:

@ccali11 could you share the link? ^ Sounds good.

  • Adding a ReCaptcha - although when I started down that path it looked like it was for GCP projects only; could be wrong about that. Will investigate further if you think this is worth the slight drawback to user experience. I think there are other "open source" options that we could potentially use as well.
  • Double Opt-In - may be more trouble than it is worth, but open to doing this

The ones I didn't understand, which could be helpful to hear your interpretation of:

  • 6. Hide Target Requests
  • 10. Beware of Cross-Site Request Forgery (CSRF)

Submitting PR now (copying and pasting this comment from my comment made in issue #33 thread for your convenience)

@ccali11
Copy link
Contributor Author

ccali11 commented Jul 5, 2022

@shanejearley - I updated my initial PR comments with the article about ways to deter bots I referenced that I forgot to share link: #48 (comment)

@ccali11 ccali11 merged commit 45e8b37 into develop Jul 5, 2022
@ccali11 ccali11 deleted the feature/bot-checking branch July 5, 2022 14:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants