cross-posted from: https://sh.itjust.works/post/923025
lemmy.world is a victim of an XSS attack right now and the hacker simply injected a JavaScript redirection into the sidebar.
It appears the Lemmy backend does not escape HTML in the main sidebar. Not sure if this is also true for community sidebars.
This has nothing to do with XSS, it is a simple HTML injection vulnerability, and it can only be exploited by instance admins.
Also Lemmy.world appears to have been running a custom frontend so it’s hard to say how widespread the affects of this are.
You seem to be following the situation closely. Could you please DM me on Matrix?
Worst case scenario, they can steal your Lemmy session, right?
Which isn’t super bad for a service like Lemmy. This isn’t a social network, so most contact list scams would be useless.
Edit: just read the targets were admins. That IS bad.
Lemmy isn’t a social network? Seems to be one to me.
I mean, not in the traditional sense. You don’t have your family and friends as Lemmy contacts and share posts with them. It’s more anonymous.
So, as an average, less-technical, Lemmy user (this is my backup for now).
What can or should I do to stay safe?https://lemmy.world/post/1290412?scrollToComments=true
The affected instances are coming back and the vulnerability being mitigated. Apparently no personal data was compromised. So you should be fine.
Id use an app you trust for now
On a site you have to sanitize your data, on a native app you’d have to go out of your way to render this kind of thing…wefwef/voyager is actually a web page (and they might or might not be sanitizing their inputs), the other top options are probably using libraries to do it, and data sanitation is pretty basic. Literally web dev 101. They’d have to choose a very full-featured rendering library that also entirely ignores security, or they’d have to have rolled their own
At least now I know why my renderer has been so annoying about the warnings the last couple days…
For any devs that read this - this is a great example of why you can’t trust anything coming off a federated network. Type check and sanitize all your inputs, always. We need to get away from trust - this isn’t a trustful situation
Luckily, this was more of a warning than an actual attack - and there will be actual attacks. We have to be defensive - always - every time at every level.
And Flemmy will be that, once I feel good releasing it (2 features left before I’m out of reasons to procrastinate). It’ll be just me, always
I wonder if there is something the Lemmy.ca admins can do to disable the sidebar or put a workaround in to prevent this.
At this point I’m monitoring inter-instance communications channels non stop even though I should be in bed. I will be temporarily removing admins that have not responded to my inquiry to confirm if they have 2FA authentication turned on as initial access appears to have been gained due to lack of 2FA.
If there’s anything additinal we can do, we will.
Good luck, and thanks for all your hard work. I don’t know if you already saw this, but it looks like this might be the vector for the account compromise. If that’s the case, I don’t think 2FA is enough to protect, because it’s exfiltrating the session cookies of someone already logged in. Seems like the precaution is for admins to avoid clicking any suspicious links. I realize the irony of sharing a link about this, but at least it’s to a thread on this instance.
I’m copying all links into a brand new incognito mode window for now.
Introduce minimum password complexity if there’s a config option for it and force admins to reset passwords.
There’s no minimum complexity but I’ve enforced 2FA for all admins. One admin that did not respond has been temporarily removed precautionarily.
thanks for your hard work, even though i am sure you’re tired as hell. i think that person’s idea about a minimum complexity requirement in addition to 2FA is a good idea, perhaps something like a complex password generator like LastPass or something, anything.
We can put it in place as a internal policy. I’m 99% confident all admins on Lemmy.ca are using complex password generators, that are hopefully not LastPass with their history of being hacked 😅
Edit: yeah I’m tired. It’s like 3 hours post bed time. I’m supposed to be at work in just over 5 hours.
I’m supposed to be at work in just over 5 hours.
shit that sucks. this happened at a bad time, i’m sorry. are their people besides you who are keeping an eye on this and maintaining it, for when you go off to work or when you need to sleep? cause everyone needs their sleep
deleted by creator
Beehaw completely shut down as a response
Edit: Post by the Beehaw admins, gonna stay down until fixed
While I respect their decision, I believe that’s a over-reaction at this point and we will not be doing that, yet.
It seems to have just gotten to Lemmy.blahaj.zone
for some reason I had to reset my password.
I mean, if it’s something that’s editable only by admins of the instance, I’m not sure it constitutes a vulnerability, since admins can change the content to whatever they desire by definition.
Wasn’t clear till further people commented that it was something only and admin could do. So I agree.
We have yet to confirm if a vulnerability exists in the sidebars that can be set by community mods.
can you temporally take away the ability for mods to put html or any kinda script into the sidebar, at least for now?
No. Unfortunately. This is not a confirmed vector of attack at this point but we are monitoring.
That would essentially be patching the vulnerability. A temporary fix would be just preventing the sidebar from being editable.
(Ideally the vulnerability would be patched, but these things take time.)
At this point it doesn’t seem like community sidebars have the voulnerabilty. We are fairly confident that they have identified the voulnerabilty and that lemmy.ca is safe as long as our admin accounts are properly locked down which we have confirmed.
Oh, good! That’s excellent then.