zlacker

Reasonably Secure Computing in the Decentralized World

submitted by Dyslex+(OP) on 2017-10-27 08:13:54 | 119 points 40 comments
[view article] [source] [go to bottom]

NOTE: showing posts with links only show all posts
2. jstewa+B6[view] [source] 2017-10-27 09:53:18
>>Dyslex+(OP)
Classic Theo:

"x86 virtualization is about basically placing another nearly full kernel, full of new bugs, on top of a nasty x86 architecture which barely has correct page protection. Then running your operating system on the other side of this brand new pile of shit.

You are absolutely deluded, if not stupid, if you think that a worldwide collection of software engineers who can't write operating systems or applications without security holes, can then turn around and suddenly write virtualization layers without security holes."

https://marc.info/?l=openbsd-misc&m=119318909016582

◧◩
8. jerhei+hb[view] [source] [discussion] 2017-10-27 11:07:28
>>jstewa+B6
Nowhere did Rutkowska claim that hypervisors are perfect, as she says[1]:

Hypervisors do not add security by themselves. But they make it possible to implement security by isolation cheaply.

Cheaply means: 1) preserving backward compatibility with apps & drivers, 2) with drastically reduced attack surface due to smaller APIs. (Note that the HVM hypercall API isn't very big. Mostly physical memory ops, vCPU ops, physdev stuff, evchans and sched-related stuff.[2])

[1] : https://twitter.com/rootkovska/status/843031083398692866

[2] : https://twitter.com/tehjh/status/858321760940437504

11. xj9+zi[view] [source] 2017-10-27 12:40:08
>>Dyslex+(OP)
i'm developing an os with an architecture similar to qubes, in part because i disagree with the idea of using hardware virt as an isolation mechanism. i think this can be done with os virtualization much more cheaply without being much more difficult to secure. still quite early in the project, but i think we're touching on some interesting stuff.

https://www.heropunch.io/tomo/os/grid/

https://www.joyent.com/tech-videos/going-container-native

https://genode.org/about/index

◧◩◪
14. Dyslex+Bn[view] [source] [discussion] 2017-10-27 13:26:41
>>walter+ej
looks like it: https://genode.org/about/index

>> the framework aligns the construction principles of L4 with Unix philosophy. In line with Unix philosophy, Genode is a collection of small building blocks, out of which sophisticated systems can be composed. But unlike Unix, those building blocks include not only applications but also all classical OS functionalities including kernels, device drivers, file systems, and protocol stacks.

◧◩◪◨
15. hpcjoe+No[view] [source] [discussion] 2017-10-27 13:37:49
>>jstewa+O7
ARM isn't going to displace Intel, or more correctly, x86, any time soon. My rationale is simple, in that there are many different ARM vendors, with many different (yes) ABIs and toolchains, no real industry/market push behind any of them specifically in this space. There is no consensus ARM ABI/chip/arch to replace x86. There are a few vendors fighting, hoping to do something. But no one whom is winning this war. So x86 remains, and IMO will remain, unchallenged.

Power series is a possible contender, but then you see the glory that is IBM behind it, and you know that no one wants to deal with that on the larger time scale (swap Intel for IBM? Why do this?)

Sparc is all but dead. MIPS is effectively dead. I've heard good things on RISC-V, though the question is, who will want to produce a non-differentiated CPU, when others can do this as well ... that is, you can't really extend RISC-V unless you break the ISA.

Then there are the toolchain issues.

Having experienced the Calxeda failure as a partner, realizing that the ARM marketing claims of low power Intel replacement were complete nonsense[1], I am not all that interested in climbing back on that particular heavily hyped horse.

[1] https://scalability.org/2013/12/the-evolving-market-for-hpc-... search for ARM.

27. shmerl+jI[view] [source] 2017-10-27 15:27:52
>>Dyslex+(OP)
The event was hosted by the Golem project: https://golem.network
◧◩◪
29. xj9+IM[view] [source] [discussion] 2017-10-27 15:53:22
>>jerhei+Sz
https://genode.org/documentation/release-notes/13.02#DMA_pro...
◧◩◪◨⬒
32. sniker+fW[view] [source] [discussion] 2017-10-27 16:59:33
>>jerhei+LS
> it doesn't protect you if someone exploits your browser

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

34. Immort+z21[view] [source] 2017-10-27 17:41:48
>>Dyslex+(OP)
This is very interesting! At Praecantatio, we are actually working on something similar, though instead of using blockchains, we run ours like an ad network. If anyone is interested on working on distributed computing, drop me an email. Email's in profile!

http://praecantatio.ai

◧◩◪◨
39. nickps+ni1[view] [source] [discussion] 2017-10-27 19:37:38
>>jstewa+E41
Representing high-assurance security view, Brian Snow probably said it best in his 2005 presentation:

https://www.acsac.org/2005/papers/Snow.pdf

"Given today's common hardware and software architectural paradigms, operating systems security is a major primitive for secure systems - you will not succeed without it. The area is so important that it needs all the emphasis it can get. It's the current 'black hole' of security.

The problem is innately difficult because from the beginning (ENIAC, 1944), due to the high cost of components, computers were built to share resources (memory, processors, buses, etc.). If you look for a one-word synopsis of computer design philosophy, it was and is sharing. In the security realm, the one word synopsis is separation: keeping the bad guys away from the good guys' stuff!

So today, making a computer secure requires imposing a "separation paradigm" on top of an architecture built to share. That is tough! Even when partially successful, the residual problem is going to be covert channels (i.e. side channels). We really need to focus on making a secure computer, not on making a computer secure -- the point of view changes your beginning assumptions and requirements."

Examples of those doing that in high-security field:

Memory-safety at CPU level:

https://www.cs.rutgers.edu/~santosh.nagarakatte/softbound/

Language/type-based security at CPU level:

http://www.crash-safe.org/papers.html

Capability-security at hardware level:

https://www.cl.cam.ac.uk/research/security/ctsrd/cheri/

Security via crypto additions to CPU ops:

https://theses.lib.vt.edu/theses/available/etd-10112006-2048...

Of course, gotta do a fault-tolerant architecture since broken components break the model. Several ways to do that that each involve stronger assurances of hardware plus multiple units doing same thing with voters comparing output:

http://www.hpl.hp.com/techreports/tandem/TR-85.7.pdf

https://www.rockwellcollins.com/-/media/Files/Unsecure/Produ...

So, there's designing high-assurance, secure hardware in a nutshell. The best design will require a combo of these. There will still be RF-based leaks and interference, though. Many of us are just recommending avoiding computers for secrets in favor of paper, well-paid people, and traditional controls on that. Compare the recent leaks to what Ellsberg and others in that era had to pull off to get that much intel. Night and day.

Above tech is more about protecting stuff that has to be on a computer or in an organization that refuses to ditch them. That's most of them. At least likely to protect the integrity of systems and data to reduce impact external attacks have. That's worth a lot. Interestingly, the same CPU protections can be applied to similar separation kernels, runtimes, and/or OS's to protect everything from mobile to routers to desktops to servers. Only ones I know doing anything like this are Rockwell's AAMP7G, Sandia's SSP, Microsemi's CodeSeal, and some in smartcard industry. All proprietary or government only. Someone just has to build them for the rest of us in a way that supports FreeBSD or Linux like Watchdog and CHERI teams did.

[go to top]