Comment on Here is a more polished release of nanogram. Fully compatible on raspberry pi now.
savvywolf@pawb.social 2 weeks agoTwo factor authentication won’t help here. You have to build your app with the assumption that any attacker has a valid login and credentials and therefore restrict them to only information they have permission to see.
File uploads are encrypted in transit from the client to the server but not encrypted on the server.
Usually when people talk about e2e encrypted messaging they mean that everything is encrypted. That includes images and text content. The server should not be able to read any contents of any message sent through it.
Again this is a design choice I don’t want gifs.
Why? Sending memes is a core part of any social media experience.
There are filetype checks on line 350 of the app.
Line 350 in both files doesn’t seem to contain any filetype checks. I assume you mean file.content_type. That may not be accurate to the actual file uploaded; it can be spoofed.
Yes deleting is atomic.
# Delete the associated message if it exists if chat_file.message_id: msg = db.get(Message, chat_file.message_id) if msg: db.delete(msg) ---> Here # Delete file from disk file_path = os.path.join(CHAT_FILES_DIR, file_uuid) if os.path.exists(file_path): os.remove(file_path)
If the application crashes/closes at the indicated point, then you will delete the message from the database but still have the image on the server. If this is an image served from /img/whatever, it would have no checks beyond a login check.