Live data from Hacker News

Reporting a user to WhatsApp forwards a copy of recent messages from that chat

wabetainfo.com

161–170 of 173 posts

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#161
post #19

Earlier quoted context omitted.

I don't know the implementation on the client, but in theory it can be implemented locally on the client only, and I made the above statements under the assumption that it's how it's implemented. The user issues the report command in the UI and the client takes its local copy and uploads it to the server as part of the report. So it's mainly a convenience feature. The only case where the current E2EE security model i…

So is there a way to capture user's screen without user knowing and essentially bypassing the end to end encryption altogether? (the images would be sent to a different endpoint for example)

The report feature is initiated by the user. Only the copy of the user's correspondence who sends the report is sent.

If there is a risk that the user doesn't know that the correspondence is sent if they hit the report button, then fb should add a warning, but the feature itself is fine IMO.

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#162
post #160
post #114

Earlier quoted context omitted.

>I wonder how that works. I guess [...] Either way, it is a compromise on E2EE. How about instead of guessing and concluding it must be compromised (argument from ignorance), you do a cursory search and get an actual response? https://security.stackexchange.com/questions/148321/how-does...

I suggest you read the guidelines for this website [1] > Be kind. Don't be snarky. Have curious conversation; don't cross-examine. Please don't fulminate. Please don't sneer, including at the rest of the community. As for your link, I'm aware how they claim it works, and even if that is all true (we can't audit the source code), then it is still a compromise of E2EE. E2EE is between two devices, a receiver and a send…

>then it is still a compromise of E2EE. E2EE is between two devices, a receiver and a sender.

I don't get it. Does that mean if I have PGP installed on my desktop, and I also have a VNC server installed on it, it's no longer E2E? That seems like an arbitrary distinction to me. If you extend this further, you could also argue that being able to print out the message, or even have a second person look at the screen breaks E2E. I think the main point of E2E is that unauthorized third parties (including service providers) can't read the message, not that only two devices can read the message.

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#163
post #162
post #160

Earlier quoted context omitted.

I suggest you read the guidelines for this website [1] > Be kind. Don't be snarky. Have curious conversation; don't cross-examine. Please don't fulminate. Please don't sneer, including at the rest of the community. As for your link, I'm aware how they claim it works, and even if that is all true (we can't audit the source code), then it is still a compromise of E2EE. E2EE is between two devices, a receiver and a send…

>then it is still a compromise of E2EE. E2EE is between two devices, a receiver and a sender. I don't get it. Does that mean if I have PGP installed on my desktop, and I also have a VNC server installed on it, it's no longer E2E? That seems like an arbitrary distinction to me. If you extend this further, you could also argue that being able to print out the message, or even have a second person look at the screen bre…

You get it, but you don't see the relevance.

Alice uses a smartphone and a laptop with WhatsApp. Bob only uses a smartphone with WhatsApp. Alice and Bob discuss something secret. Alice assumes only Bob's (secure) smartphone can read the data. Bob assumes only Alice's (secure) smartphone can read the data. They both got physical access to the smartphone, which lowers the attack surface at that moment. Alice's laptop is in her house. As is Mallory.

My problem with above isn't that this works; it is how it works. My problem is that Alice never temporary authorizes WhatsApp Web. My problem is that Bob doesn't know about Alice's 2nd device. These 2 issues are issues which can be addressed and raise the privacy of the data considerably. The gut reaction "oh, its E2EE, so its secure." is dangerous, and untrue.

Yes, I'm aware you can make screenshots and print chats. You can also send temporary messages with Signal though. That's on top of E2EE, because E2EE isn't a panacea.

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#164

Earlier quoted context omitted.

>The Guix bootstrap path from stage0 still doesn't solve the problem as at the end of the day all compilers eventually self-host from a previous version. So whatever compiler you're using for stage0 can have the virus, inject it into the produced binary, & you'll never find it since the virus is in the binary not in the source. The point of stage0 is that it doesn't need to be compiled, only assembled, and that it's…

Are you referring to https://github.com/oriansj/stage0 ? This stage0 gets you a basic C compiler. An impressive achievement for sure. I don’t see how it really solves anything though. More generally each language would need it’s own path from this basic assembler to a compiler implementing that language in C which doesn’t necessarily exist. While initial versions of the Rust compiler were written in C, more recent ve…

>Are you referring to https://github.com/oriansj/stage0?

Yep, that's the one.

>More generally each language would need it’s own path from this basic assembler to a compiler implementing that language in C which doesn’t necessarily exist. While initial versions of the Rust compiler were written in C, more recent versions are self hosted and rely on the previous version. This goes for projects like LLVM too since it requires a c++14 compiler to start with.

Sure. This part has largely been done for many languages, including Rust: https://guix.gnu.org/blog/2018/bootstrapping-rust/

...and there's a bootstrap path for the bottom of that graph all the way from Guix's (fairly minimal but not quite stage0 yet) bootstrap binaries. LLVM too; since you mentioned it and I was curious, here's the dependency graph of LLVM 9.0.1 on my system, in GraphViz and PDF formats:

https://terracrypt.net/upload/llvm.pdf https://terracrypt.net/upload/llvm.dot

