While I was asleep, apparently the site was hacked. Luckily, (big) part of the lemmy.world team is in US, and some early birds in EU also helped mitigate this.
As I am told, this was the issue:
- There is an vulnerability which was exploited
- Several people had their JWT cookies leaked, including at least one admin
- Attackers started changing site settings and posting fake announcements etc
Our mitigations:
- We removed the vulnerability
- Deleted all comments and private messages that contained the exploit
- Rotated JWT secret which invalidated all existing cookies
The vulnerability will be fixed by the Lemmy devs.
Details of the vulnerability are here
Many thanks for all that helped, and sorry for any inconvenience caused!
Update While we believe the admins accounts were what they were after, it could be that other users accounts were compromised. Your cookie could have been ‘stolen’ and the hacker could have had access to your account, creating posts and comments under your name, and accessing/changing your settings (which shows your e-mail).
For this, you would have had to be using lemmy.world at that time, and load a page that had the vulnerability in it.
So thats why MalwareBytes gave me this message yesterday.
Wow that’s cool. How did malwarebytes know the website was compromised ?
probably looking for obvious patterns like
"onload="...
in image and link tags, because an onload event handler would usually never be put in those tags otherwise so the only plausible explanation is that it’s a XSS attackI think it sees that the browser is trying to execute code that is suspicious (the payload of the XSS was pretty obvious).
Interestingly, here is a log when browsing Lemmy over the last week or so.
Believe the derp.foo and .today are both federated instances. Don’t know what the other rows are.
Admin of derp.foo here. My best guess is Hetzner gave me an IP that had been used to host a botnet C&C before. As a precaution I switched to a new VPS; please contact me via matrix at @irdc:tchncs.de if the problem persists.