CMahaff

@CMahaff@lemmy.ml
0 Post – 24 Comments
Joined 1 years ago

I made LASIM! https://github.com/CMahaff/lasim

I currently have 3 accounts (big shock):

/u/CMahaff@lemmy.world

/u/CMahaff@lemmy.ml

/u/CMahaff@lemm.ee

And if the thought of setting up another account annoys you, I've made a tool that will migrate your account settings, subscriptions, and blocks: https://github.com/CMahaff/lasim

Now that does require the source instance to be up long enough to download your profile, but after that you can upload to any instance you want and be running like nothing changed in like 2 minutes.

1 more...

I actually consider it good news that the redirection is happening this way (something that can be done just by having the lemmy credentials of an admin) vs something indicating they have access to the server itself.

13 more...

My concern is that configuring the site to automatically redirect users sounds like they have pretty large control over the site - the kind of control that I would assume is usually limited to users with root access on the server.

Obviously hope nothing of value is lost and that there is a proper off-site backup of the content.

Edit: See Max-P's comment, it looks like the site redirection was accomplished in a way that IMO suggests they do NOT have full control over the site. We'll obviously have to wait for the full debrief from the admins.

2 more...

4AM in the Netherlands where the instance owner Ruud lives... hopefully his assistant admins can clean it up, but it might be a bit before he even knows anything is wrong.

I made a tool that can help: https://github.com/CMahaff/lasim

It allows you to synchronize subscriptions, blocks, and profile settings between accounts.

(though FYI different versions only gracefully handle a specific API version at a time so there's some limitations right now as instances upgrade from 0.18.2 to 0.18.3 - see my comment here: https://lemmy.ml/comment/2094948 )

EDIT: Second link isn't working - must be a Lemmy bug. But you can see it as a recent post on my profile.

3 more...
1 more...

There's actually another thread on exactly this topic: https://lemmy.ml/post/1875767

3 more...

Another thread linked to this post which has some digging / speculation into what may have gone wrong: https://lemdit.com/post/262746

15 more...

LASIM author here, ironically on my own alt: Just an FYI that support for Lemmy 0.18.3 is not yet out, but keep an eye out for it soon (I have it working on a branch but I need to test it more before release).

This is the first breaking API change since it's creation, so here are the limitations:

  • Old version (0.1.2) will only support API 0.18.1 and 0.18.2
  • New version (0.2.0) will only support 0.18.3 (and above until there are more breaking API changes)
  • Profiles downloaded with 0.1.2 (and below) will automatically be converted to work with 0.2.0.

So that all means:

  • You can use the old LASIM to migrate between 0.18.2 Lemmy instances
  • You can use the new LASIM to migrate between 0.18.3 Lemmy instances
  • You can use the old LASIM to download from an 0.18.2 instance then use the new LASIM to upload to a 0.18.3 instance
  • You cannot use the new LASIN to download from a 0.18.3 instance and then the old LASIM to upload to a 0.18.2 instance (unless you are comfortable doing some manual work editing the JSON file so "old LASIM" understands it).

This will be true of every release with breaking API changes.

EDIT: PR is out. Once it builds, I'll publish a new release! https://github.com/CMahaff/lasim/pull/21

EDIT 2: Release is published! https://github.com/CMahaff/lasim/releases/tag/v0.2.0

4 more...

Oh man, that would be brutal if they are resetting the password and it isn't kicking the attacker out...

5 more...
  1. Inject exploit into a comment using custom emoji.
  2. Front-end parses the emoji incorrectly allowing JavaScript to be injected.
  3. JavaScript loads for everyone to views a page with the comment and sends their token and account type to the hackers domain.
  4. Hacker parses received tokens for admins and uses that to inject redirects into the front page of the Lemmy instance.

To answer your other questions:

  • IMO there probably should be better parsing to remove this stuff from the back-end, so I'm not sure the front-end solution is the complete solution, but it should get things largely under control.
  • Back-end is theoretically not compromised besides needing to purge all the rogue comments. Attacker presumably never had access to the server itself.
  • Probably needs to be a mass reset of ALL passwords since lots of people's tokens were sent during the attack, so their accounts could be compromised.

The issue does say changing the password should kick the user out, but yeah, still not good.

2 more...

Removed "and above" from page and instead added a note to always get the latest version if your version isn't listed as supported explicitly.

A super minor one, but there's a new "infinite scrolling" boolean added to the user settings.

Oh man this one is SO much worse. If this is what is going on the only way to kick out the hacker will probably be to manually alter the DB. Yikes.

I hope the admin team is aware of this - not sure how one would even contact them.

For rust app developers, the publishing of lemmy_api_common crate is also discontinued with this release: https://github.com/LemmyNet/lemmy/commit/5cd4c6c5868c8bec964b6065d079f3a057885be7

For LASIM I switched to point at the Git Repo + Specific Tag in my Cargo.toml.

I don't think so, but I'd love to be proven wrong!

Yep, if you are on Windows just extract that .exe somewhere and then run it.

The README is displayed underneath the screenshots on the link to LASIM above. It tells you how to run it. See "How it Works".

https://github.com/CMahaff/lasim#how-it-works

The latest version supports any Lemmy 0.18.3 instance. You can see which version a Lemmy instance is at the bottom of site. For example, your instance, reddthat.com, is 0.18.3. Most instances should have upgraded to 0.18.3 already - choose one of those. Any instance running 0.18.3 should work, big or small.

The account you "download" with won't be touched at all. The account you "upload to" will receive all the subscriptions and blocks of the downloaded account.

8 more...

Well I guess I'll have to respond with my .ml account instead of my .world account.

Tried to delete this post and post it again, which is what I see from .world, but on .ml both new posts came across, but no deletes did.

So now I can't access this specific post from .world.

Federation bugs are a trip!

Thanks for your kind words, I'm glad it has helped you!

Thanks for spreading the word about LASIM!

Just letting you know that today I finished an update that adds upload options, including an option you can turn on to "sync removals", which kindof achieves this.

It may not be the right tool for every scenario though - turning it on basically means that whatever account you upload too will end up identical to the one you downloaded by following/unfollowing and blocking/unblocking as needed. But if you've got new follows, blocks, etc. spread across several accounts you wouldn't want to turn it on or you'd lose all the changes on the accounts except for whichever one you downloaded.

The option works better in scenarios where you're mostly using a Main account, and just trying to keep the Alt accounts in sync with whatever the Main account does.

11 more...

Sounds good. Let me know how it goes. Hopefully it's just instance instability.

2 more...

That's so odd. No idea what would be causing that on Windows 10.

For the windows 11 issue I can only think short downtimes of the instance you are trying to use, or your account has something unique about it that I've never encountered before.

Could be some kind of new bug, but I've also seen this happen when an instance is under heavy load or otherwise glitching out - it's starts sending back invalid items on the API and LASIM chokes on them.

For what it's worth I made an account on reddthat.com and was able to download and upload to it fine.

Maybe try again? Or is this some other instance? (I'm making assumptions based on your account)

4 more...