Two Hidden Instructions Discovered in Intel CPUs Enable Microcode Modification
infoq.com
infoq.com
"unless there are vulnerabilities or backdoors in the Intel Management Engine (ME)".
There, fixed it for you.
And even if you actually have a backdoor on your PC, for hackers to exploit it, they somehow need to get to your local network first, which is not that easy on a home network unless your computer is the one to initiate the connection. I also probably won't work on anything but the built-in Ethernet port.
I don't know what "field day" hackers had, but I suspect it only helped them compromise corporate networks they could access where IME remote control (vPro?) was actively used. It is indeed a serious concern and warrants a recall, but I've yet to see how it can be a concern to most individuals, at least compared to OS-level attacks. And if it is, firewalls, including the simple ones in home routers should be effective.
AFAIK vPro doesn't let anything talk to its management interface over the network until you actually do the local setup.
I found this out to my irritation, when I once acquired a used workstation with vPro, freshly wiped, and — thinking I could just set it up by plugging its management-network NIC into my switch and talking to it over the LAN — I found out to my dismay that it wouldn't even bother to acquire an IP address for the management interface until I enabled vPro in the BIOS and then told it to use DHCP.
(Am I wrong about this? Perhaps, do OEMs ship batches of machines with vPro pre-configured in certain ways, for clients that explicitly specify that they're going to use vPro for remote provisioning? Or does every workstation order have an implicit "unload from the pallet, plug into a KVM, enable vPro, then install at location" step?)
"I remember a story a few years past when a full line of CPU's went out with IME having no password set at all"
They describe a pretty serious snag. My experience of iDRAC/iLO/vPRO etc etc etc is that they have all had some pretty major problems.
Keep your monitoring/management interfaces on their own network/VLAN is my advice. While you are at it, get the logging and firewall rules sorted.
The closest analog to the claims that I could find in short order did mention a known AMT exploit[1] in 2017.
[1] https://www.theregister.com/2017/05/05/intel_amt_remote_expl...
If by "vestiges" you mean "fringes", I find that a bit disturbing assuming you are sincere.
Whatever thought process led you to think it was an obscure conspiracy theory - did you check Wikipedia?
The third sentence of the Wikipedia page on the IME is:
"The Intel Management Engine always runs as long as the motherboard is receiving power, even when the computer is turned off."
https://en.wikipedia.org/wiki/Intel_Management_Engine
There isn't a specific source for this given, but I looked at some of the references and found this in Intel documentation:
"This interface can retrieve the current power state and change the power state of the hosting machine via commands to Intel AMT."
https://software.intel.com/sites/manageability/AMT_Implement...
There is also a link to "Black Hat 2017" given as a source for the ability to manipulate computers when they are turned off through the Management Engine.
And then, looking at your Register link, I don't see that it says anything about the capability of control when powered off.
I'm guessing you haven't encountered the conspiracists on sites like 4chan and Gab where they literally claim that you can extricate all data from the machines while powered off.
Do not underestimate the idiocy and extremism behind some of these conspiracies. They have widely stupid claims that are outright impossible, but because it's terrifying to users who don't know better otherwise, the truth gets muddied.
Yes, IME/AMT can be accessed as long as the machine has utility power. However, the machine still has to be remotely powered up to access anything else (e.g. if there were an exploit that allowed remote extrication of in-memory data loaded by the OS because, well, the OS has to be booted).
So yes, I'm well aware of this. I think the problem is that you haven't encountered some of the really wild and ridiculously extreme interpretations of this conspiracy on, shall we say, the vestigial fringes of the Internet that harbor some equally stupid notions. It's no accident that the people who think $THREE_LETTER_AGENCY can access all of your personal photos and information with your machine powered off via IME/AMT are almost uniformly also the types who think that 5G is going to instigate mind control or believe the Earth is flat.
I know of these because I regularly find it perversely amusing to debate them because I'm either stupid, crazy, or both.
You shouldn't just trust Intel that it doesn't respond to network access if you tell it to nicely.
I don't want to rehash it here, but if you look at my reply to your sibling, you'll get a better insight into my reasoning.
Basically the TL;DR version is that there are some absolutely asinine conspiracists who literally think that government agencies can extract all of their data while the computer is powered off using IME/AMT.
Obviously, there's a lot more to it, but I do agree that I don't trust Intel, and IME/AMT are dangerous.
I'd link one of the posts I ran into that made this claim, but I don't really want to give the idiots who peddle this garbage any more exposure than necessary, because they appear to be into the 5G "mind control" conspiracies as well.
No, I'm not kidding.
It may have been disabled by the prior owner of the workstation. The servers we get come with "All management enabled, and will get an IP from DHCP" mode. There's a probability that these workstations left the factory with vPro enabled.
To be clear, are you talking about Intel AMT specifically (which I’m not really aware of being a “thing” with Xeon), or just regular server-OEM BMCs (iLO, DRAC, etc.)?
BMCs are definitely usually pre-configured. That’s part of the point of BMCs: you can rack the servers and run cable from their management NICs to the management-VLAN switches; then populate their drive bays; and then batch-provision everything at once through the BMCs (including, hopefully, setting up actual security on the BMC.)
But Intel AMT isn’t quite the same thing. (For one, vPro-badged computers don’t usually have a separate management NIC — though some do! — but rather Intel AMT usually uses the IOMMU to virtualize another NIC onto the same physical motherboard RJ45 socket. So it’d be a much worse security design to have AMT default-enabled from the factory, since that’d put new machines’ control-plane interfaces out onto your regular-traffic VLAN by default...)
The fist one everyone gets. This one doesn't allow remote management, it is intended for internal housekeeping, plus things like emulated TPM and DRM.
The second one, which builds on top of the first one, allows management in about the same scope as any other BMC would, and it is pretty easy to avoid it - just do not purchase SKUs with vPro. For vPro, you have to pay extra, so doing that is pretty easy.
That said, I also consider vPro generally useful, though somewhat flaky and unreliable. It is also about the only way to get BMC-like functionality for desktops or laptops (hey, Intel, any plans for new NUCs with vPro?).
A computer is a to dangerous tool to leave it to the public without state control.
Wikipedia is missing such a link.
Completely coincidentally Chris Domas managed to discover the only Intel CPU backdoor ever discovered and publicized the very same year Intel already patched it
The US government has 60,000 full time shills telling you to take your meds and stop speculating. And studies have shown that they target their chidings.
I don't shop for groceries and canned corn, I shop for groceries.
I don't listen to music and <insert artist>, I listen to music.
in fact, the way you separate them seems to indicate that you believe that backdoors are not vulnerabilities, and they absolutely are vulnerabilities.
vulnerabilities are things that make you vulnerable. undocumented backdoors definitely make you vulnerable.
The whole idea that there's a "red state" and a bunch of others on a CPU, normally hidden, should immediately raise the attention of many who wonder what those extra modes can do, and more interestingly, why they're hidden. From the (very little!) research I've done, it appears this is not unlike SGX where only Intel has the key[1] to some part of the hardware you bought from them, and based on some leaked internal documents, it's very plausible that this is indeed a backdoor which only they can use. Ostensibly, for debugging purposes. Here's a previous comment I made on this: https://news.ycombinator.com/item?id=26521359
[1] If these keys were leaked, which I very much hope will happen at some point, no doubt the "security" community will be heavily against it and spread plenty of FUD about how it makes everyone's computers insecure. But IMHO it should be eagerly awaited and received with the same optimism as the other DRM key leaks (HDCP, HDDVD, etc.) --- it is a path to freedom.
Intel probably have the master private key on a hardware security module, and have set up some API so their engineers can do the challange-response dance to get into RED mode. But after poweroff, it'll need to be done again.
If that's the setup, the key won't leak. There are probably only 5 hardware cards in the world with the key, and they're probably set to not allow key extraction.
To get the key, you would need to physically steal the card, and have an exploit for silicon designed to be key storage...
Not going to happen.
Thanks
> Positive Technologies is a Russian IT security firm that supports Russian Government clients, including the FSB. Positive Technologies provides computer network security solutions to Russian businesses, foreign governments, and international companies and hosts large-scale conventions that are used as recruiting events for the FSB and GRU.
I also want to state how impressive their work is. These are the true undocumented instruction finders as apposed to sandsifter.
https://zeronights.ru/en/reports-en/chip-red-pill-how-we-ach...
I hope some talented hacker/s somehow manage/s to actually pull it off.
So the question becomes whether you can access those registers, or otherwise affect the fuse loading process, using these features. That depends on the design (e.g. whether those registers are accessible and not locked down after initial load).
Fuses (and antifuses) are the only form of nonvolatile, programmable memory available in these process nodes (as they require no extra masks or processing steps beyond a regular CMOS process), that is why they are used. They are write-once memory, and they are based on breaking or making electrical connections, but they are not literally used to directly reconfigure chip wiring; that hasn't been the case for many years now. Modern fuse memory is just one more functional block you throw into your chip, and it comes with its own requirements, read amplifiers, etc (the fuses aren't actually "binary"; what happens is the electrical resistance increases, but you still need some analog-ish circuitry to set threshold levels to read them reliably, and carefully controlled programming voltages and timings, etc).
And lasers were used at least very very recently at Intel.
In the end, all of these companies end up licensing whatever fuse block is compatible with their process, e.g. I'm sure TSMC has something in-house for theirs. Intel of course own their own fabs, so they probably have their own. DesignWare also have their own (generic-ish?) thing, etc.
Basically every modern SoC or really IC of any complexity uses fuses for something (e.g. calibration data, switching in spare/redundant blocks when manufacturing defects happen, binning/product segmentation, crypto key storage, etc).
https://bit-tech.net/news/tech/cpus/intel-overclocking-block...
Before microcode - full overclock, after microcode update - locked multipliers.
1. If you control Intel Management Engine (exploit/backdoor/whatever), you have full control over the system.
2. That full control comes with, among everything else, the ability to put the CPU in a deep debug state ("Red Unlock")
3. In Red Unlock, you can basically play with the CPU's internals at will using a debug cable (just a modified A-A USB3 cable on many modern systems; "DCI").
4. It turns out that in Red Unlock state there are also undocumented instructions that let you do the same thing straight from code running on the CPU itself.
Notice how the security relevance stops at #1. We already know that if you control ME, you control the system. So there is no security impact to this discovery. The prerequisite is already total control.
Also notice how what these instructions let you do isn't new. The same researchers already showed how to do the same thing via an external debugger (CRBUS access) last year. So this does not open any new capabilities for CPU research.
What it does do is make things more convenient. Now you can do this without an external debugger, "only" with an ME patch/exploit and code running on the system itself, which means you could e.g. have it apply custom microcode patches on every boot (by patching your UEFI firmware to do it). Also, the USB debug thing doesn't work on all motherboards (some are missing the required connections), while this would work.
Security of a single PC, or security of an entire operation? Seems like this would be a great "in" for personalized unattended exploits of airgapped systems, kinda like what Stuxnet/Flame/Duqu were famous for but at an even lower level.
The point is this isn't a bug, it's a feature; if you've gotten the CPU into red unlock anyway, you are already thoroughly screwed. This is like saying if you install a development version of an OS and enable remote debugging, you can take over the machine remotely. Well.... yes.
This is interesting because it's undocumented, not because it has security implications.
"They're the same picture."
I assume he is that famous guy from Elcomsoft who put Adobe and DOJ to shame. Good to know he is still productive.
These are persistent? Meaning they survive reboots? Is it stored in flash memory on the CPU or something? I thought all microcode updates are re-applied on each boot.
The CPU still needs to be in the Red state, which means you need to control ME. This applies to both cases.
Dmitry Sklyarov is the same guy that 20 years ago was arrested by the FBI for DMCA violations when visiting the US because he, despite being a Russian citizen working for a Russian company (there's no DMCA in Russia), wrote a software that circumvented Adobe e-books copy protection. Had social media been around back then, #freedmitry would have been a trending hashtag like all similarly named sites that spawned shortly after the arrest.
But I still don't think that makes it clickbait. From the article:
> The three researchers have posted a video demonstrating how to access the two instructions with only root/admin privileges. This requires uploading a custom UEFI to SPI flash and then rebooting the system, which definitely requires having physical access to it.
So, not remote-able (at the moment). But there's enough there that I can't agree with calling it clickbait.
> As a matter of fact, several vulnerabilities in Intel ME have been discovered in the past. Among others, Ermolov, Sklyarov, and Goryachy described a method to extract the secret key that is used inside the CPU to decrypt microcode updates, which also led to the possibility of executing your own microcode on the CPU or reading Intel's microcode.
So you don't have to break RSA. You just have to use the private key to derive the public key, which I believe is do-able.
Not sure whether this is the case here.
Does this require something other than writing the file to the UEFI partition, setting it as the next boot target, and rebooting into that boot target? I tend to think I misunderstand because that would require root privileges under Linux but not physical access.
They already have persistent and unlimited access to the ultimate back door and modifying the microcode isn't going to get them any extra access to your data or programs.
You are going to need both a persistent modified ME firmware to enable red mode and some x86 code do the actual microcode modification on each boot.
If the attacker has that, they can already do a traditional VM rootkit to hide their modifications.
Personally I thought IME was a huge problem when Intel announced it, and I haven't changed that opinion.
[1] Open question I don't know the answer too is whether all CPU SKUs share the same secret key. (which would be logical if you wanted to push a microcode change for a particular SKU).
No. The article mentions that the key required to decrypt microcode updates can be extracted. http://inertiawar.com/microcode/ indicates that the encrypted microcode image is also signed, and being able to decrypt the image doesn't mean you can also generate an appropriate signature.
Where it talked about extracting the secret key.
The only part I'm not clear, is whether it was possible before? The article seem to imply that physical debugging tools (JTAG-like I presume) were already available to do uOP exploration?
I've been a little wigged out by the post spectre world of encrypted, unknown blobs changing every couple months. I prefer to treat vendors in a "trust in Allah, but tie up your camel" sort of way as much as possible.
The DoD is the only Intel client that is allowed to disable ME. They sell chips without ME. They just won't sell it to anyone but the DoD. Why is that?
There is no legal obligation to sell you an open and fully-documented CPU.
Source: https://www.ftc.gov/news-events/blogs/business-blog/2018/04/... (blog post on the official FTC site - look at the third bullet point in their examples)
Not mentioned in the above source, but the burden of proof that the third-party part or repair caused the problem is on the warrantor, not the consumer.