News for hackers. Stuff that matters.
Re:Downfall Attacks by Negitivefrags on Tuesday August 08, 2023 @02:23PM (#37053357)
Once again it seems clear that running code from two security domains on the same physical processor cores is just not possible to get right, and we should probably just stop doing it.

There are really only two common cases for this anyway. VMs and JavaScript.

For VMs we just need to give up on it. Dedicate specific cores to specific VMs or at least customers.

For JavaScript it’s a bit harder.

Either way, we need to not be giving up performance for the the normal case.

Re:Downfall Attacks by marssaxman on Tuesday August 08, 2023 @02:25PM (#37053398)
> For JavaScript it’s a bit harder.

"We should probably just stop doing it" works for me.

Re:Downfall Attacks by throwaway892238 on Tuesday August 08, 2023 @02:45PM (#37053659)
Agreed. Browsers are now nothing but an application platform of APIs (https://developer.mozilla.org/en-US/docs/Web/API). For some reason they still retain the vestigial HTML, CSS and JS, but really all you need is bytecode that calls an ABI, and a widget toolkit that talks to a rendering API. Then we can finally ship apps to users without the shackles of how a browser wants to interpret and render some markup.

The idea of security "sandboxes" is quaint, but have been defeated pretty much since their inception. And the only reason we have "frontend developers" rather than just "developers" is HTML/CSS/JS/DOM/etc is a byzantine relic we refuse to let go of. Just let us deliver regular-old apps to users and control how they're displayed in regular programming languages. Let users can find any app in any online marketplace based on open standards.

Re:Downfall Attacks by sidewndr46 on Tuesday August 08, 2023 @02:59PM (#37053861)
If someone created a way for WASM to talk to an SDL equivalent, it'd probably end use of HTML & CSS
Re:Downfall Attacks by tomsmeding on Tuesday August 08, 2023 @03:41PM (#37054454)
If so, all people relying on (often limited even with html that contains text) accessibility features will have to sit in a corner and cry.
Re:Downfall Attacks by wg0 on Tuesday August 08, 2023 @04:59PM (#37055373)
I think that should be addressable.
Re:Downfall Attacks by Terr_ on Tuesday August 08, 2023 @08:59PM (#37057489)
Why do I get the feeling some company will address the issue by offering them a comfy chair and a free box of tissues?
Re:Downfall Attacks by throwaway12245 on Tuesday August 08, 2023 @03:36PM (#37054376)
WASM has support for SDL for a long time: https://www.jamesfmackenzie.com/2019/12/01/webassembly-graph...
Re:Downfall Attacks by yvdriess on Tuesday August 08, 2023 @03:32PM (#37054320)
And so closing the great circle of UI framework technologies.
Re:Downfall Attacks by t0astbread on Tuesday August 08, 2023 @03:57PM (#37054641)
If tri-state logic becomes viable it's game over for binary!
Re:Downfall Attacks by wg0 on Tuesday August 08, 2023 @04:58PM (#37055362)
IF GTK/Qt etc can render to canvas using WebGPU while compiled to assembly, I think game is almost over than too IF there's a way to lazy load application modules.

Think Autodesk products. Certain parts (wasm modules) only load when you hover over a menu while overall app loads within milliseconds because it just has the main window and such.

Re:Downfall Attacks by slondr on Tuesday August 08, 2023 @10:21PM (#37058005)
This has been possible for years. I actually got in the habit of porting my qt projects to the web target because they ran better than native compiled on some of my older machines.
Re:Downfall Attacks by eternityforest on Tuesday August 08, 2023 @09:27PM (#37057695)
That sounds awful. People would be jamming entire 10MB toolkits into WASM to do things that HTML could do, and performance would probably suffer.

HTML is declarative. The machine understands it. I like things machines can understand and optimize. Things that you can write automated tools to work with because it's not a full turing machine. If you want to make a screen reader, you can. If you want to reflow for mobile in a better way, you can, because you know what's text and what's an image.

Just giving people a programming environment and the ability to draw some pixels, the browser has no idea what the intent is. There's nothing to optimize unless the individual sites do, and I doubt they have Google and Mozilla's budget.

We already have too many unnecessary powerful imperative systems out there.

Re:Downfall Attacks by xigency on Tuesday August 08, 2023 @03:46PM (#37054508)
I do think there’s never been a better time to reinvent the web, including basic technologies like HTML and JavaScript.

For example, picking up more elements of semantic web and distributed systems and leveraging interconnected devices.

Re:Downfall Attacks by istjohn on Tuesday August 08, 2023 @08:35PM (#37057329)
The web started as a graph of hyperlinked documents, and that use case hasn't gone away. SPA's aren't the internet.
Re:Downfall Attacks by eternityforest on Tuesday August 08, 2023 @09:21PM (#37057655)
HTML/CSS is one of the easiest way to develop GUIs, one of the most visually flexible, and one of very few things this side of ncurses that runs everywhere. Actually, without hacks, there are probably more end user devices with a browser than a command line.

It's also highly standardized. Regular programming languages have dozens of GUI toolkits, or at least one per platform.

I'd rather we go the other way, and build the browser into the OS, so that desktop apps just serve a perfectly standard web server, with an API to launch a special OS client with slightly more native integration(Toolbar icons, closing the process when the browser closes, etc), to make native app dev easier and hopefully more popular.

Security sandboxes mostly work. People aren't constantly getting viruses from clicking the wrong link, at least not quite as much. They're not perfect, but they're better than having to completely trust 100 different sites unsandboxed, and they can be improved. I'd rather have crappy security than no security at all.

Re:Downfall Attacks by throwaway892238 on Tuesday August 08, 2023 @09:42PM (#37057774)
If by "highly standardized" you mean "you don't get a choice in what you can do or how it works", I agree.

Native mobile apps thrive despite this magical web browser working everywhere, because the web browser simply doesn't do what native apps do. You may enjoy that, but a million businesses and billions of users out there don't agree, because they use native apps. There were 255 billion native mobile app downloads in 2022, generating billions in revenue. That's not a mistake or accident; that's a market filling a need.

If we really want an application platform that works everywhere, then let's stop dicking around with these stupid document hypertext viewers and build a real app platform that works everywhere.

Re:Downfall Attacks by r3trohack3r on Tuesday August 08, 2023 @09:55PM (#37057862)
> Native mobile apps thrive despite this magical web browser working everywhere

There’s also user behavior. Many users are conditioned to get software through the App Store. I’ve seen this be a driving factor for quite a few web native applications spinning up native dev teams and shipping native clients.

Many folks are surprised to see just how far you can push a browser app and how small the gap between web and browser has become for well built applications, including native-like things like Bluetooth, NFC, USB, etc. (see: https://youmightnotneedelectron.com/)

Have hacked with quite a few devs/companies that had a fully functioning offline capable web native application. The most requested feature they’d get? “I want to download it from the App Store.” (Usually in the form of “I can’t find your app in the App Store”)

I suspect this is why the PWA experience on mobile devices hasn’t been well paved and why some App Store policies call out “don’t just wrap a browser view in a native app” - they want to keep users coming in the front door of a marketplace where they collect a cut off the top of all transactions.

Re:Downfall Attacks by eternityforest on Wednesday August 09, 2023 @12:18AM (#37058636)
We really need to standardize "just wrapping a browser view". Why are we shipping a whole browser when we could be shipping a zip file of HTML with some metadata, and maybe a few tiny native helper utilities?
Re:Downfall Attacks by asaddhamani on Wednesday August 09, 2023 @12:56AM (#37058851)
This is how PWAs work on smartphones. I recall coming across some electron alternatives that use the system webview and those are able to generate binaries hundreds of kilobytes in size. But you lose out on access to many of the modern APIs due to Safari there.
Re:Downfall Attacks by vbezhenar on Wednesday August 09, 2023 @01:08AM (#37058923)
This is standardized for many years and called PWA. There are ways to interact with native helper utilities as well (simplest is just run http server on localhost), but not for mobile apps.

For mobile apps you can use webview component which will use system browser. You don't need to ship the entire browser (actually you can't even do that on iOS).

Re:Downfall Attacks by andrewaylett on Wednesday August 09, 2023 @05:17AM (#37060323)
You can ship web apps via the Play Store for Android: https://developers.google.com/codelabs/pwa-in-play

But you're not allowed to for iOS: https://developer.apple.com/app-store/review/guidelines/#min...

Re:Downfall Attacks by parasubvert on Tuesday August 08, 2023 @10:06PM (#37057925)
You are delusional and terribly out of your depth if you think even a sizable minority has any interest in getting rid of hypertext and the web. Networked native apps are useless without the web architecture as the glue to integrate between them. It is highly likely that URIs, HTTP and hyperlinks will still be a foundational elements of our technology world in a hundred years.
Re:Downfall Attacks by lenkite on Wednesday August 09, 2023 @12:24AM (#37058672)
HTTP != HTML/CSS. You are applying a [Strawman Argument]
Re:Downfall Attacks by parasubvert on Wednesday August 09, 2023 @07:54AM (#37061303)
Add in URI. They're all necessary. Do you really think hypertext is dead? It's just evolving.
Re:Downfall Attacks by eternityforest on Wednesday August 09, 2023 @12:15AM (#37058621)
There are probably more website visits than that. People download games and bank apps and things like that, stuff they expect to use frequently, want fast access or offline ability, of they need hardware access.

There are still tons of things that don't need an app. Things that are inherently online and not accessed frequently work fine as sites.

The web doesn't limit what you can do that much, it limits how you can do it, which I think is a good thing. Less to break (Android API levels have the same effect) with fewer original lines of code. Less focus on clever and interesting code and more focus on UI and features (Although they try their best to reinvent the same js framework 1000 times).

A lot of the limitations are probably just Mozzilla hating anything that could be used for tracking, and not trusting users to manage permissions. The trend has been pretty strongly towards making the web very close to native apps, with all kinds of APIs.

Native apps fill a use case very well, that the web does not. That doesn't make the web obsolete.

Re:Downfall Attacks by pulpfictional on Wednesday August 09, 2023 @06:11AM (#37060626)
> A lot of the limitations are probably just Mozzilla hating anything that could be used for tracking, and not trusting users to manage permissions.

Don't denigrate Mozilla for protecting users. There are a lot of privacy issues that can't be addressed by permissions models, Android serves as an example of that. Enumeration is not effective.

If Mozilla are standing in the way of invasive webpages, more power to them.

Re:Downfall Attacks by kbenson on Wednesday August 09, 2023 @12:39PM (#37065268)
> If by "highly standardized" you mean "you don't get a choice in what you can do or how it works", I agree.

That is exactly what standardization means, by definition, both dictionary and colloquially.

Re:Downfall Attacks by masswerk on Wednesday August 09, 2023 @12:03AM (#37058561)
> I'd rather we go the other way, and build the browser into the OS

This didn't work out that great with MSIE.

Re:Downfall Attacks by eternityforest on Wednesday August 09, 2023 @01:30AM (#37059029)
I'd didn't work for Firefox OS either, and I'm not exactly sure why.

But it seems to have worked great for years for Chromebooks!

Re:Downfall Attacks by macinjosh on Wednesday August 09, 2023 @10:08AM (#37062881)
> really all you need is bytecode that calls an ABI, and a widget toolkit that talks to a rendering API

Browsers have a 2D renderer (canvas) and you can write your GUI code in C++, Rust, or whatever and compile it to WASM. Some widget toolkits for this even exist already. If this were a superior model it would have taken over by now? I guess you are after deeper integration with the desktop environment?

Re:Downfall Attacks by ogoffart on Wednesday August 09, 2023 @10:46AM (#37063506)
The challenge with toolkits confined to <canvas> rendering is their inability to effectively utilize the browser's integration with the OS. Key components like font rendering, input methods (including standard key shortcuts and behavior within input fields), selection handling, image decoding, network stack, native-like scrolling, and accessibility features need to be recreated from scratch. A web toolkit must use the DOM for optimal performance. (and therefore lower to HTML)
Re:Downfall Attacks by polynomial on Wednesday August 09, 2023 @11:44AM (#37064409)
Presume you did not mean bytecode that calls ABI, but rather API? (ABI is a Web3 thing.)
Re:Downfall Attacks by efreak on Saturday August 12, 2023 @07:35PM (#37105178)
> In computer software, an application binary interface ( ABI) is an interface between two binary program modules. Often, one of these modules is a library or operating system facility, and the other is a program that is being run by a user.

https://en.wikipedia.org/wiki/Application_binary_interface

Re:Downfall Attacks by wryanzimmerman on Friday August 11, 2023 @12:01PM (#37090210)
But “regular old apps” don’t do all the same things.

The whole point of properly developing web apps is that html/css indicates a certain level of semantic understanding which allows for different interpretation in different contexts.

If you build a web app well, you build it to be a good experience on a computer for a power user with a huge screen and a keyboard for shortcuts, good for a user on a tiny touch screen, good for a blind person who doesn’t use a screen, and good for robots to parse and index. It should even be good for someone on an iPad with a mouse or a pencil which interprets the whole concept of the mouse differently from the desktop user’s mouse.

The agreed-upon semantics of HTML and the separation of visual styling into CSS is what allows you to take a step beyond just building an app and add a layer of “say what you mean” such that human and non-human users can re-interpret it into their own devices, use cases, and specific needs.

Web frontends are at their best when you don’t expect to perfectly control the end user experience, but try to convey the semantic meaning as perfectly as you can so it can be interpreted into good experiences even in situations where the display is wildly different than originally intended.

Re:Downfall Attacks by hyperman1 on Tuesday August 08, 2023 @02:33PM (#37053517)
I've wondered if we can't give a dedicated core to the browser. Of course, then web pages can steal from other web pages. Maybe task switching needs to erect much higher barriers between security contexts, a complete flush or so?
Re:Downfall Attacks by Negitivefrags on Tuesday August 08, 2023 @02:42PM (#37053620)
It probably would be possible to add a new instruction that causes the processor to flush all state in exchange for sacrificing task switching speed. Of course it might still have bugs, but you could imagine that it would be easier to get right.

Of course, it’s not doing much for the billions of devices that exist.

I would hope that we could find a software solution that web browsers can implement so that devices can be patched.

Either way, I would want such a solution to not compromise performance in the case where code is running in the same security context.

This is what I don’t like about existing mitigations. It’s making computers slower in many contexts where they don’t need to be.

Re:Downfall Attacks by zamadatix on Tuesday August 08, 2023 @04:41PM (#37055165)
Software can choose to invalidate all cache, fence access, and the like today. It may not be a single instruction but it's not far off. Usually something like "just don't JIT JS to native code" is "secure enough" most don't want to go down that route. The mitigations are the way to keep the most overall performance, so they are the most popular.
Re:Downfall Attacks by bee_rider on Tuesday August 08, 2023 @02:44PM (#37053638)
I wish chips would come with a core devoted to running this kind of untrusted code; maybe they could take something like an old bonnell atom core, strip out the hyper threading, and run JavaScript on that.

If a script can’t run happily on a core like that, it should really be a program anyway, and I don’t want to run it.

Re:Downfall Attacks by hsbauauvhabzb on Tuesday August 08, 2023 @02:53PM (#37053755)
I’m not saying you’re wrong, but I have a hard time believing web developers would be capable of writing code efficient enough to share a single core. LinkedIn was slamming my CPU so much that I isolated it in a separate browser
Re:Downfall Attacks by bee_rider on Tuesday August 08, 2023 @02:58PM (#37053844)
I think you are right, my wish involves living in a slightly different universe where the web has taken a slightly less silly direction of development.
Re:Downfall Attacks by moonchild on Tuesday August 08, 2023 @06:35PM (#37056391)
You would need a dedicated core per tab.

Partitioning tabs according to trust would be ~fine, but laborious and error-prone.

Re:Downfall Attacks by kzrdude on Wednesday August 09, 2023 @05:54AM (#37060522)
Normally only one tab is in view at a time. Probably a bunch of use cases would hate this, but what if all background tabs just got very sparse time-share of a core and the foreground tab a dedicated core?
Re:Downfall Attacks by malfist on Tuesday August 08, 2023 @02:26PM (#37053427)
This is an unreasonable position. Vulnerabilities can be fixed
Re:Downfall Attacks by layer8 on Tuesday August 08, 2023 @02:30PM (#37053473)
You are assuming that white hats discover them early enough before black hats.
Re:Downfall Attacks by 2OEH8eoCRo0 on Tuesday August 08, 2023 @02:32PM (#37053490)
The mitigation here can take a up to a whopping 50% performance penalty. At what point can customers return these CPUs for either being defective or for false advertising? If they can't safely meet the target performance they shouldn't be doing these tricks at all.
Re:Downfall Attacks by dcow on Tuesday August 08, 2023 @03:17PM (#37054124)
Did processor companies ever advertise that processors guaranteed certain security properties of the software they execute?

Aren't system designers at fault for coming up with the idea of a context switch and assuming that we can trust a processor not to leak details across artificial software constructed boundaries?

Re:Downfall Attacks by rvnx on Tuesday August 08, 2023 @04:51PM (#37055284)
But wait, how is it even considered a processor bug ?

You write data inside the registers, yes, other processes can read these registers.

It always been like this, and is absolutely normal.

It's the responsibility of the operating system to clear the registers if it is switching context.

Re:Downfall Attacks by IlliOnato on Tuesday August 08, 2023 @05:30PM (#37055731)
Well, it's not exactly what branch prediction does. If I understand it correctly, it does some additional writing to registers (?) and to the cache on its own, and it can leak your data even if you clean up everything you wrote explicitly. Now, did the vendors promise that this would not happen? I doubt it.
Re:Downfall Attacks by duped on Tuesday August 08, 2023 @06:01PM (#37056037)
> But wait, how is it even considered a processor bug ?

These side channel attacks allow an attacker to read registers from other processes before any context switching has occurred, or independently of any context switching (even if the OS has been written to correctly clear state).

Re:Downfall Attacks by 3np on Tuesday August 08, 2023 @05:11PM (#37055519)
According to OP, SGX is also vulnerable. There has been quite some marketing around the supposed security properties of SGX, yes.
Re:Downfall Attacks by IlliOnato on Tuesday August 08, 2023 @05:27PM (#37055698)
Yeah, I am sure the customers can sue, but would they win? I find it unlikely.
Re:Downfall Attacks by CanaryLayout on Tuesday August 08, 2023 @10:16PM (#37057978)
AMD has the same problem (Inception). Predictive instruction pipelining makes timing and context separation harder. Even if you are on s390x or M1 it's not like you are safe either. This is a whole field of study.

In my mind the better mitigation is to put control over trusted code back to the user and to do that you have to add less-performant cores onto the die and force the operator to elevate (or not) to SMT.

Right now it's an all-or-nothing proposition for the whole board. I would like to think that you can take your untrusted code and stick it on the less-performy cores with the safer instruction pipelining scheme so an actual physical barrier exists.

If that was in the chip architecture, then it's up to OS vendors to surface it in a way that developers understand, and then down to the operator to decide upon configuration.

You are never going to get a perfect-solve from the chipmakers on this where the consumer has to do nothing.

Re:Downfall Attacks by CanaryLayout on Tuesday August 08, 2023 @09:38PM (#37057760)
> Aren't system designers at fault for coming up with the idea of a context switch

Context switching was in the Apollo 11 guidance computer https://www.youtube.com/watch?v=xx7Lfh5SKUQ

The problem is that cycle-speed boosts left the industry cic. 2012-or-so. All the perf boost we get these days is by optimizing the instruction sequencing and multiprocessing. This is why languages like Go popped up (making the advanced programming topic of multiprogramming an entry-level accomplishment) and you now see the 'async' decorator plastered everywhere in C#, and so-on.

Keeping the security context intact and separated is a gargantuan task.

To me it makes more sense to add "lousy cores" to the die and force the operator to declare the launching threads are safe for SMT, else the job gets scheduled to the less-performing core where the pipelining is safer. It delegates responsibility to the chip-gobbler, forces them to understand the tradeoff for performance, until some elegant solution is found for side channel attacks like this.

Re:Downfall Attacks by autoexec on Wednesday August 09, 2023 @02:51AM (#37059460)
> Did processor companies ever advertise that processors guaranteed certain security properties

It's not the guaranteed security as much as the advertised speed that's the issue. If they put out a chip which could only be used at half the advertised speed or else it would catch on fire, nobody would argue that they should be let off the hook because they didn't guarantee that the chips were fireproof in their ads.

If the chips can't perform at advertised speeds safely during typical use they're not delivering what was advertised.

Re:Downfall Attacks by dcow on Wednesday August 09, 2023 @02:53PM (#37066957)
They do perform at the advertised speeds, just not in a multi-user soft context switched situations.
Re:Downfall Attacks by hinkley on Tuesday August 08, 2023 @02:43PM (#37053634)
Vulnerabilities are like unreliable cars. It doesn't matter so much if they can be fixed, it's the very, very high opportunity cost of needing to be fixed, when you were busy doing something else of high value.

Responsible people tend to pick the small consequence now over the unknowable distribution of consequences later.

Re:Downfall Attacks by pseudalopex on Tuesday August 08, 2023 @04:18PM (#37054917)
> Vulnerabilities can be fixed

Not always the damage.

Re:Downfall Attacks by jjav on Tuesday August 08, 2023 @05:00PM (#37055379)
> This is an unreasonable position. Vulnerabilities can be fixed

That's a highly optimistic position, to the point of being almost wishful thinking.

The vulnerability being talked about today has been around since 2014 according to the report. Possibly being exploited for unknown number of years since. Sure, maybe we can workaround this one, now.

Other similar ones to be published years into the future are also there today being likely exploited as we speak.

Running untrusted code on the same silicon as sensitive code (data), is unlikely to ever actually be truly safe.

Re:Downfall Attacks by alerighi on Tuesday August 08, 2023 @05:59PM (#37056014)
The real problem here is the x86 architecture. We should stop using it. It's too complex, it's full of stuff made for backward compatibility purposes, it has too many instructions that may have unpredictable results, and for that exact reason it's extremely difficult to get things right. Somewhere in the thousands of instructions that it has you will surely find a bug.

We should move forward. Apple did a great job with the M{1,2} processors. Not only they are fantastic in terms of performance and energy usage, but also (to this moment) they don't seem to suffer from these issues. The reason is that the CPU is simpler, and a simpler thing is easy to design right in the first place.

Re:Downfall Attacks by pseudalopex on Tuesday August 08, 2023 @07:20PM (#37056783)
Meltdown and Spectre affected ARM and POWER CPUs. Apple's included. PACMAN affected M1. The real problem is speculative execution seemingly.
Re:Downfall Attacks by CanaryLayout on Tuesday August 08, 2023 @08:52PM (#37057444)
Performance sorta hinges on it. It could be that the cheaper way the chipmakers deal with it is to phase out the 4core set and push the cores on a die higher, and to do that--incorporate an older core design into dedicated cores for untrusted code.

This would also require changes at the OS-makers to tag thread forks for trusted and untrusted behavior.

Essentially: instead of shutting down SMT for the entire machine, make the customer "prove" the code is safe for elevation or else it gets scheduled as non-SMT.

Re:Downfall Attacks by pseudalopex on Wednesday August 09, 2023 @04:09PM (#37067725)
> Performance sorta hinges on it.

Yes. I did not mean to imply the real problem had a simple solution.

Re:Downfall Attacks by petergeoghegan on Tuesday August 08, 2023 @10:55PM (#37058194)
> The real problem here is the x86 architecture

Even if we could say for sure that x86 has been disproportionately affected by speculative execution bugs (which already seems dubious), that could easily be due to a kind of selection bias. Presumably security researchers as a group more or less focus on the most popular and relevant ISAs/microarchitectures.

Re:Downfall Attacks by paxys on Tuesday August 08, 2023 @03:08PM (#37053994)
So one should never install software from more than one company on a computer?
Re:Downfall Attacks by CanaryLayout on Tuesday August 08, 2023 @09:26PM (#37057690)
You install App X from Vendor Y on to vSystem Z.

Vector is found to get untrusted code C to run in the user area on Z via exploit in X that Y has not acknowledged, so researchers publish a CVE with an example.

C starts trying to read memory from threads shared on same vCPU, revealing db connection string used by X, the nonce and salt for hashing.

Attacker now has the keys to the entire kingdom.

Re:Downfall Attacks by bee_rider on Tuesday August 08, 2023 @03:13PM (#37054059)
It is sort of like the second law of thermodynamics (before statistical mechanics came around and cleared things up): sure, maybe not well founded in some analytical or philosophical sense, but experimentally bulletproof to the point where anyone who tries to sell you otherwise would be regarded very suspiciously. The idea that any two programs running on a computer can be prevented from snooping on each other.
Re:Downfall Attacks by kazinator on Tuesday August 08, 2023 @04:32PM (#37055082)
> Once again it seems clear that running code from two security domains on the same physical processor cores is just not possible to get right, and we should probably just stop doing it.

Yes. This has had its heyday: the era of the time-shared systems, from the 1960's, right into the 1990's (Unix systems with multiple users having "shell accounts", at universities and ISP's and such). These CPU attacks show us that secure time-shared systems where users run arbitrary machine code is no longer feasible.

There will still be time sharing where users trust each other, like workers on the same projects accessing a build machine and whatnot.

Re:Downfall Attacks by bhk on Tuesday August 08, 2023 @04:54PM (#37055313)
Once you "dedicate cores to specific VMs" you will find that chip designers can also screw that up, just like they can screw up protection within a core. So you might as well proclaim that "impossible to get right" preemptively.
Re:Downfall Attacks by quickthrower2 on Tuesday August 08, 2023 @06:33PM (#37056380)
They said physical processor. I took this to mean chip. Of course you can't trust chips on the same mother board (there could be a bug where they can read the same memory), so you need a network boundary. So different rack on the server, for each [boundary, however you define that...]
Re:Downfall Attacks by bhk on Tuesday August 08, 2023 @09:18PM (#37057634)
They said physical processor core, and elsewhere just core. That does not mean chip.
Re:Downfall Attacks by bhk on Tuesday August 08, 2023 @09:37PM (#37057752)
Regarding VM/core/chip/motherboard boundaries ...

A number of vexing CPU security vulnerabilities have resulted from a general class of optimizations that share cache resources (memory, TLBs, branch prediction tables, etc.) across different domains, which enables cross-domain attacks.

There is a potential for vulnerabilities even when the domains are separated by a network boundary ... if those domains view the world through some shared cache at the network layer.

Re:Downfall Attacks by jl6 on Tuesday August 08, 2023 @05:56PM (#37055979)
There’s a marketing opportunity here to put multi-core back in the spotlight. Most workloads have reached the point of diminishing returns for adding more cores to a CPU, but if it turns out we need more cores just so we can run more concurrent processes (or browser tabs) securely, then here come the 128-core laptop chips…
Re:Downfall Attacks by brundolf on Wednesday August 09, 2023 @01:23AM (#37058987)
Intel playing 4D chess to sell more new hardware
Re:Downfall Attacks by dgb23 on Wednesday August 09, 2023 @04:10AM (#37059909)
From a user’s perspective I often think that applications which run multiple processes, demand multiple threads and large chunks of memory are too entitled.

I know it’s a (not even) half baked thought. But there’s something to that. We never really think of “how many resources is this application allowed to demand?”

Software would be orders of magnitudes faster if there was some standard, sensible way of giving applications fixed resource buckets.

Re:Downfall Attacks by hinkley on Tuesday August 08, 2023 @06:08PM (#37056109)
This seems like a job for Arm or RISC-V or ???

Sacrifice IPC/core to reduce gates per core, stuff more cores into a square centimeter, pin processes to cores or groups of cores, keep thread preemption cheap, but let thread migration take as long as it takes.

Arm already has asymmetric multiprocessing, which I feel like is halfway there. Or maybe a third. Fifteen years ago asynchrony primitives weren’t what they are today. I think there’s more flexibility to design a core around current or emerging primitives instead of the old ways. And then there are kernel primitives like io_uring meant to reduce system call overhead, amortizing over multiple calls. If you split the difference, you could afford to allow individual calls to get several times more expensive, while juggling five or ten at once for the cost of two.

Re:Downfall Attacks by accrual on Tuesday August 08, 2023 @06:54PM (#37056558)
> Once again it seems clear that running code from two security domains on the same physical processor cores is just not possible to get right, and we should probably just stop doing it.

I believe this is why OpenBSD disabled SMT by default in June of 2018. [0]

It can still be enabled with a simple 'sysctl', though.

[0] https://www.mail-archive.com/[email protected]/msg9...

Re:Downfall Attacks by kristjank on Wednesday August 09, 2023 @03:11AM (#37059568)
Do you really think that giving up on getting things done right is the way to progress computing? While AMD has it's own spectrum of problems and not-quite-there security features, most of their vulnyerabilities have been fixed in microcode shortly after disclosure.

We as an industry should stop excusing chipmakers from doing their jobs and reject broken products. It's brand loyalty all over again, like when Apple does something retarded like losing the headphone jack and the whole industry follows, breaking years of interoperability.

When the products/services we buy break, we should demand better, not lower our expectations.

Re:Downfall Attacks by demindiro on Monday August 21, 2023 @04:31PM (#37214963)
I've wondered for a while whether it would make sense to split the CPU into a "IOPU" and a "SPU"

- The IOPU would be responsible for directing other hardware on the system. It doesn't need to be very performant.

- The SPU would be optimized for scalar and branch-heavy code that needs to run fast.

The SPU could have minimal security, just enough so it can't read arbitrary memory when fetching from RAM. It would only run one program at a time, so speculation shouldn't be an issue.

At least on my system few programs need a lot of processing power (and even then only intermittently), so little task switching should occur on an SPU.