PSA: Lemmy votes can be manipulated

The best part of the fediverse is that anyone can run their own server. The downside of this is that anyone can easily create hordes of fake accounts, as I will now demonstrate.

Fighting fake accounts is hard and most implementations do not currently have an effective way of filtering out fake accounts. I’m sure that the developers will step in if this becomes a bigger problem. Until then, remember that votes are just a number.

Hannah789,

This blog post is fantastic! It’s packed with valuable insights and actionable advice. Thanks for sharing such an informative and well-written article. buy Linkedin Connections

Rearsays,

I would imagine this is the same with bans I imagine there will be a future reputation watchdog set of servers which might be used over this whole everyone follows the same modlog. The concept of trust everyone out of the gate seems a little naive

krnl386,
@krnl386@lemmy.ca avatar

Did anyone ever claim that the Fediverse is somehow a solution for the bot/fake vote or even brigading problem?

JakeHimself,

I think the point is that the Fediverse is severely limited by this vulnerability. It’s not supposed to solve that specific problem, but that problem might need to be addressed if we want the Fediverse to be able to do what we want it to do (put the power back in the hands of the users)

krnl386,
@krnl386@lemmy.ca avatar

I see your point… votes from a compromised instance (or instances) and such. How is this more or less vulnerable to a centralized model?

JakeHimself,

I’m not a security expert by any means, though I would imagine this type of attack can more be more easily made harder to execute if all accounts have to go through one server first. Lemmy seems to be as strong as the weakest link in this regard, but a centralized model is just a single link. I imagine that any effective strategy that works for Lemmy is much easier on a centralized platforms, even though the reverse statement isn’t true.

That said, I’m optimistic that this gets figured out. Centralized platforms have had decades to solve this problem and we’re just getting started.

cypherpunks,
@cypherpunks@lemmy.ml avatar
k_o_t,
@k_o_t@lemmy.ml avatar

💀😂

howdy,
@howdy@thesimplecorner.org avatar

There’s a reason everyone comes to my saloon…

stevedidWHAT,
@stevedidWHAT@lemmy.world avatar

You mean to tell me that copying the exact same system that Reddit was using and couldn’t keep bots out of is still vuln to bots? Wild

Until we find a smarter way or at least a different way to rank/filter content, we’re going to be stuck in this same boat.

Who’s to say I don’t create a community of real people who are devoted to manipulating votes? What’s the difference?

The issue at hand is the post ranking system/karma itself. But we’re prolly gonna be focusing on infosec going forward given what just happened

daguito81,

What did I miss?

ki77erb,

Last night a hacker(s) used an exploit to manipulate the content on multiple instances including lemmy.world.

fermuch,
@fermuch@lemmy.ml avatar

Votes were just a number on reddit too… There was no magic behind them, and as Spez showed us multiple times: even reddit modified counts to make some posts tell something different.

And remember: reddit used to have a horde of bots just to become popular.

Everything on the internet is or can be fake!

driving_crooner,
@driving_crooner@lemmy.eco.br avatar

Everyone forgot how he and his wife announced their marriage in a subreddit nobody knew about that suddenly rise up to the first place on r/all.

oatscoop,
ahriboy,
@ahriboy@lemmy.dbzer0.com avatar

reddit used to have a horde of bots just to become popular

Since the launch back in 2005.

skullgiver, (edited )
@skullgiver@popplesburger.hilciferous.nl avatar

