6 ms·
I'm surprised this isn't getting much attention here. There really isn't a technological solution for class breaks. Go big and you replace one kind of class br
by rm_-rf_slash 10y ago
I'm surprised this isn't getting much attention here.
There really isn't a technological solution for class breaks. Go big and you replace one kind of class break with another (a top-tier security system for hotel card readers just focuses the attacks on that system). Go small and it isn't cost effective or plausible at scale (everybody install gentoo! Compile your own kernels!).
Honestly, I'm stumped. We rely on these systems more and more to squeeze out every bit of productivity we can get, but that only leaves us at the mercy of our systems.
Is it even possible to fix this kind of situation before it really turns on us, or are we doomed to suffer a cataclysm we cannot yet imagine?
- irq-1 10y agoAs he said, we do have some experience with Class Breaks. Off the top of my head: Palm Pilots had a little button on the back to reset them. Chrome Books have a read-only OS/boot loader. Old software licensing dongles covered the chips with epoxy. We use VLANS to separate classes of traffic. x86 uses rings to separate classes of code. Firewalls and QOS systems separate classes of traffic.
- wyldfire 10y agoThe cure is worse than the disease. But it's coming. It will come as a devastating one-two punch: the end of general purpose computing devices and the rise of a publicly-identified Internet. The former will be phased in as countries legislate it. Legislators won't be concerned with the slippery slope between abacus and iphone, the courts will likely draw a distinction somewhere around anything north of "silicon-based electronics with the right resources for an IP stack". A few countries will be bastions of Free Computing, but many/most will draw up similar laws. The latter will be held back by Metcalfe's Law until some near-global momentum can be built. It would likely take a simultaneous attack on many global corporations/political parties/beloved individuals, but it seems like that's just a matter of time. Faced with repeated attacks, the public won't accept "but we designed it that way intentionally" as valid.
- zevets 10y agoAbandoning general purpose computing is too crazy, as it amounts to throwing away software. The anonymous internet is a dead-man walking, but silicon valley is as complicit in this as the government will be. However, software engineering will change into a much more regulated environment. Writing software for the web will eventually become like writing software for the space shuttle: slow, rigorous and very expensive. It will also kill the hacker culture, as hacking together a piece of software will become like hacking together a bridge: illegal.
- rm_-rf_slash 10y agoIANAL but I assume that if I purchased a tract of land and built a bridge on it, I could create it as I please, given that I would be liable for damages should the bridge break and harm somebody on my property, not unlike a slip-and-fall. I for one would prefer most vital software to be developed slowly and methodically. We insist on strict standards for our bridges and roads - why don't we do the same for our information infrastructure? Move fast and break things can break people too.
- zevets 10y agoI would prefer software infrastructure be developed rigorously as well, as I think would most people. But that will lead to regulations or at best, expensive insurance company mandated standards. But before we celebrate its demise: the side effect will also be the same ones seen in the civil engineering world: creative ideas take decades to come into existence. As you mentioned in your other comment, there was a time when railroad building was exciting, and in that time, people died doing exciting engineering. Civil engineering tools are now orders of magnitude better than they were years ago, but there hasn't been an explosion in creative structures, even at the lowest level. I also think many of the perks (ie: salary) of the software engineering industry are intimately related to the 'move fast and break things' culture. When that leaves the industry, it may be less of a good riddance than you think. This may be my perspective as an outsider though, I don't work in software. But I have considered making the jump to software engineering, because 'moving fast and break things' sounds fun. Fundamentally we agree, but I'm a pessimist.
- elihu 10y agoI think we can lower the risk of these kinds of attacks a lot by reducing the amount of "dangerous" code that runs on devices. There are several ways to do this: run stripped-down embedded OSes and software that only have the bare minimum functionality they need to do what they do, transition as much C/C++ code as possible to Rust, Haskell, Agda, or whatever other higher level language is suitable to the requirements of the application, and use containers/capabilities/sandboxes to restrict potentially unsafe code from interacting with the rest of the system in ways that aren't absolutely necessary to the application. So, we do have some technical solutions that could greatly reduce the risk. I think the main barriers preventing these techniques from being used as widely as they should right now are that 1) secure and insecure products are basically indistinguishable to consumers, so there is little economic incentive on the part of product manufacturers to ensure their products are secure, 2) we have an entrenched programmer culture (especially in systems programming) that thinks the solution is to "be more careful" and "don't hire dumb programmers", and 3) we have a whole lot of really complicated C and C++ programs that work really well and people are happy with them whereas if you want to ship a product with, say, all of the code from the OS up written in Rust, you're sort of blazing your own trail and you'll have to write a lot of it yourself.