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

Make Discord more spam resistant #16

Closed
xaur opened this issue Dec 12, 2018 · 20 comments
Closed

Make Discord more spam resistant #16

xaur opened this issue Dec 12, 2018 · 20 comments
Labels
comms Anything related to communication infrastructure security Anything that contributes to security of the network or users.

Comments

@xaur
Copy link
Collaborator

xaur commented Dec 12, 2018

Lot's of spam is coming from Discord.

One of the measures suggested was to manually grant users permission to post messages in a special guest room.

@ghost
Copy link

ghost commented Jan 3, 2019

The problem as described in the title has led to calls for decommissioning/un-bridging of discord. I think a better solution exists.

The solution

Discord comes with much better moderation tools than slack as it is designed to host a public community. Here are some of the steps we can take to alleviate the problem.

  • First step should be to appoint moderators (volunteers are welcome) who can manually ban and clean up messages. Moderators will also be needed for steps mentioned below. Also it will be great to have a server admin/owner to be appointed who is a regular online member and experienced in this role.

  • Second step would be to use basic moderation settings (image below) to curtail members with unverified emails or those who have new accounts. This can cut down the bot attacks significantly in my opinion.

Basic Moderation Settings

  • Third step is to utilize “User Roles” in Discord to curtail what users can do immediately after joining the server. Below are some of the settings that can be disabled by default.

User Settings 1

User Settings 2

Users can also be prevented from joining voice chat if needed.

User Settings 3

  • Fourth step is to create a “Verified” user role which will be enabled for an account by a moderator when
    • A user sets a profile pic
    • Asks to be verified by a mod.

This can be done by creating following channels

  • welcome – read only channel instructing people how to enable more functions for themselves, e.g. instruction to check verification email, setting up profile pic and asking for verification in check-post channel
  • check-post – This will be the channel where people can ask for getting verified user role by a moderator. It will be only channel with permission to post or visible to unverified users. It can be rate limited to a post every 2 mins.

With above settings and enough moderators, we can reduce almost all the bots and spam from discord. Many crypto communities are already using similar model to effectively keep their servers free of bots.

What I can do

  • I can do all the setup as described above if granted proper permissions or can work with a moderator/admin if they need my help. Done!
  • I am also willing to be one of the moderators to get this plan going. Already Done. Thanks!

What I need help with

  • More moderators to join in so that all channels can be monitored and users can be verified all the time across different time zones. Done. old mods are all happy to help!
  • A community member who is regularly online to become admin so that moderators can be added/removed and other admin functions be handled. So far Haon and me are doing this. Thanks to him for all the help and being a bridge!
  • Someone who can test the bridge and other integrations like twitter bot are not broken when enabling theses settings. Everything seems to be working as expected. Didn't get much help but luckily nothing broke down.

Any suggestions on how to proceed and inform current discord users with minimum disruption are welcome. Also, any suggestions on details of what settings to use are welcome.

@xaur
Copy link
Collaborator Author

xaur commented Jan 3, 2019

Excellent plan, thank you @sambiohazard . Forwarded this to right people.

@xaur xaur added the comms Anything related to communication infrastructure label Jan 3, 2019
@ghost
Copy link

ghost commented Jan 3, 2019

Update: First two steps are now implemented

  • We now have at least 2-3 mods present at a time. This seems good enough for now, might need more mods present if Verified user role is required in future.
  • Upped verification level to Low, which requires user to have a verified email id associated with the discord account, in order post messages. Bridge seems to be working fine, monitoring if anyone reports any problems.

Further steps to increase engagement

  • Going to create a welcome channel with instructions to verify email, basic rules and general description of different channels. UPDATE: wrote something for welcome channel, comments/suggestions needed: https://gist.github.com/sambiohazard/087114e4dd729980b973b6ba4838893c
  • Probably will move join messages from general channel to a new channel/maybe disable them/move to check-post channel if verification is implemented. These clutter the discussion if lots of people join at a time.

UPDATE: All of this is done, further update in comment below.

@xaur
Copy link
Collaborator Author

xaur commented Jan 4, 2019

Related discussion.

@xaur xaur added active security Anything that contributes to security of the network or users. labels Jan 4, 2019
@ghost
Copy link

ghost commented Jan 7, 2019

So the full setup with User Roles and increased moderation is now in place. If anyone is interested in details of User Roles, see this: https://gist.github.com/sambiohazard/b99a1f6b2c0f942825d21a29a05b6f16

We are now monitoring the situation and verifying people as they ask. As of time of this comment 62 members asked for verification and were verified by moderators. There are ~150-200 members (all roles included) who are online and overall 2000+ members on discord server. Response seems lukewarm but overall reaction seems positive to new setup. People are trickling in for verification.

I have been given target of 1 spam message per week to consider this setup a success. So far we are on track for this week since i became admin/mod for discord (Jan 03, 2018). One slipped thru as verification was not in place by then.

