3 ms·
It was a buffer overflow in a VOIP stack: * https://www.theverge.com/2019/5/14/18622744/whatsapp-spyware-nso-pegasus-vulnerability https://www.theverge.com/201
by upofadown 2y ago
It was a buffer overflow in a VOIP stack:
* https://www.theverge.com/2019/5/14/18622744/whatsapp-spyware-nso-pegasus-vulnerability https://www.theverge.com/2019/5/14/18622744/whatsapp-spyware...
Interestingly enough, Signal (and others) had the same sort of vulnerability on Android from a WebRTC stack:
* https://googleprojectzero.blogspot.com/2020/08/exploiting-android-messengers-part-3.html https://googleprojectzero.blogspot.com/2020/08/exploiting-an...
The big issue in both cases is that the exploit was triggered before the user answered the call.
I think the moral here is that a secure messenger should not execute inherently insecure code (i.e.complex code) on behalf of entities that are not really well trusted by the user. The default should be always plain text.
- xvector 2y agoThe other moral here is to stop using memory unsafe languages. It's just so incredibly dumb that we keep making excuses for this.
- mountainmonk 2y agoDoes Rust make RCE impossible?, I don't think it does. There is the option of not having data and code sharing the same stack, that seems like a better solution to me but that's such an option is not usually talked about.
- saagarjha 2y agoIt makes this kind easy pivot to RCE impossible. Attacks these days are generally more sophisticated than simple buffer overflows, fwiw. Targeting function pointers from a heap overwrite gives the same capabilities.
- hulitu 2y ago> Does Rust make RCE impossible?, I don't think it does. Well, RCE (cargo) is built into it. /s
- hi41 2y agoI think most influential companies such as Microsoft snd Google have said that c and c++ need to be deprecated. I think replacing old code with memory safe languages takes time, effort and money. Hopefully in a decade we can this can be fully done.
- hulitu 2y ago> The other moral here is to stop using memory unsafe languages. It's just so incredibly dumb that we keep making excuses for this Has your "memory safe" language been audited for security ?
- 3eb7988a1663 2y agoWas the spyware persistent? That is, would a reboot clear it? Not that it matters. Presumably, the attackers were so motivated they would re-infect the device the moment they saw it go dark.
- saagarjha 2y agoNo and you've provided a good reason why it doesn't have to.
- hulitu 2y ago> I think the moral here is that a secure messenger should not execute inherently insecure code (i.e.complex code) on behalf of entities that are not really well trusted by the user. The default should be always plain text. Whattsup and co, are very happy to execute untrusted code: images displayed in messages, websites fetched and rendered. Basically a bad actor's wet dream.