Slashdot Mirror


MINIX: Intel's Hidden In-chip Operating System (zdnet.com)

Steven J. Vaughan-Nichols, writing for ZDNet: Matthew Garrett, the well-known Linux and security developer who works for Google, explained recently that, "Intel chipsets for some years have included a Management Engine [ME], a small microprocessor that runs independently of the main CPU and operating system. Various pieces of software run on the ME, ranging from code to handle media DRM to an implementation of a TPM. AMT [Active Management Technology] is another piece of software running on the ME." [...] At a presentation at Embedded Linux Conference Europe, Ronald Minnich, a Google software engineer reported that systems using Intel chips that have AMT, are running MINIX. So, what's it doing in Intel chips? A lot. These processors are running a closed-source variation of the open-source MINIX 3. We don't know exactly what version or how it's been modified since we don't have the source code. In addition, thanks to Minnich and his fellow researchers' work, MINIX is running on three separate x86 cores on modern chips. There, it's running: TCP/IP networking stacks (4 and 6), file systems, drivers (disk, net, USB, mouse), web servers. MINIX also has access to your passwords. It can also reimage your computer's firmware even if it's powered off. Let me repeat that. If your computer is "off" but still plugged in, MINIX can still potentially change your computer's fundamental settings. And, for even more fun, it "can implement self-modifying code that can persist across power cycles." So, if an exploit happens here, even if you unplug your server in one last desperate attempt to save it, the attack will still be there waiting for you when you plug it back in. How? MINIX can do all this because it runs at a fundamentally lower level. [...] According to Minnich, "there are big giant holes that people can drive exploits through." He continued, "Are you scared yet? If you're not scared yet, maybe I didn't explain it very well, because I sure am scared." Also read: Andrew S. Tanenbaum's (a professor of Computer Science at Vrije Universiteit) open letter to Intel.