(That's from `guix graph -t bag-with-origins llvm@9.0.1` on my laptop.)

It's my understanding that being bootstrappable in this way is a requirement for being included in upstream Guix, so generally everything that's available in Guix can be bootstrapped like this.

Now, what's not done yet is the path from stage0 to building the bootstrap binaries, but that's the eventual goal. The rest of it? It's not futile, it's done. Not all software is in Guix, but enough of it is that I'm typing this from a laptop running almost exclusively software from Guix.

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#165

Earlier quoted context omitted.

Are you referring to https://github.com/oriansj/stage0 ? This stage0 gets you a basic C compiler. An impressive achievement for sure. I don’t see how it really solves anything though. More generally each language would need it’s own path from this basic assembler to a compiler implementing that language in C which doesn’t necessarily exist. While initial versions of the Rust compiler were written in C, more recent ve…

>Are you referring to https://github.com/oriansj/stage0 ? Yep, that's the one. >More generally each language would need it’s own path from this basic assembler to a compiler implementing that language in C which doesn’t necessarily exist. While initial versions of the Rust compiler were written in C, more recent versions are self hosted and rely on the previous version. This goes for projects like LLVM too since it r…

I’m saying stage0 is a massive incomplete lift. If you notice that Rust chain starts at g++ - can g++ be built from the basic assembler you listed?

Beyond that, as you can tell from your graph there’s an enormous amount of code that’s part of a build from a large amount of projects. Explode that by a factor of 100000x to get the number of lines of code. So even once you’ve proven the source matches the binary, you are still trusting that the source code is of a trustworthy nature in the first place. You can move the trust required around and in some cases reduce it, but ultimately you’re trusting a lot of people and code (heck you’re trusting the good will of general OSS to validate the source itself isn’t malicious).

Like I said, I’m supportive of the effort and guix/nix are great projects and extremely valuable. There’s no theoretical basis though to back the design of solving the trust issue though (the best we have are reputation systems but even that isn’t backed by any mathematical model).

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#166

Earlier quoted context omitted.

Are you referring to https://github.com/oriansj/stage0 ? This stage0 gets you a basic C compiler. An impressive achievement for sure. I don’t see how it really solves anything though. More generally each language would need it’s own path from this basic assembler to a compiler implementing that language in C which doesn’t necessarily exist. While initial versions of the Rust compiler were written in C, more recent ve…

No version of the rust compiler was ever written in C. The initial version was in OCaml, then bootstrapped to Rust itself.

I can always trust you to correct my misstatements on Rust :).

What would be the stage0 path to running OCaml?

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#167
post #140
post #133

Earlier quoted context omitted.

The problem is that you submitted the post with a misleading title. "WhatsApp can now read your recent messages when you report a user" implies that they've acquired some new power to read user data when in reality it's you who are forwarding them a copy, for the obvious reason that reporting a user would be meaningless without that.

Whatsapp is the most popular messenger in this world. People need to know this new change in this update. It is end to end encrypted, but now they have started collecting messages, the first way being when you report them. You can't opt out.

You can opt out by not reporting users. You can already block someone for any reason whatsoever. Nothing requires you to report them.

If you report them to any other place, like police, HR, etc, you'll likely have to show the discussion as well, or at least tell them about its contents.

This is not a slippery slope, at least not right now.

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#168

Earlier quoted context omitted.

No version of the rust compiler was ever written in C. The initial version was in OCaml, then bootstrapped to Rust itself.

I can always trust you to correct my misstatements on Rust :). What would be the stage0 path to running OCaml?

:)

I would probably go via mrustc rather than via OCaml. It saves a lot of builds.

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#169

Earlier quoted context omitted.

>Are you referring to https://github.com/oriansj/stage0 ? Yep, that's the one. >More generally each language would need it’s own path from this basic assembler to a compiler implementing that language in C which doesn’t necessarily exist. While initial versions of the Rust compiler were written in C, more recent versions are self hosted and rely on the previous version. This goes for projects like LLVM too since it r…

I’m saying stage0 is a massive incomplete lift. If you notice that Rust chain starts at g++ - can g++ be built from the basic assembler you listed? Beyond that, as you can tell from your graph there’s an enormous amount of code that’s part of a build from a large amount of projects. Explode that by a factor of 100000x to get the number of lines of code. So even once you’ve proven the source matches the binary, you ar…

>I’m saying stage0 is a massive incomplete lift. If you notice that Rust chain starts at g++ - can g++ be built from the basic assembler you listed?

Not yet, but gcc can be built starting from Mes and a few bootstrap binaries (xz, bash, tar, etc): https://bootstrappable.org/projects/mes.html - and that initial version of gcc is 2.95.3, which does have C++ support.

...and there's work being done towards building Mes with M2-Planet (another C compiler by the same author as stage0): https://www.gnu.org/software/mes/

(Although I think the Guix project has shifted to an approach that starts with Scheme instead these days; they have a Scheme implementation of most of those bootstrap binaries now in the form of Gash and Gash Core Utils: https://guix.gnu.org/en/blog/2020/guix-further-reduces-boots....)

In any case, if you can connect the two, and it feels like that's very close at this point, you've got a bootstrap path from that basic assembler to gcc, and from there to... well, the rest of the distro.

>Beyond that, as you can tell from your graph there’s an enormous amount of code that’s part of a build from a large amount of projects. Explode that by a factor of 100000x to get the number of lines of code. So even once you’ve proven the source matches the binary, you are still trusting that the source code is of a trustworthy nature in the first place. You can move the trust required around and in some cases reduce it, but ultimately you’re trusting a lot of people and code (heck you’re trusting the good will of general OSS to validate the source itself isn’t malicious).

Of course, yes, this is a problem. At least once you're able to bootstrap entirely from source you can be pretty confident that the source code you're looking at is what's in the binaries on disk. But yes, that doesn't solve the problem of having a ton of code to review if you need to review it.

But what's the alternative?

Re: Reporting a user to WhatsApp forwards a copy of recent messages from that chat

#170
post #110

Earlier quoted context omitted.

How about: "WhatsApp gives option to include recent messages when reporting bad behavior"

There is no 'option' to include recent messages. Messages are sent when you report. You can't opt out. 'Most recent messages will be forwarded to Whatsapp'

My apologies, I was under the impression this was optional, but you are completely correct.
Post reply on HN