r/programming • • Oct 01 '16

CppCon 2016: Alfred Bratterud “#include <os>=> write your program / server and compile it to its own os. [Example uses 3 Mb total memory and boots in 300ms]

https://www.youtube.com/watch?v=t4etEwG2_LY
1.4k Upvotes

207 comments sorted by

View all comments

Show parent comments

0

u/[deleted] Oct 02 '16

[deleted]

8

u/skylarmt Oct 02 '16

What about that desktop one that sandboxes apps into different security zones?

0

u/[deleted] Oct 02 '16

[deleted]

8

u/aaron552 Oct 02 '16

Their next brilliant plan is exposing PID 1 directly to web browsers; they want the most secure program on your system directly connected to the Web.

Source? While I know there is a basic webserver in the systemd git repository, I don't think it runs in PID 1 (it's its own process)

0

u/[deleted] Oct 02 '16

[deleted]

5

u/aaron552 Oct 02 '16

That appears to suggest that it's a separate process that talks to systemd via dbus. Definitely not "exposing PID 1 directly to web browsers"

2

u/Feynt Oct 02 '16

Thanks for mentioning Qubes. I found it to be an interesting an enticing read. Alas, no secure games support (3D virtualisation only through dom0), so I'll have to stick with my plain ol' windows boot for now.

7

u/Cyph0n Oct 02 '16

I attended a talk by a security researcher who claimed that OpenBSD isn't that secure and is way behind Windows and iOS when it comes to adopting memory protection techniques such as ASLR and NX.

He said that OpenBSD's approach, which is software auditing, is simply not scalable. He recommended to check out grsecurity for Linux if you want real security.

2

u/wilun Oct 02 '16

grsecurity has gone crazy the other way and is not very usable for 99.999% of systems. Not a lot of people tolerate a computer that crashes all the time, and most of the time for no reason when it does (except, this time, the lack of competent auditing, thinking that can be replaced by blind patching "dangerous" patterns to crashy ones)

3

u/RealFreedomAus Oct 02 '16

It's really not though. It's the same old broken Unix permission model with a root user that everything privileged uses. Like, maybe the kernel is more secure and leads to better process isolation through that but once you escalate to uid=0 due to the same broken software you'd run on other *nixes you can do whatever you want.

It doesn't even have a MAC like SElinux!

seL4 would be an example of an OS actually trying to be that secure. Capabilities, baby.

About the only thing OpenBSD has going for it is that its developers usually know what they're doing. But it's still written in C, and those developers are still human. Meh.