Not familiar with Lemmy specifically, but usually in an app like this, while of course the files are stored on a filesystem, IDs and metadata are stored in the DB and associated with each other through relations. It seems in this case one way to express it would be 'don't delete every image that is associated with a valid post or in-use avatar, but delete everything else'.
Take this random image for instance: https://lemmy.world/pictrs/image/ede63269-7b8a-42a4-a1fa-145beea682cb.jpeg
associated with this post: https://lemmy.world/post/4130981
Highly likely the way it works is there is an entry for post 4130981 that says it uses ede63269-7b8a-42a4-a1fa-145beea682cb, or an image table with a relation to the post table where an image entry (with whatever ID) that is ede63269-7b8a-42a4-a1fa-145beea682cb says it is related to post 4130981. Whatever the specifics, it would be possible.
Sites like reddit could have about the same problem. You can post to some obscure profile and use reddit as image hosting and it might take quite some time before anyone notices. This is a little worse though because it wouldn't even be listed on a profile page.