It’s better now, but for years and years all they used for contact discovery was simple hashing… problem is the dataset is very small, and it was easy to generate a rainbow table of all the phone number hashes in a matter of hours. Then anyone with access to the hosts (either hackers, or the US state via AWS collaboration) had access to the entire social graph.
It wasnt a serious security flaw, arguable not one at all. So they are perfectly justified in downplaying the hysteria.
the point is they could have fixed it by the time it was reported and not waited around until the issue was blown bigger.
A security company should prioritize investments (I.e. development time) depending on a threat model and risk management, not based on what random people think.
Windows Recall had the same issue with data storage. Interesting difference between both comment sections, there it was a bit more aggressive.
let me just highlight that if someone has access only to your signal desktop conversations, they have access to your signal desktop conversations.
if someone has access to your windows recall db, they have access to your signal desktop conversations, the pages you’ve browsed including in private windows, documents you’ve written, games you’ve played, social media posts you’ve seen, and pretty much anything you’ve done using that machine.
perhaps that does demand a slightly different level of concern.
True that Recall collects more than Signal, but copying actual files, browser session cookies / passwords, mailbox content if desktop mail client is used makes more sense if you have access to device. Recall is also not supposed to collect data from private sessions from popular web browsers. I assume for that it uses some hard coded list of exceptions with an option to add your own.
Both should have protected that kind of data with additional safeguards so that merely copying that data without authentication would have no value.
Recall is also not supposed to collect data from private sessions from popular web browsers.
it makes one wonder how well that works; if it’s based on OCR, does it “redact” the bounding box corresponding to the private window? What happens with overlapping windows; how does it handle windows with transparency; I can’t help to think there’s a high probability their solution is flaky.
Microsoft was claiming that the data would be inaccessible to hackers (which is not true).
Signal claimed the exact opposite: that once it’s on your computer, messages can be seen by malicious programs on your computer.
Signal was caught having less than ideal security. Microsoft was caught lying.
Could not find much info about that claim, but context probably was that data is not possible to be accessed without compromising device, e.g., not possible to get info over network or by compromising some central location on remote server because there is none and all that data is stored locally.
The whole drama seems to be pushing for Electron’s safeStorage API, which uses a device’s secrets manager. But aren’t secrets stored there still accessible when the machine is unlocked anyway? I’m not sure what this change accomplishes other than encryption at rest with the device turned off - which is redundant if you’re using full disk encryption.
I don’t think they’re downplaying it, it just doesn’t seem to be this large security concern some people are making it to be.
This is like the third time in the past two months I’ve seen someone trying to spread FUD around Signal.
This is like the third time in the past two months I’ve seen someone trying to spread FUD around Signal.
If any other messenger had the same issue, Moxie Marlinspike and fans would have an outcry on biblical proportions.
Yeah they are, this problem is super overblown. Weirdly I’ve seen articles about this coming up for other apps too, like the ChatGPT app for MacOS storing conversation history in plain text on the device. Weird that this is suddenly a problem.
If someone wants better security, the can use full disk encryption and encrypt their home directory and unlock it on login.
But aren’t secrets stored there still accessible when the machine is unlocked anyway?
I think the OS prevents apps from accessing data in those keychains, right? So there wouldn’t be an automated/scriptable way to extract the key in as easy of a way.
But that’s the thing: I haven’t found anything that indicates it can differentiate a legitimate access from a dubious one; at least not without asking the user to authorize it by providing a password and causing the extra inconvenience.
If the wallet asked the program itself for a secret - to verify the program was legit and not a malicious script - the program would still have the same problem of storing and retrieving that secret securely; which defeats the use of a secret manager.
I haven’t found anything that indicates it can differentiate a legitimate access from a dubious one
It’s not about legitimate access versus illegitimate access. As I understand it, these keychains/wallets can control which specific app can access any given secret.
It’s a method of sandboxing different apps from accessing the secrets of other apps.
In function, browser access to an item can be problematic because browsers share data with the sites that it visits, but that’s different from a specific app, hardcoded to a specific service being given exclusive access to a key.
Yes but it pushes it to an operating system level and that means everyone wins as the operating system solutions to improve as vulnerabilities are found and resolved.
You also don’t need rce access to exfiltrate data. If decrypted keys are held in memory, that mitigates an entire class of vulnerabilities from other applications causing your private chats from leaking.
Full disk encryption is not a solution here. Any application that’s already running which can provide read only file system access to an attacker is not going to be affected by your full disk encryption.
I understand Signal’s stance on this. For this vulnerability, the attacker needs physical access to computer. If the attacker has already gained physical access, the attacker can already access your messages, crypto wallets, password managers. Many password managers also have this flaw. For example, Someone can change Keepass master password if the user is already logged in to the session, if they have physical access to the PC and lock you out of all your accounts.
They don’t need physical access (hold the device in their hand), they just need a command execution, which is a much lower bar. I expect some defence in depth for an application that holds some of the most private information there is about me.
The argument still holds. If they have remote execution access, they already have your data. Encryption can’t protect your data here because encrypted data will automatically become unencrypted once the user logs into the computer. If the attacker has remote access they can log into your account and the data will be unencrypted.
They don’t necessarily need RCE access.
Also this isn’t how security works. Please refer to the Swiss cheese model.
Unless you can guarantee that every application ever installed on every computer will always be secure under every circumstances then you’re already breaking your security model.
An application may expose a vulnerable web server which may allow read only file system access without exposing the user to any direct control of their computer from an attacker. Now your lack of security posture for your application (signal) now has a shared fate to any other application anyone else built.
This is just one of many easy examples that are counter to your argument here.
No, defense in depth is still important.
It’s true that full-disk encryption is useless against remote execution attacks, because the attacker is already inside that boundary. (i.e., As you say, the OS will helpfully decrypt the file for the attacker.)
However, it’s still useful to have finer-grained encryption of specific files. (Preferably in addition to full-disk encryption, which remains useful against other attack vectors.) i.e., Prompt the user for a password when the program starts, decrypt the data, and hold it in RAM that’s only accessible to that running process. This is more secure because the attacker must compromise additional barriers. Physical access is harder than remote execution with root, which is harder than remote execution in general.
For example, Someone can change Keepass master password if the user is already logged in to the session, if they have physical access to the PC and lock you out of all your accounts.
This seems like easy fix is available. On Windows, Access Shadow copies, restore previous version from $DayBeforeLockout. Or on Linux, specific file systems have automatic volume level snapshotting available. Or on either…restore the keepass file from a backup before the change.
Yeah, this is why I added a hardware key to my db. The hardware key is required not just for reading the db, but writing to it as well.
Another tip: use something like an OnlyKey that has its own locking and self-destruct mechanisms so this method isn’t foiled by simply acquiring the key.
xz? twitter? x11? placeholder?