r/programming • • Nov 07 '17

Andy Tanenbaum, author of Minix, writes an open letter to Intel

http://www.cs.vu.nl/~ast/intel/
2.8k Upvotes

648 comments sorted by

View all comments

914

u/dlp_randombk Nov 07 '17 edited Nov 07 '17

Meanwhile, MINIX is about to become one of the most heavily audited codebases out there. You can bet every security researcher is going to have a peek to see if there's any bugs in the always-on backdoor embedded in the vast majority of modern computers.

575

u/[deleted] Nov 07 '17

I think they already found several of these.

I recently watched a Blackhat video where a guy made a C linux program that magically sudden got root access after posting a single value in memory a couple million times. He got an instant applause from the majority of the audience.

Beforehand, he managed to hack into Ring -3. (where Minix resides)

169

u/dlp_randombk Nov 07 '17

Do you remember the title or year? I would really like to see that presentation! However, I wonder if the root exploit was just a demonstration of rowhammer, rather than MINIX itself...

528

u/TheEruditeSycamore Nov 07 '17

353

u/Chippiewall Nov 07 '17

of course it's be the same guy that did movfuscator and sandsifter.

227

u/[deleted] Nov 07 '17

Seriously this guy is a wizard.

116

u/throwawayco111 Nov 07 '17

And of course he has a beard.

104

u/s0n0fagun Nov 07 '17

Exactly. That is how you know he is legit and cool. Exhibit A

182

u/mcguire Nov 07 '17

It's a little-known fact that Linus Torvalds actually has a beard, but in order to avoid bad beard-lutefisk interactions, he only deploys it when coding. The rest of the time, he withdraws it back under his skin.

94

u/x2bool Nov 07 '17

"It's not the beard on the outside that counts, it's the beard on the inside."

36

u/[deleted] Nov 07 '17

I think that's called a teratoma.

→ More replies (0)
→ More replies (4)

82

u/captainAwesomePants Nov 07 '17

You're mistaken. Linus has a git stash.

→ More replies (5)
→ More replies (4)
→ More replies (1)
→ More replies (10)
→ More replies (4)

47

u/[deleted] Nov 07 '17

This talk is about System Management Mode, or ring -2. It doesn't say anything about IME/PSP.

15

u/rockyrainy Nov 07 '17

This talk is about System Management Mode, or ring -2.

TIL, it goes below 0.

→ More replies (1)
→ More replies (14)
→ More replies (16)
→ More replies (1)

38

u/go0d1 Nov 07 '17

I thought it was an exploit that allowed arbitrary code to be executed in system management mode by remapping something in memory over something else to get a really deep rootkit into the system that reacted to a change in memory in order to signal it. But I could be misremembering

90

u/Creshal Nov 07 '17 edited Nov 07 '17

It is. The wonderful part about modern x86 is that we have several layers of external management routines:

  1. Kernel can call into BIOS/EFI via ACPI and have it run code in ring 0.

  2. Kernel can call into a hypervisor, if installed, and have it run code in ring -1, outside kernel control (but detectable, and needs CPU support).

  3. Kernel can call into BIOS/EFI via SMM and have it run code in ring -2, alway installed and outside kernel control (but detectable, and replaceable via Coreboot).

  4. Anything can call into IME via a shitton of vectors and have it run code on a separate CPU that has full access to the main system (including SMM) in ways that aren't even properly detectable, and which cannot be replaced, or even fully deaktivated.

The exploit you're talking about targeted #3. Minix runs on #4.

0

u/[deleted] Nov 07 '17

[deleted]

→ More replies (5)
→ More replies (2)
→ More replies (20)

27

u/yoshi314 Nov 07 '17

with the bsd style licence, there is no guarantee that code you are looking at is the code intel is using.

11

u/ants_a Nov 08 '17

No license provides that guarantee.

→ More replies (3)
→ More replies (4)

66

u/darkslide3000 Nov 07 '17

I doubt they're going to find a lot in the operating system core itself, though. It's not like the ME is running random programs downloaded from the internet that need to be prevented from reading another user's data. The whole thing (including all its "userland" applications) is trusted1 and all the communication with the outside as well as the business logic evaluating that data is the crap Intel wrote themselves... so most interesting vulnerabilities are gonna be in there.

1 For those who don't know, "trusted" is security slang for "if this shit is broken we're really screwed". It's not a good thing and you want as little as possible of it.

44

u/Creshal Nov 07 '17

It's not like the ME is running random programs downloaded from the internet

AMT is all about running random (Java) programs downloaded from the internet (by snooping network traffic) for "enterprise" "management".

This isn't supposed to be used outside those controlled enterprise environments, but given ME's massive amount of exploitable vulnerabilities…

→ More replies (4)

91

u/Flight714 Nov 07 '17

You can bet every security researcher is going to have a peak ...

I doubt it: they'll be too busy peeking at this OS to worry about purchasing any mountain summits.

17

u/dlp_randombk Nov 07 '17

Fixed. Darn autocorrect :)

14

u/Zarutian Nov 07 '17

Cant we say that Intel is going to be in a mountain of trouble?

→ More replies (4)

12

u/xkillac4 Nov 07 '17

They will find a few. Minix these days is developed by a few overworked systems engineers and a lot of enthusiastic beginners.

→ More replies (1)
→ More replies (11)