EDIT

TO EVERYONE ASKING TO OPEN AN ISSUE ON GITHUB, IT HAS BEEN OPEN SINCE JULY 6: https://github.com/LemmyNet/lemmy/issues/3504

June 24 - https://github.com/LemmyNet/lemmy/issues/3236

TO EVERYONE SAYING THAT THIS IS NOT A CONCERN: Everybody has different laws in their countries (in other words, not everyone is American), and whether or not an admin is liable for such content residing in their servers without their knowledge, don’t you think it’s still an issue anyway? Are you not bothered by the fact that somebody could be sharing illegal images from your server without you ever knowing? Is that okay with you? OR are you only saying this because you’re NOT an admin? Different admins have already responded in the comments and have suggested ways to solve the problem because they are genuinely concerned about this problem as much as I am. Thank you to all the hard working admins. I appreciate and love you all.


ORIGINAL POST

You can upload images to a Lemmy instance without anyone knowing that the image is there if the admins are not regularly checking their pictrs database.

To do this, you create a post on any Lemmy instance, upload an image, and never click the “Create” button. The post is never created but the image is uploaded. Because the post isn’t created, nobody knows that the image is uploaded.

You can also go to any post, upload a picture in the comment, copy the URL and never post the comment. You can also upload an image as your avatar or banner and just close the tab. The image will still reside in the server.

You can (possibly) do the same with community icons and banners.

Why does this matter?

Because anyone can upload illegal images without the admin knowing and the admin will be liable for it. With everything that has been going on lately, I wanted to remind all of you about this. Don’t think that disabling cache is enough. Bad actors can secretly stash illegal images on your Lemmy instance if you aren’t checking!

These bad actors can then share these links around and you would never know! They can report it to the FBI and if you haven’t taken it down (because you did not know) for a certain period, say goodbye to your instance and see you in court.

Only your backend admins who have access to the database (or object storage or whatever) can check this, meaning non-backend admins and moderators WILL NOT BE ABLE TO MONITOR THESE, and regular users WILL NOT BE ABLE TO REPORT THESE.

Aren’t these images deleted if they aren’t used for the post/comment/banner/avatar/icon?

NOPE! The image actually stays uploaded! Lemmy doesn’t check if the images are used! Try it out yourself. Just make sure to copy the link by copying the link text or copying it by clicking the image then “copy image link”.

How come this hasn’t been addressed before?

I don’t know. I am fairly certain that this has been brought up before. Nobody paid attention but I’m bringing it up again after all the shit that happened in the past week. I can’t even find it on the GitHub issue tracker.

I’m an instance administrator, what the fuck do I do?

Check your pictrs images (good luck) or nuke it. Disable pictrs, restrict sign ups, or watch your database like a hawk. You can also delete your instance.

Good luck.

    • Dandroid@dandroid.app
      link
      fedilink
      English
      arrow-up
      5
      ·
      1 year ago

      It didn’t work that easily for me. I had to redirect all pictrs traffic to 404 in my nginx config.

      • cwagner@lemmy.cwagner.me
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 year ago

        Hm, I use caddy, and it just worked, why would you need to 404 it? That should be the default behavior if there’s nothing there.

        • Dandroid@dandroid.app
          link
          fedilink
          English
          arrow-up
          3
          ·
          1 year ago

          I set up mine manually using docker, and it gave me a site-wide error message when I simply completed our the pictrs container and dependencies. I made a post on !selfhosted@lemmy.world and someone suggested that I 404 it. I made that change, and now it works.

          • cwagner@lemmy.cwagner.me
            link
            fedilink
            English
            arrow-up
            2
            ·
            edit-2
            1 year ago

            Just out of interest, had you also commented out the pict-rs volume? Otherwise, I guess it’ just some nginx thing where caddy chose the sane default, once again ;)

            • Dandroid@dandroid.app
              link
              fedilink
              English
              arrow-up
              1
              ·
              1 year ago

              Uhhhh, I’ll need to double check that. I commented out the whole pictrs section in docker-compose.yml, then I commented out the depends on pictrs lines for the lemmy and lemmy-ui containers.

              • cwagner@lemmy.cwagner.me
                link
                fedilink
                English
                arrow-up
                2
                ·
                1 year ago

                I think that might be it, it will work without it commented out, but your path would not exist anymore when it is, so there should be no need to manually set it to 404.

                • Dandroid@dandroid.app
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  ·
                  1 year ago

                  I’ll take a look at that later when I’m off work. I think not needing to modify my nginx config is ideal.