deleted_by_author

  • Loading...
  • figaro,

    This man is over 100 years old

    hollunder,

    The only real early adopter

    garam,
    @garam@lemmy.my.id avatar

    Even older than the project itself. Nice… The alfa… The first, the only one

    Rozz,

    Happy centennial cake day

    Noughmad,

    I’ve set the registration date on my account back 100 years just to show how easy it is to manipulate Lemmy when you run your own server.

    That’s exactly what a vampire that was here 100 years ago would say.

    plo,

    If it becomes too big of a problem, instances will whitelist the most popular instances instead of trying to blacklist all the bad ones.

    Laksefar,
    @Laksefar@feddit.dk avatar

    How would that work? How will new instances/servers ever get a chance to grow if the fediverse only allowed those who are already whitelisted? Sorry for my limited knowledge about fediverse but it sounds like that goes directly against the base principle of a federated space?

    fulano,

    It goes against the base principle, but, at the same time, is something quite possible to happen if things get out of control. Decentralization is complex, and brings several challenges for everyone to face.

    pingveno,

    I wonder if there’s a machine learning technique that can be used to detect bot-laden instances.

    IverCoder,
    @IverCoder@lemmy.world avatar

    ChatGPT or something, the problem is how can we train it to detect instances faking its busyness and interactions

    stevedidWHAT,
    @stevedidWHAT@lemmy.world avatar

    Chatgpt is for chatting, you’re talking about regular ol machine learning. I imagine you could use one of OpenAIs other ai models that support data insights rather than simple text generation

    rockyrikoko,

    Assuming a users upvote history or karma ever meant anything, this demonstrates perfectly it’s useless on Lemmy.

    gthutbwdy,

    I think people often forget federation is not a new thing, it’s a first design for internet communication services. Email, which is predating the Internet, is also federated network and most popular widely adopted of them all modes of Internet communication. It also had spam issues and there where many solutions for that case.

    The one I liked the most was hashcash, since it requires not trust. It’s the first proof-of-work system and it was an inspiration to blockchains.

    zumi,

    I don’t know what the answer is, but I hope it is something more environmentally friendly than burning cash on electricity. I wonder if there could be some way to prove time spent but not CPU.

    garam,
    @garam@lemmy.my.id avatar

    Now days email spam filter especially proprietary from Google or Verizon yahoo really make indie mail server harder to maintain and always got labeled as spam even with DKIM, dmarc, right spf, and clean reputable public IP

    thoralf,
    @thoralf@discuss.tchncs.de avatar

    People may not like it but a reputation system could solve this. Yes, it’s not the ultimate weapon and can surely be abused itself.

    But it could help to prevent something like this.

    How could it work? Well, each server could retain a reputation score for each user it knows. Every up- or downvote is then modified by this value.

    This will not solve the issue entirely, but will make it less easy to abuse.

    patatahooligan,
    @patatahooligan@lemmy.world avatar

    Ok, but what would the reputation score be based on that can’t be manipulated or faked?

    badcommandorfilename,

    Well, you see Kif, my strategy is so simple an idiot could have devised it: reputation is adjusted by “votes” so that other users can up or downvote another.

    Thus solving the problem, once and for all.

    patatahooligan,
    @patatahooligan@lemmy.world avatar

    I’m assuming this is a joke based on the Futurama references you used, but just to be clear for everyone: this won’t work because it simply moves the problem one step further. How do you prevent bots from upvoting other bots to build a reputation?

    Hazzia,

    It’s okay buddy, I understood your joke.

    thoralf,
    @thoralf@discuss.tchncs.de avatar

    As mentioned: It’s not the silver bullet solution but something that raises the bar for abuse. The reputational score is build up over time on the specific server based on the up- and downvotes you received.

    So, yes, this can be abused itself as well - but it requires a lot more effort.

    deadsuperhero,
    @deadsuperhero@lemmy.ml avatar

    Honestly, thank you for demonstrating a clear limitation of how things currently work. Lemmy (and Kbin) probably should look into internal rate limiting on posts to avoid this.

    I’m a bit naive on the subject, but perhaps there’s a way to detect “over x amount of votes from over x amount of users from this instance”? and basically invalidate them?

    jochem,

    How do you differentiate between a small instance where 10 votes would already be suspicious vs a large instance such as lemmy.world, where 10 would be normal?

    I don’t think instances publish how many users they have and it’s not reliable anyway, since you can easily fudge those numbers.

    deadsuperhero,
    @deadsuperhero@lemmy.ml avatar

    10 votes within a minute of each other is probably normal. 10 votes all at once, or microseconds of each other, is statistically less likely to happen.

    I won’t pretend to be an expert on the subject, but it seems like it’s mathematically possible to set some kind of threshold? If a set percent of users from an instance are all interacting microseconds from each other on one post locally, that ought to trigger a flag.

    Not all instances advertise their user counts accurately, but they’re nevertheless reflected through a NodeInfo endpoint.

    CybranM,

    Surely the bot server can just set up a random delay between upvotes to circumvent that sort of detection

    Flashoflight,

    This is really important to call out. Also though the bots have gotten so good it would be hard to tell the difference. To be honest though I’m pretty sure reddit was teeming withing them and it didn’t really bother me. lol

    nekat_emanresu,

    I have strong feelings about reddit being infested with bots too. And because reddit could, there’s no reason lemmy doesn’t have the same issue.

    it didn’t really bother me

    Bot armies could have hidden things from you that would bother you deeply, but because it’s hidden, you don’t have a chance to be bothered.

    Robust_Mirror,

    Ignorance is bliss?

    7heo, (edited )

    expired

    nekat_emanresu,

    Interesting idea.

    SQL_InjectMe,

    Small instances are cheap, so we need a way to prevent 100 bot instances running on the same server from gaming this too

    7heo, (edited )

    expired

    TheGreatHerald,

    This could become a problem on posts only relevant on one server, like community voting or updates on server issues. Such content would become very hidden.

    kolorafa,

    This would be rather to detect and alert admin of a bad actors (instances) and then admin can kick it off from federation same for other tupe of offences.

    7heo,

    This could become a problem on posts only relevant on one server

    Obviously, on the server the posts are from, you display the full vote count. There, the admins know the accounts, can vet them, etc.

    Wander,
    @Wander@yiffit.net avatar

    In case anyone’s wondering this is what we instance admins can see in the database. In this case it’s an obvious example, but this can be used to detect patterns of vote manipulation.

    https://yiffit.net/pictrs/image/d97d72ef-007a-48bf-b2ad-164416ce2d1b.png

    toish,
    @toish@yiffit.net avatar

    “Shill” is a rather on-the-nose choice for a name to iterate with haha

    Evergreen5970, (edited )

    I appreciate it, good for demonstration and just tickles my funny bone for some reason. I will be delighted if this user gets to 100,000 upvotes—one for every possible iteration of shill#####.

    thanks_shakey_snake,

    Oh cool 👀 What’s the rest of that table? Is the actor_id one column in like… an upvotes table or something?

    Wander,
    @Wander@yiffit.net avatar

    actor_id is just the full url of an user. It has the username at the end. That’s why I have censored it.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • random
  • uselessserver093
  • Food
  • aaaaaaacccccccce
  • [email protected]
  • test
  • CafeMeta
  • testmag
  • MUD
  • RhythmGameZone
  • RSS
  • dabs
  • Socialism
  • KbinCafe
  • TheResearchGuardian
  • oklahoma
  • feritale
  • SuperSentai
  • KamenRider
  • All magazines