News for hackers. Stuff that matters.
Re:RIP ROP: CET Internals in Windows 20H1 by schoen on Tuesday July 21, 2020 @06:54PM (#23911826)
We've been through several generations of exploit mitigations starting with non-executable stacks, and, impressively, exploit developers found workarounds for each of them (although often the particular workarounds have requirements that might not be met in a particular vulnerability environment). In many cases I had the impression that the workarounds were surprising to the mitigation developers because the latter had expressed a lot of confidence that software security was about to make a huge leap and memory safety violations would rarely be exploitable anymore.

What are the prospects for finding workarounds to CET too?

(I don't mean to argue that there's no benefit to these mitigations or that some of them might not eventually finally stop whole classes of vulnerabilities. But I feel like their track record is not nearly as awesome as their inventors anticipated, so I wonder what informed opinion is on the eventual relevance or irrelevance of this one. Notably, the "RIP ROP" seems like a somewhat ambitious claim to mitigate a large amount of attack potential; how well-justified is it?)

Re:RIP ROP: CET Internals in Windows 20H1 by staticassertion on Tuesday July 21, 2020 @08:06PM (#23912356)
It's not totally true that attackers have found ways bypass mitigations. In many cases the attackers require entirely new capabilities, or separate vulnerabilities, to get around a mitigation. And in some cases it makes an attack statistically unlikely, even if it may succeed.

Lots of mitigations do suck, and are a huge waste of time and effort, but quite a few are very significant. It's very rare that a bypass is a surprised except when the mitigation is poorly thought out. Good mitigations start with a threat model.

An example is ASLR. Once in a while ASLR is pronounced 'dead' because an attacker with capabilities that ASLR does not try to defend against can bypass ASLR. For example, the attacker has arbitrary compute on the system with ASLR. No one who built ASLR was surprised by this.

Re:RIP ROP: CET Internals in Windows 20H1 by saagarjha on Tuesday July 21, 2020 @11:18PM (#23913590)
It's kind of easy to say "ASLR is not resistant to infoleaks" but it's really quite another thing if the infoleak ends up coming from something like a microarchitectural sidechannel or even an undocumented proprietary processor extension, rather than "hurr durr here is a slid pointer, we hand out these out like candy".
Re:RIP ROP: CET Internals in Windows 20H1 by staticassertion on Wednesday July 22, 2020 @01:11AM (#23914127)
My point is that ASLR makes assumptions about the attackers capabilities. All good mitigations do. If the attacker has "I can run nearly arbitrary computations on within the processes memory space", that is outside of the model that ASLR attempts to deal with.

For example, ASLR for a process that executes Javascript is probably not going to be as useful as ASLR for a process that receives network requests.

Re:RIP ROP: CET Internals in Windows 20H1 by saagarjha on Wednesday July 22, 2020 @01:55AM (#23914314)
How so? As far as I understand, being able to leak an ASLR slide from JavaScript is considered to be a security bug in every browser engine, because they do not intentionally provide access to that information.
Re:RIP ROP: CET Internals in Windows 20H1 by staticassertion on Wednesday July 22, 2020 @08:52AM (#23916367)
Whether the browser intends to provide that information or not, ASLR was not designed as a control against an attacker who can run near arbitrary code in the process.
Re:RIP ROP: CET Internals in Windows 20H1 by muricula on Tuesday July 21, 2020 @07:25PM (#23912019)
There will probably be defeats and accidental gadgets for the first couple releases, but this hardware technology has the potential to be better than any software based mitigation with the same goals. Here's a paper with a more detailed security analysis: https://sci-hub.tw/10.1145/3337167.3337175
Re:RIP ROP: CET Internals in Windows 20H1 by pjmlp on Wednesday July 22, 2020 @03:15AM (#23914679)
Incredible how C and C++ have managed to keep the security industry busy.

Not that other languages don't have logical errors that might lead to security exploits, but in what concerns memory corruption exploits, the mitigation list just keeps pilling up.

Looking forward to how long ARM hardware memory tagging will hold on, after Intel's MPX failure.

At least so far Solaris SPARC ADI seems to hold on.

Re:RIP ROP: CET Internals in Windows 20H1 by saagarjha on Wednesday July 22, 2020 @04:12AM (#23914945)
MPX was totally slow and cumbersome, ARM tagging should be much nicer as will be CHERI when it actually comes out.
Re:RIP ROP: CET Internals in Windows 20H1 by pjmlp on Wednesday July 22, 2020 @04:25AM (#23915015)
Sure, it doesn't change the fact that Intel borked it and is yet to provide a better alternative.
Re:RIP ROP: CET Internals in Windows 20H1 by pabs3 on Tuesday July 21, 2020 @11:45PM (#23913721)
grsec seems to think CET won't be effective:

https://grsecurity.net/effectiveness_of_intel_cet_against_co...

Re:RIP ROP: CET Internals in Windows 20H1 by mjg59 on Wednesday July 22, 2020 @03:54AM (#23914880)
Most of the negative commentary us around the protection of the forward edges, while this blog is about the backward edges. The grsec post notes that implementing full support for the backward edges involves handling a number of special cases, but doesn't criticise its effectiveness if that work is done.