24 of 271 comments (clear)

  1. Three questions by Anonymous Coward · · Score: 5, Insightful

    1) Do AMD processors have similar vulnerabilities or is this an Intel issue only?

    2) Why isn't Intel being held responsible to fix this, either by action of lawmakers or through lawsuits for providing a faulty product?

    3) Shouldn't Intel either have to patch the vulnerabilities or issue a recall?

    1. Re: Three questions by DontBeAMoran · · Score: 4, Funny

      And after that, research Sony PSP.

      --
      #DeleteFacebook
    2. Re:Three questions by Anonymous Coward · · Score: 3, Informative

      1) Yes
      2) Because shitty nerds decided it was an issue.
      3) Intel doesn't need to recall anything. It is OFF by default.

      I can't emphasize this enough, it's a non-story that affects absolutely nobody except for platforms used by enterprise (think business laptops for asset tracking)

      The average person does not have the Management engine turned on, it's built into the PCH chipset, not the CPU. You can actually rip out the firmware for the IME from the BIOS if you're paranoid as hell.

      From Wikipedia https://en.wikipedia.org/wiki/Intel_Active_Management_Technology :

      "Although iAMT may be included for free in devices sold to the public and to small businesses, the full capabilities of iAMT, including encrypted remote access via a public key certificate and automatic remote device provisioning of unconfigured iAMT clients, are not accessible for free to the general public or to the direct owners of iAMT equipped devices. iAMT cannot be fully utilized to its maximum potential without purchasing additional software or management services from Intel or another 3rd party independent software vendor (ISV) or value added reseller (VAR)."

      IPMI has been around for a longer time than this, and guess what, it's basically the same thing, and you haven't server managers screaming bloody murder over it, because it has to be turned on in the BIOS, and you have to have the operating system use the watchdog process to tell it that something's amiss.

      Which is why nerds shitting their pants over this is rather amusing more than concerning. The difficulty in pulling off anything is exceptionally high, that the most likely targets are in fact enterprise systems, and the most likely people to exploit it are corporate spies, because if you can get "inside" the network physically, you can compromise anything connected by the network if the IME is enabled and poorly configured.

    3. Re:Three questions by rickb928 · · Score: 4, Insightful

      What should Intel be fixing? MINIX is licensed under the Berkeley license, and apparently they are in compliance. If there is a known security vulnerability, it was not part of the reporting, so far. Perhaps we need to trust Intel that they have secured this adequately, and I know it is common practice to declare all security to be 'vulnerable', and that is assumed to be a best practice, but to enlarge that attitude and declare all such features as unacceptable due to undisclosed or, more correctly, unknown security breaches is naive.

      Intel and others have delivered systems with these 'power off' or out of band management systems for decades. The risks are well understood by those who need to deal with them. Crying the sky is falling dilutes the real arguments, for instance the necessity of these features in consumer grade products, deployment via OS vendors such as Microsoft of widespread out of band management without explicit knowledge by consumers, and lack of useful management tools for SMB users who are not entirely aware of the risks.

      Tanenbaum's root complaint seems to be he got little or no credit. Fair enough.

      And if you don't understand how attractive an out of band management is, you don't need to. That doesn't make it less useful, just makes you unaware, and be glad you are. All that nasty stuff needed to make large organizations function is worthy of scrutiny, but best left to professionals, despite your closely held distrust of authority.

      --
      deleting the extra space after periods so i can stay relevant, yeah.
    4. Re:Three questions by Major_Disorder · · Score: 4, Funny

      Ask the question people really care about.
      Can you play Quake on the Management Engine, and if so, at what frame rate.

      --
      First law of people: People are generally stupid.
  2. No mention of AMD? by Zobeid · · Score: 3, Interesting

    Do AMD processors have any counterpart of this nonsense?

    1. Re:No mention of AMD? by Curupira · · Score: 4, Informative

      Yes, it does. It's called "AMD Secure Processor" nowadays, but it's better known as PSP (as in "Platform Security Processor", its original name).

  3. Overblown -- oh and AMD isn't any better by CajunArson · · Score: 3, Informative

    This stuff is overblown since these management engines are only ever active in a limited set of corporate environments where out-of-band management is a huge plus that actually improves security by not requiring your IT drone to physically access every system even if it's turned off.

    Oh, and don't think your magical AMD saviours are any better. There a TrustZone processor that you have zero control over embedded in their products that does the exact same bad stuff.

    --
    AntiFA: An abbreviation for Anti First Amendment.
    1. Re:Overblown -- oh and AMD isn't any better by Anonymous Coward · · Score: 3, Informative

      The ME is actually active all the time. Basically the modern Intel architecture just doesn't live without ME managing things. It may not be network enabled or remote accessed depending on the configuration, but it's pretty much always there now, and always active.

      Even the vendors don't really know what all it may be doing, just that they have to interact with it to provide certain features or interrogate it to explain why the system decided to go haywire.

    2. Re:Overblown -- oh and AMD isn't any better by Khyber · · Score: 4, Insightful

      They were modded -1 because they're dead fucking wrong. The IME runs AT ALL TIMES IF PRESENT.

      --
      Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
    3. Re:Overblown -- oh and AMD isn't any better by daniel23 · · Score: 4, Interesting

      And by the way, ME has been broken, full disclosure announced here:
      https://www.blackhat.com/eu-17...

      An exploit to access turned -off computers, presentation due in a month. Sweeeeet...

      --
      605413? Yes, it's a prime.
  4. Re:BSD uber alles! by Anonymous Coward · · Score: 4, Insightful

    Yep, score one for corporate control.

    Hear that, Tanenbaum? That's the sound of Intel screwing you with your own code.

  5. The years of the Minux desktop by sinij · · Score: 5, Insightful

    Apparently, we have been having years of Minux desktop all this time and never knew.

  6. Tanenbaum: a professor of Computer Science...? by Barnoid · · Score: 5, Informative

    Kids these days...

    Andrew S. Tanenbaum is the original creator of MINIX, not just "a professor" at Vrije Universiteit.

  7. This is a little bit awesome, though. by Seven+Spirals · · Score: 4, Interesting

    I've been a MINIX user for a long time. I was introduced to it in college in my operating systems course by the Tannenbaum book. This in-chip weirdness is, uhm, bizarre. However, MINIX is still interesting. It's one of the few microkernel based Unix variants and it's innards are particularly clean and easy to hack on due to it's heritage as a teaching OS. I don't know what the hell Intel was thinking, but don't blame MINIX. Go install it and use this as an excuse to get your own hands dirty. :-)

  8. Minix, that's terrible by Chrisq · · Score: 3, Funny

    Minix, that's terrible. What I want to know is why they aren't running HURD.

  9. Re:So it's a backdoor/// by swillden · · Score: 5, Insightful

    Let's call this what it is: A variation of the "clipper chip" like the government tried to do years ago, except this is more powerful and way worse.

    That's a mischaracterization so egregious it could be called a lie.

    The ME (and AMD's analogous PSP) have nothing to do with government, and nothing to do with cryptography (though they make heavy use of it). Clipper was about enforcing a standardized encryption mechanism with a built-in backdoor specifically for law enforcement. Completely different thing.

    ME and PSP are remote system management tools. Their purpose is to enable enterprises to remotely administer systems, including not only being able to remotely install a new operating system, but to strongly verify the installation from the running OS. The reason it's in all systems, not just systems targeted at enterprise use, is that it's more economical to have a single solution

    That said... you are absolutely correct that these tools *could* be used by malicious parties, whether for corporate espionage, government intrusion or anything else, and they are incredibly powerful, and not understood nearly well enough outside of the teams at Intel and AMD who build them. I know some of the people at Intel who work on this stuff and I'm pretty confident that they're doing good work, and doing the right things... but the lack of transparency makes me really nervous.

    Remote management tools make sense, but it should be possible for end users to disable them, or to take ownership of them and use them for their own ends. The details of exactly how they work, including their source code, should be published. Indeed, I think government should mandate the publication of low-level system management tools and firmware. We need a lot more academic research into the security and operation of these systems.

    --
    Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
  10. Re:So it's a backdoor/// by evolutionary · · Score: 3, Insightful

    You seem very confident (feels almost defensive), but ask yourself, why is it closed source yet using an open source core? Nothing to with government? How would you know that for sure without the source? It's been well documented that the government has approached virtually everyone, even Torvalds, asking for backdoors. Some said yes, some said now, some were likely given a deal they could not refuse. The first thing anyone tries to do in spying is to create doors people don't know about or rebranding it as something else. The admission of the purposes of the clipper chip was met with a lot of resistance. So the government agencies decided to keep other attempts a secret to reduce resistance. Rebranding is a classing way of hiding something in business. why not government. Unless you know what is in fact in the source it is impossible to say my hypothesis is "egregious" because only top people even know what it does. And why would you put something like "DRM" in something at that low and dangerous level. The DRM is as much as Intel will admit to. (and they may have their hands tied and gagged). Never confuse statements given to the public for media purposes as complete disclosure. If it's as innocent as you say, why hide it? We've had evidence leaked that proved government intentions to hook into all system domestic and foreign through hacks in software and hardware. And a backdoor of this nature is pretty consistent with what we've found from brave people who put their lives on the line to let the public know.

    --
    "Imagination is more important than knowledge" - Einstein
  11. Re:Isn't this like a BIOS? by ledow · · Score: 4, Insightful

    Do you know of a BIOS that runs when the computer is off?

    This is beyond "when I get the magic packet IRQ from the Ethernet controller I will wake up" into "there's a full, general purpose OS running on every processor, talking to the network, interpreting traffic, able to intercept every memory access, and which we have no way to probe, investigate, debug or understand and which may well be auto-updating from the Internet on a regular basis without our consent".

    Question: How do you generate a secure private key on a computer with this in? Literally, you can't.

    With BIOS, the scope was so limited that it couldn't be used for such things, and was just "the code that the computer started at" (literally, a soft-reboot is "jump to address 0, the first line of the BIOS).

    This is a full set of processors listening to everything your other processes do all the time no matter what OS you run or security you apply. And nobody knew what it was doing. And the governments have been removing it from their purchases for years by making Intel make chips without it.

    If THAT ONLY wasn't reason enough to worry about what it could be doing, you clearly haven't understood what it could be doing.

    Literally, this is a full-above-root compromise of every machine on the planet under Intel's sole control. Everything from microphones to connected devices to nearby wireless etc. could be turned against the user.

    Doing that with "just a BIOS" was much harder, much more obvious (i.e. you could generally disassemble the firmware and/or inspect it step-by-step as it was running) and much less damaging.

    Intel has a full computer in every chip on almost every motherboard on the planet. And nobody knows or understands why (because computers work just fine without such a feature, always used to, and still do when you disable such things by forceful means), nobody was really told about it, and it's taken years to discover even what architecture/OS it's running on, let alone what it's doing.

    One virus exploiting one flaw in this and anyone can gain control of the planet over the Internet with NO WAY to clean it off or even detect it.

  12. wow the FUD is strong in that one by kamakazi · · Score: 5, Informative

    We have a couple facts here, and a whole bunch of conclusions.
    The facts are that there is a general purpose OS running a microkernel in a management layer on unspecified Intel CPUs. This general purpose OS provides at least network accessible management interfaces.
    The conclusions are this general purpose OS is infinitely exploitable to steal all your top secret information and redirect all you web requests to the mind control platform of the month.
    This Minnich character (I enjoyed that similarity, Minnich/Minix) then jumps to a call to neuter everything below the user installed OS including UEFI. He then juts off on a side tangent and says trust me (He is a Google engineer) to always install good safe firmware on your Chromebook. That was a nice subtle bit of astroturfing there. He also blames Minix for slow boot time on an Open Compute server, not sure where minix plays into that or what axe he is grinding.

    Let's look at it a little more objectively. Why do these processor companies keep putting general purpose OSs at a level which was traditionally all hardware/firmware, and why do systems makers use an accesible programming layer to configure hardware like UEFI? Well, whe we were running 386s and 486s we really were running microprocessors. Hardware was relatively static, device support was locked at time of manufacture, processors did processing (with maybe a coprocessor for math) and accessory cards did a single function each. In that time frame supers, like the first Crays, couldn't even boot themselves. They used a completely separate computer to boot and for time scheduling and such. Now today, we have computers which are powerful on the level of the early supers. Our processing no longer all happens on the CPU, but also in the GPU(s) and other pieces in the system. We no longer have external memory and bus controllers, they are built into the processor or the mandatory northbridge, and are much more capable and adaptive. There are hosts of sensors built into modern processors. All of these pieces need to be managed. There is an absolute necessity for a relatively capable computer in there to manage all these pieces.
    It used to be done with static logic arrays, controlled by registers, and we called it BIOS, and it had a little interface that could usurp the monitor output and keybpoard and chirp the speaker, later got so fancy it could hijack a mouse on some systems. It was very limited, in fact, on the earliest PCs it didn't have a UI at all, it had dip switches or jumpers on the system board.

    Now with the advent of negotiated buses (even memory buses, back in the day I never would have conceived of a CPU being able to ask a memory module what capabilities it possessed and automatically configure timing parameters to best talk to it) the management processor has a lot to do. On high end machines they even do this negotiation on the fly with the advent of hot plug PCI buses and on the fly memory error compensation. By the nature of the beast this management engine has to be able to see all the data buses, otherwise every single connection interface would need an out of band management channel.

    I suppose you could make this management engine like a FPGA, configure it once and burn your bridges, no further interraction possible, but then what happens when you need to add or change something?

    Likewise it often doesn't need a network interface, but if it doesn't have one then we have to do wake on LAN with yet another baby management computer. How about physical intrusion detection? again, not often needed, but sometimes...

    Basically what a general purpose OS in the management layer does is give nearly infinite flexibility. This technology is a big part of the reason so much of our stuff just works.

    Now, I am not really a drink the cool-aid from the benevolent overlords kind of guy, I am not at all in favor of secret OSs underpinning our hardware without our knowledge, but let's not throw out the baby too. That capability is in most cases useful

    --
    "Proximity to wonder has blunted our perception and appreciation of it" --Tim Hartnell in 'Exploring ARTIFICIAL INTELLI
  13. Thank you. by Anonymous Coward · · Score: 4, Interesting

    Thank you for saying that it's off by default - everyone seems to just gloss over that one. More than that, there are only two ways to enable it:
      - using a keyboard shortcut during BIOS POST (physical access, the machine is already owned in any number of ways including just taking the drive out, why bother with AMT?)
    or
      - enable it remotely through arbitrary privileged code execution on the machine (it's owned already) AND you have a certificate issued by a trusted CA specifically for AMT provisioning (costs money), and that certificate's domain matches the one being given out by DHCP at the time of provisioning (meaning the network is owned too). If you already own the machine to the point of executing whatever you like with admin-level permissions, and you own the network to the point of changing DHCP options, why bother with AMT?

    For someone to get anywhere with AMT / vPro, they would already have exploited far easier routes to getting anything they could get through AMT / vPro. This is the reason we have seen exactly zero articles about people being exploited in the wild through AMT / vPro - anyone that knows what it actually is, and what it takes to run it, knows there are far easier ways in, and those easier ways are a predicate to using AMT to do whatever they could already do.

  14. Re:Isn't this like a BIOS? by zeugma-amp · · Score: 4, Interesting

    This is a full set of processors listening to everything your other processes do all the time no matter what OS you run or security you apply. And nobody knew what it was doing. And the governments have been removing it from their purchases for years by making Intel make chips without it.

    This. Right here. The fact that governments have demanded hardware without it is reason enough NOT to trust that it is 'safe'.

    --
    This is an ex-parrot!
  15. Re:Isn't this like a BIOS? by dissy · · Score: 3

    Do you know of a BIOS that runs when the computer is off?

    Sure: All HP servers, all Dell servers, all IBM servers.

    HP calls it "iLo" or "Integrated Lights-Out"
    IBM calls it the "RSA" or "Remote Supervisor Adaptor"
    Dell calls it the "iDRAC" or "Integrated Dell remote access"

    The hardware has been pretty standard for some time now. Although HP used to require purchasing a software license key per-server to be allowed to use it.

    Intel ME/ATM is the same thing but available in desktop grade computers, any core-i chip with vPro.

  16. How to exploit the Intel Management Engine by najajomo · · Score: 4, Informative

    Due to a 'bug' in the code, you can access the AMT with a zero length password. The ME cannot be completely removed, but due to a request from the NSA, it can be disabled with a secret kill switch.