Friday, November 10th 2017
MINIX Creator Andrew Tanenbaum Sends Open Letter to Intel Over MINIX Drama
We recently reported about MINIX, the hidden Unix-like OS that Intel was secretly shipping in all of their modern processors. This came as a shock to most of us and to MINIX creator Andrew Tanenbaum as well. Although Andrew wasn't completely surprised by the news, since Intel approached him couple years back asking him to make a few changes to the MINIX system. He stated in the open letter that he wasn't looking for economic remuneration, but it would have been nice if Intel had told him about their plans to distribute his operating system in their processors.You can read the complete letter sent to Intel below:
Dear Mr. Krzanich,
Thanks for putting a version of MINIX inside the ME-11 management engine chip used on almost all recent desktop and laptop computers in the world. I guess that makes MINIX the most widely used computer operating system in the world, even more than Windows, Linux, or MacOS. And I didn't even know until I read a press report about it. Also here and here and here and here and here (in Dutch), and a bunch of other places.
I knew that Intel had some potential interest in MINIX several years ago when one of your engineering teams contacted me about some secret internal project and asked a large number of technical questions about MINIX, which I was happy to answer. I got another clue when your engineers began asking me to make a number of changes to MINIX, for example, making the memory footprint smaller and adding #ifdefs around pieces of code so they could be statically disabled by setting flags in the main configuration file. This made it possible to reduce the memory footprint even more by selectively disabling a number of features not always needed, such as floating point support. This made the system, which was already very modular since nearly all of the OS runs as a collection of separate processes (normally in user mode), all of which can be included or excluded in a build, as needed, even more modular.
Also a hint was the discussion about the license. I (implicitly) gathered that the fact that MINIX uses the Berkeley license was very important. I have run across this before, when companies have told me that they hate the GPL because they are not keen on spending a lot of time, energy, and money modifying some piece of code, only to be required to give it to their competitors for free. These discussions were why we put MINIX out under the Berkeley license in 2000 (after prying it loose from my publisher).
After that intitial burst of activity, there was radio silence for a couple of years, until I read in the media (see above) that a modified version of MINIX was running on most x86 computers, deep inside one of the Intel chips. This was a complete surprise. I don't mind, of course, and was not expecting any kind of payment since that is not required. There isn't even any suggestion in the license that it would be appreciated.
The only thing that would have been nice is that after the project had been finished and the chip deployed, that someone from Intel would have told me, just as a courtesy, that MINIX was now probably the most widely used operating system in the world on x86 computers. That certainly wasn't required in any way, but I think it would have been polite to give me a heads up, that's all.
If nothing else, this bit of news reaffirms my view that the Berkeley license provides the maximum amount of freedom to potential users. If they want to publicize what they have done, fine. By all means, do so. If there are good reasons not to release the modfied code, that's fine with me, too.
Yours truly,
Andrew S. Tanenbaum
Note added later: Some people have pointed out online that if MINIX had a GPL license, Intel might not have used it since then it would have had to publish the modifications to the code. Maybe yes, maybe no, but the modifications were no doubt technical issues involving which mode processes run in, etc. My understanding, however, is that the small size and modular microkernel structure were the primary attractions. Many people (including me) don't like the idea of an all-powerful management engine in there at all (since it is a possible security hole and a dangerous idea in the first place), but that is Intel's business decision and a separate issue from the code it runs. A company as big as Intel could obviously write its own OS if it had to. My point is that big companies with lots of resources and expertise sometimes use microkernels, especially in embedded systems. The L4 microkernel has been running inside smartphone chips for years. I certainly hope Intel did thorough security hardening and testing before deploying the chip, since apparently an older version of MINIX was used. Older versions were primarily for education and newer ones were for high availability. Military-grade security was never a goal.
Second note added later: The online discussion got completely sidetracked from my original points as noted above. For the record, I would like to state that when Intel contacted me, they didn't say what they were working on. Companies rarely talk about future products without NDAs. I figured it was a new Ethernet chip or graphics chip or something like that. If I had suspected they might be building a spy engine, I certainly wouldn't have cooperated, even though all they wanted was reducing the memory footprint (= chip area for them). I think creating George Orwell's 1984 is an extremely bad idea, even if Orwell was off by about 30 years. People should have complete control over their own computers, not Intel and not the government. In the U.S. the Fourth Amendment makes it very clear that the government is forbidden from searching anyone's property without a search warrant. Many other countries have privacy laws that are in the same spirit. Putting a possible spy in every computer is a terrible development.
Source:
Andrew S. Tanenbaum
Dear Mr. Krzanich,
Thanks for putting a version of MINIX inside the ME-11 management engine chip used on almost all recent desktop and laptop computers in the world. I guess that makes MINIX the most widely used computer operating system in the world, even more than Windows, Linux, or MacOS. And I didn't even know until I read a press report about it. Also here and here and here and here and here (in Dutch), and a bunch of other places.
I knew that Intel had some potential interest in MINIX several years ago when one of your engineering teams contacted me about some secret internal project and asked a large number of technical questions about MINIX, which I was happy to answer. I got another clue when your engineers began asking me to make a number of changes to MINIX, for example, making the memory footprint smaller and adding #ifdefs around pieces of code so they could be statically disabled by setting flags in the main configuration file. This made it possible to reduce the memory footprint even more by selectively disabling a number of features not always needed, such as floating point support. This made the system, which was already very modular since nearly all of the OS runs as a collection of separate processes (normally in user mode), all of which can be included or excluded in a build, as needed, even more modular.
Also a hint was the discussion about the license. I (implicitly) gathered that the fact that MINIX uses the Berkeley license was very important. I have run across this before, when companies have told me that they hate the GPL because they are not keen on spending a lot of time, energy, and money modifying some piece of code, only to be required to give it to their competitors for free. These discussions were why we put MINIX out under the Berkeley license in 2000 (after prying it loose from my publisher).
After that intitial burst of activity, there was radio silence for a couple of years, until I read in the media (see above) that a modified version of MINIX was running on most x86 computers, deep inside one of the Intel chips. This was a complete surprise. I don't mind, of course, and was not expecting any kind of payment since that is not required. There isn't even any suggestion in the license that it would be appreciated.
The only thing that would have been nice is that after the project had been finished and the chip deployed, that someone from Intel would have told me, just as a courtesy, that MINIX was now probably the most widely used operating system in the world on x86 computers. That certainly wasn't required in any way, but I think it would have been polite to give me a heads up, that's all.
If nothing else, this bit of news reaffirms my view that the Berkeley license provides the maximum amount of freedom to potential users. If they want to publicize what they have done, fine. By all means, do so. If there are good reasons not to release the modfied code, that's fine with me, too.
Yours truly,
Andrew S. Tanenbaum
Note added later: Some people have pointed out online that if MINIX had a GPL license, Intel might not have used it since then it would have had to publish the modifications to the code. Maybe yes, maybe no, but the modifications were no doubt technical issues involving which mode processes run in, etc. My understanding, however, is that the small size and modular microkernel structure were the primary attractions. Many people (including me) don't like the idea of an all-powerful management engine in there at all (since it is a possible security hole and a dangerous idea in the first place), but that is Intel's business decision and a separate issue from the code it runs. A company as big as Intel could obviously write its own OS if it had to. My point is that big companies with lots of resources and expertise sometimes use microkernels, especially in embedded systems. The L4 microkernel has been running inside smartphone chips for years. I certainly hope Intel did thorough security hardening and testing before deploying the chip, since apparently an older version of MINIX was used. Older versions were primarily for education and newer ones were for high availability. Military-grade security was never a goal.
Second note added later: The online discussion got completely sidetracked from my original points as noted above. For the record, I would like to state that when Intel contacted me, they didn't say what they were working on. Companies rarely talk about future products without NDAs. I figured it was a new Ethernet chip or graphics chip or something like that. If I had suspected they might be building a spy engine, I certainly wouldn't have cooperated, even though all they wanted was reducing the memory footprint (= chip area for them). I think creating George Orwell's 1984 is an extremely bad idea, even if Orwell was off by about 30 years. People should have complete control over their own computers, not Intel and not the government. In the U.S. the Fourth Amendment makes it very clear that the government is forbidden from searching anyone's property without a search warrant. Many other countries have privacy laws that are in the same spirit. Putting a possible spy in every computer is a terrible development.
52 Comments on MINIX Creator Andrew Tanenbaum Sends Open Letter to Intel Over MINIX Drama
What is the issue for customers about the ME ?
It's a micro-code known for years.
Common in OC to have to reinstall the ME if overclocking is degraded (risky operation, only for competition).
Though, I gave up on college way before I got those :laugh: Don't worry, they've got one of their own. Several potentially critical vulnerabilities with no way of patching on older platforms (sources mention some were known for many years).
Also, no way of completely disabling ME without harming the hardware (you are lucky if you'll only get a 15 second POST delay, otherwise your mobo won't even start).
Plus, both AMD and Intel are so secretive about their security tech, that it forces people to think whether ME or AMD SecureChip are really that secure, or whether they simply apply the tactics of "obfuscated security".
So if you have affected hardware, get into the bios and disable it. If you can't disable it[which I've not seen an instance of yet], than disable and uninstall the drivers for the associated device in the Windows Device Manager. If the software package for the Intel's AMT is installed, uninstall it. This will render the ME non-functional.
Now even though THIS problem can safely be disabled and rendered non-functional, what's really scary is that a slight variation of the design can render it completely unaffected by bios/user settings, leaving us at the mercy of anyone who has the know-how to address and take control of it. At that point the only way to be safe from such control is to keep such a system completely stand alone, IE by never connecting a network.
:lovetpu: Intel announced this when SandyBridge launched. Hardly hidden, and certainly, not stolen. ROFL. We did kind of have an issue... that perhaps caused the recall of the P67 chipset? Yet this has been out in the wild for a long time now, and there has yet to be any openly obvious issues presented. Although, the tie-in with Hollywood that Intel had for DRM was something I was sure that people would have been more of an uproar about, but even that fizzled out after a few days. People are quick to forget things that were talked about years ago.
"He stated in the open letter that he wasn't looking for economic retribution, but it would have been nice if Intel had told him about their plans to distribute his operating system in their processors."
I think "retribution" is incorrect. Remuneration would be the preferred word.
www.bing.com/search?q=remuneration&src=IE-SearchBox&FORM=IESR4A&pc=EUPP_
Oops.
Suddenly AMD Ryzen is looking a whole lot more interesting from a pure security point of view.
Edit: Didn't Nvidia pick RISC-V (Falcon) as their security processor?
riscv.org/wp-content/uploads/2017/05/Tue1345pm-NVIDIA-Sijstermans.pdf
This isn't that different than Sony using a modified FreeBSD in their PS4's.
then all the nakedwatermonkeyants will be part of the hive.
and there will be drones. and white chryslers... and puppies.
/tinfoil
time to go break something i guess.