Today, a bunch of new instances appeared in the top of the user count list. It appears that these instances are all being bombarded by bot sign-ups.

For now, it seems that the bots are especially targeting instances that have:

  • Open sign-ups
  • No captcha
  • No e-mail verification

I have put together a spreadsheet of some of the most suspicious cases here.

If this is affecting you, I would highly recommend considering one of the following options:

  1. Close sign-ups entirely
  2. Only allow sign-ups with applications
  3. Enable e-mail verification + captcha for sign-ups

Additionally, I would recommend pre-emptively banning as many bot accounts as possible, before they start posting spam!

Please comment below if you have any questions or anything useful to add.


Update: on lemm.ee, I have defederated the most suspicious spambot-infested instances.

To clarify: this means small instances with an unnaturally fast explosion in user counts over the past day and very little organic activity. I plan to federate again if any of these instances get cleaned up. I have heard that other instances are planning (or already doing) this as well.

It’s not a decision I took lightly, but I think protecting users from spam is a very important task for admins. Full info here: https://lemm.ee/post/197715

If you’re an admin of an instance that’s defederated from lemm.ee but wish to DM me, you can find me on Matrix: @sunaurus:matrix.org

  • Somoon@lemmy.sumuun.net
    link
    fedilink
    arrow-up
    2
    ·
    edit-2
    1 year ago

    It was brought to my attention that my instance was hit with the spam bots regs. I’ve disabled registration and deleted the accounts from the DB. is there anything else I can do to clear the user stats on the sidebar? EDIT: I have reversed the stats too.

    • sunaurus@lemm.eeOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      You can do this by updating site_aggregates.users in your database (WHERE site_id = 1)

  • Wander@yiffit.net
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    99% of fedi instances should require sign-ups with applications and email. It does not make sense to let in users indiscriminately unless you have a 24h staff in charge of moderation.

    • Email verification + captcha should be enough. The application part is cringe and a bad idea, unless you really want to be your own small high school clique and don’t have any growth ambitions, which is perfectly fine but again should not be expected from general instances looking to welcome Redditors.

  • fax@lemm.ee
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    had to create an account to post since my comments from sffa.community and kbin.social weren’t showing up.

    I’m an admin over at sffa.community. We did notice the bot wave. They never got past email verification. We hve since implemented CAPTCHA and have purged the bots from our database.

    You can see we are down to organic users. We’ve only been officially open for a couple weeks so we’re still working on content but we are safe to federate with again, if you’d like.

  • BigDale123@lemmy.coeus.icu
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    1 year ago

    Any tips on how to get rid of all the spam accounts? I have been affected by this as well and thankfully captcha stopped them, but about 100 bots signed up before I could stop.

    Normally i’d just look through all the accounts and pick out the 4 or so users that are real. But there is no apparent way to view every user account as an admin.

    Edit: There is a relevant issue open on the lemmy-ui repo, for those interested: https://github.com/LemmyNet/lemmy-ui/issues/456

    • sunaurus@lemm.eeOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Did you figure out how to clean it up? You can see a list of users in your local_user table.

      • BigDale123@lemmy.coeus.icu
        link
        fedilink
        arrow-up
        0
        ·
        edit-2
        1 year ago

        I did manage to get a list of all users without a verified email using a postgress command, but sadly no, I can not figure out how to use the PurgePerson or AdminPurgePerson endpoints that are “described” in the documentation. I ended up just writing a small python script to ban all of them for now until I can figure out how to purge them.

        It’s extra tough because user management in Lemmy is tied to posts and comments right now. Since none of the spam accounts have made posts, there’s no way in the UI to purge their accounts.

  • tal@kbin.social
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    I suspect that there’s going to need to be some analysis software that can run on the kbin and lemmy server logs looking for suspicious stuff.

    Say, for instance, a ton of accounts come from one IP. That’s not a guarantee that they’re malicious – like, could be some institution that NATs connections or something. But it’s probably worth at least looking at, and if someone signed up 50 accounts from a single IP, that’s probably at least worth red-flagging to see if they’re actually acting like a normal account. Especially if the email provider is identical (i.e. they’re all from one domain).

    Might also want to have some kind of clearinghouse for sharing information among instance admins about abuse cases.

    One other point:

    I would recommend pre-emptively banning as many bot accounts as possible,

    A bot is not intrinsically a bad thing. For example, I was suggesting yesterday that it would be neat if there was a bot running that posted equivalent nitter.net links in response to comments providing twitter.com links, for people who want to use those. There were a number of legitimately-helpful bots that ran on Reddit – I personally got a kick out of the haiku bot, that mentioned to a user when their comment was a haiku – and legitimately-helpful bots that run on IRC.

    Though perhaps it would be a good idea to either adopt a convention ("bots must end in “Bot”) or have some other way for bots to disclose that they are bots and provide contact information for a human, in case they malfunction and start causing problems.

    But if someone is signing up hordes of them, then, yeah, that’s probably not a good actor. Shouldn’t need a ton of accounts for any legit reason.

  • Zamboniman@lemmy.ca
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    Today, a bunch of new instances appeared in the top of the user count list. It appears that these instances are all being bombarded by bot sign-ups.

    Yup, I noticed this as well.

    Hopefully the mods of the instances will notice this and remove these accounts quickly! Despite this, I think the mods of all instances, and of all communities, had better brace themselves for incoming spam and hate speech.

  • Lvxferre@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    This might be related but I’ve noticed that someone is [likely automatically] following my posts and downvoting them. Kind of funny in a 'verse without karma.

      • Lvxferre@lemmy.ml
        link
        fedilink
        arrow-up
        2
        ·
        1 year ago

        I don’t think it’s the case here, as I’ve noticed this after posts in small communities:

        • c/linguistics (~240 members)
        • c/parana (1 member - new comm)

        I think that the person/bot/whatever is following specific people.

  • rm_dash_r_star@lemm.ee
    link
    fedilink
    arrow-up
    1
    ·
    1 year ago

    I know from talking to admins when pbpBB was really popular that fighting spammers and unsavory bots was the big workload in running a forum. I’d expect the same for Fediverse instances. I hope a system can be worked out to make it manageable.

    As a user I don’t have a big problem with mechanisms like applications for the sake of spam control. It’s hugely more convenient when an account can be created instantaneously, but I understand the need.

    I do wonder how the fediverse is going to deal with self-hosting bad actors. I would think some kind of vetting process for federation would need to exist. I suppose you could rely on each admin to deal with that locally, but that does not sound like an efficient or particularly effective solution.

    • sunaurus@lemm.eeOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Nice! Would be cool if you could also include current statuses of captchas, emails, and application requirements.

        • sunaurus@lemm.eeOP
          link
          fedilink
          arrow-up
          1
          ·
          1 year ago

          I think the easiest option is to just iterate through the list of suspicious instances, and then check {instance_url}/api/v3/site for each of them. Relevant keys of the response json are site_view.local_site.captcha_enabled, site_view.local_site.registration_mode, and site_view.local_site.require_email_verification.

          Since it’s a bunch of separate requests, probably it makes sense to do these in parallel and probably also to cache the results at least for a while.

          • db0@lemmy.dbzer0.com
            link
            fedilink
            arrow-up
            2
            ·
            1 year ago

            It occurs to me that this kind of thing is better left to observer, as it’s set up to poll instances and gather data. I would suggest you ask them to ingest and expose this data as well

  • freeskier@centennialstate.social
    link
    fedilink
    arrow-up
    0
    ·
    edit-2
    1 year ago

    Looks like my instance got hit with a bot. I had email verification enabled but had missed turning on captcha (captcha enable should be up with enabling email verification settings). The bot used fake emails so none of the accounts are verified, but still goes towards account numbers. Is there really any good way to clean this up? Need a way to purge unverified accounts or something.

    • sunaurus@lemm.eeOP
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      How comfortable are you with SQL? You can see all unused verifications in the email_verification table. You should be able to just delete those users from local_user, and then update your user count with the new count of the local_user table in site_aggregates.user (where site_id = 1)

      • voldern@lemmy.ml
        link
        fedilink
        arrow-up
        4
        ·
        1 year ago

        Thank you for proactively contacting me regarding this @sunaurus@lemm.ee. I’ve had this issue on my https://feddi.no instance, but I have added a captcha and registration applications now. Hopefully it will alleviate some of the problem.

        All of the bots accounts seems to have a number in their email so I manually looked through the list of users in email_verification that contained numbers in the email to look for false positives:

        select * from email_verification where email ~ '[0-9]+';

        before running

        delete from local_user where id in (select local_user_id from email_verification);

        to delete the users.

        By suggestion from @sunaurus@lemm.ee I updated site_aggregates to reflect the new users count on the instance:

        UPDATE site_aggregates SET users = (SELECT count(*) FROM local_user) WHERE site_id = 1;.