So far 0 spam since activation of verification system (~24 hour).

I hope this works. Thanks for the opportunity to "Make discord great again!"
I will keep updating this as weeks go by.

@xaur
Copy link
Collaborator Author

xaur commented Jan 7, 2019

Thanks for improving our comms!

Question re the gist: why allow unverified users to add reactions? Can't it be abused by fake account to make some opinion look popular?

@ghost
Copy link

ghost commented Jan 8, 2019

Fair point, didn't think about it. I will disable that for everyone role. Indeed it might be used more if we dont verify someone as that is the only thing they can do other than reading channels. Thanks!
UPDATE: Although i don't think that it can be used to manipulate opinions as emojis don't cross through platforms but it is another kind of spam in itself.

@ghost
Copy link

ghost commented Jan 13, 2019

Week 1 Update:

  • There was no spam from a bot for first week of verification system. Additionally we didn't see any trolls either, which is a plus.

  • 85 members asked for verification and were verified. There are 20-30 verified members online on average and 150-180 in total. It was a dull start but we got some activity going as week went by.

  • Total number of members is at 2078.

I will consider this a success for first week. Thanks to all the other mods/admins (Exitus, yasabi & cryptoHaag) and once again Haon and bee for their support!

@xaur
Copy link
Collaborator Author

xaur commented Jan 13, 2019

Great news, thank you for the update!

Are all existing users going through manual approval for permission to post? If so, do I read right that of 2078 users <180 asked for it?

  • test

@xaur
Copy link
Collaborator Author

xaur commented Jan 13, 2019

Yah it worked, so the tip: instead of striking out completed items you can use checkboxes: - [ ] item. This preserves readability of the items.

@oregonisaac
Copy link

Well done! Excited it's more functional out there now!

@xaur
Copy link
Collaborator Author

xaur commented Jan 16, 2019

In addition to earlier question, @sambiohazard is it possible to notify/ask new users to not use message edits?

@ghost
Copy link

ghost commented Jan 17, 2019

Great news, thank you for the update!

Are all existing users going through manual approval for permission to post? If so, do I read right that of 2078 users <180 asked for it?

  • test

No only 85 members asked for verification (close to 100 now), 150-180 are total online (verified + unverified) and 2078 are total members who joined and were not kicked or banned.

@ghost
Copy link

ghost commented Jan 17, 2019

i can add a request to avoid editing in welcome channel and do an announcement with everyone tag, but there is no setting for disabling editing. will also suggest how to correct without editing. I hope we can find a better bridging s/w.

UPDATE: did an announcement and added below to welcome post

DoNotEditAnn

@ghost
Copy link

ghost commented Jan 21, 2019

Week 2 Update:

  • There was no spam from a bot for second week of verification system as well. No trolls either.

  • 97(+12) members asked for verification and were verified. There are 20-30 verified members online on average and 150-180 in total. Luke warm response and activity but i guess once more channels are bridged it will improve.

  • Total number of members is at 2087(+9).

Success for second week as well. yasabi was removed as mod, i wasn't told and i do not agree with the reason either. We introduced a new mod in @elian, thanks to him and all the other mods.

@xaur
Copy link
Collaborator Author

xaur commented Jan 22, 2019

Any plans for bridging more channels? Roll by one (starting with most important) or bridge all at once? Now or later when more users get verified?

@ghost
Copy link

ghost commented Jan 22, 2019

Lets watch this for 2 more weeks, which will make it a month of testing for new system. After that i will open an issue here and list channels that would be good to have bridged for increasing engagement. Right now i know at least 4 people who went back to slack/matrix because of lack of channels like proposals, poleteia or writer's room.
p.s. it would be good to have a tweet from official twitter or from known contributors to get more exposure about improvement to discord and test new system with more people coming in.

@ghost
Copy link

ghost commented Jan 29, 2019

Week 3 Update:

  • There was no spam from a bot for third week of verification system as well. No trolls either.

  • 115(+18) members asked for verification and were verified since implementation of system. There are 25-30 verified members online on average and 180-200 in total.

  • Total number of members is at 2127(+40).

  • A group of 20-30 bots joined with similar names, all were stopped in verification channel although they didn't try to post. No complaints of DM spam either.

Success for third week as well.

@ghost
Copy link

ghost commented Feb 5, 2019

I think we can consider this issue resolved and close it. No spam for almost a month and multiple new channels bridged to discord. Thanks everyone for the work and support

@xaur
Copy link
Collaborator Author

xaur commented Feb 6, 2019

Great work @sambiohazard, thank you! Closing.

@xaur xaur closed this as completed Feb 6, 2019
@xaur xaur removed the active label Feb 19, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
comms Anything related to communication infrastructure security Anything that contributes to security of the network or users.
Projects
None yet
Development

No branches or pull requests

2 participants