Anything that puts plaintext on your screen has to hold it in RAM, key included, so this is closer to a property of decrypting locally than a flaw in Session specifically
This is wrong, there are many ways where you can protect your memory and any text present in your UI or written down a swell, a basic example is to instead of saving messages/words as strings, you split them into chars (this is a very basic practice, but you can also do a lot of other cool advanced things).
since the key is back in ram once you unlock the app
They definitely need to protect that as well, someone could automate reading that key by simply finding the static pointer in the memory (that is the same for all users).
On iOS you need a jailbreak and on Android you need root or ADB, so apps can't just read each other
Here I have to admit that I am not a professional on mobile devices, but I will explain later the main concerns about my report.
It's really a desktop concern, and even there the usual route is dumping memory with something like Sysinternals, which needs admin privileges, so it isn't every app on the machine that can do it.
You can read the memory of processes even without admin, you don't even need to dump it.
As for the rest, yes, it’s all standard practice that everybody should follow. But the core issue with my report is that people need to feel like their chat app/software is actually protected. The problem right now is that the only way to use Session securely is either with GrapheneOS on a mobile phone or Qubes on a desktop. Not everybody has those, so anyone not using those operating systems is at risk.
The issue isn’t getting malware per se (of course, don’t be dumb enough to get hacked). The real problem is that you cannot trust your operating system. Any Android, iPhone, Windows, etc., cannot be trusted at all. There have been many cases where all of those have been breached by authorities at some point. Imagine if some high-level app or a root-like privileges system app reads your Android sandboxes (because with root-like privileges it could, some core Google service, for example). They can read everything right now and even get access to your private key.
A proper app, even on Android or iPhone, can be much more solid. For example, anti-keylogging is a thing (so external processes are blocked from accessing your keystrokes while you’re typing in the app), along with memory protection, memory encryption, memory erasing, and even anti-debug/tamper systems, obfuscation, etc. I expect all of this to be done by an app like Session, this is a must.
Also, in 2026 I don’t really trust Tor nodes anymore eiher, too much fuckery is going on with authorities creating Tor nodes, and I believe we’ll soon start seeing people being traced directly through Tor nodes.
The only promising project I found right now that could fix the Tor issue:
NymVPN: The world's most private decentralized VPN | Nym. (There are many ways to prevent the Tor tracking issues as well, but for this topic, Session runs on Tor and we don't know which nodes it uses and if those nodes will ever be compromised).