What can we learn from leaked Insyde's BIOS for Intel Alder Lake
hardenedvault.net
hardenedvault.net
Internet Archive link to .zip file snapshot of files from GitHub (but no git commit history): https://web.archive.org/web/20221007235925if_/https://codelo...
Also mirrored here: https://git.tcp.direct/TheParmak/ICE_TEA_BIOS
The git bundle for that mirror is also on the Internet Archive: https://web.archive.org/web/20221008155117if_/https://git.tc... (which can be restored via the instructions at https://git-scm.com/book/en/v2/Git-Tools-Bundling)
Note that downloading the git bundle (from the link on git.tcp.direct or its mirror on Internet Archive) is the most space-efficient download, as there are many large identical files in the repo that git deduplicates but the zip file format does not.
So if someone comes and makes a DMCA claim on a thread, the moderators can just ignore it and wait for the thread to time out or they delete it and the users just make another thread.
As long as the moderators wait a couple hours or so to respond to legal threats, and maintain a semblance of "low moderation" they pretty much have plausible deniability to void copyright. It's sort of genius.
the pcengines apu2 is currently my preferred small system. one of the things I really like about it is that the firmware is open source. I will probably never need to build my own firmware, but I like knowing that I could.
Having said that, I think there is still a big ol black box of AMD secret sauce in there, sigh, so close yet still so far. why so secretive? what are you trying to hide?
Nobody wants that risk for their product.
But no one is even going to say how to actually do it publicly because it is illegal to do (and probably also unsafe to do).
sigh, whatever, things are never fair.
I will say the thing that pisses me off about thinkpads is their use of a whitelist to limit radios. their justification for this was the same. "it's certified as a radio antenna pair, the fcc will not let us let you install whatever radio you want" which is bullshit.
I think however it's just a matter of time before these restrictions become obsolete anyway:
1) I'm not sure whether the possibility of violating FCC regulations is something that will be used in practice by enough people to be a problem (you might get the odd one out here and there, but see the point below)
2) People who intentionally want to violate FCC regulations can already do so in plenty of ways - SDRs are becoming cheaper and cheaper and there's basically no way to prevent their import, so I'm not sure why they'll even bother with a wireless card if their aim is to truly cause mischief and shit on restricted radio bands.
In fact some boards already come with 2 M2 slots, so nothing prevents you from using the second one for a wireless card if you so desire. Bluetooth on the other hand is low-enough bandwidth that a USB adapter works fine generally (USB Wi-Fi adapters also work but USB uses more CPU which is a problem for high-bandwidth networking).
Personally I just don't see the point of Wi-Fi for a stationary machine anyway - you're wasting valuable spectrum for something better served by an Ethernet cable (sourced from a powerline adapter if you're really desperate).
The WiFi is already a self-contained module with a standard hardware interface and its own FCC ID and certification. I don't recall ever seeing a motherboard include WiFi support in its UEFI firmware. So from the perspective of the motherboard manufacturer, WiFi is just a component they stick on the board and ship, with no regulatory overhead aside from duplicating the WiFi module's identifying information on a sticker that isn't hidden beneath the VRM heatsinks. The motherboard market really couldn't tolerate any wireless solution more complicated than that.
I.e. modularize the BIOS firmware such that you flash "the BIOS firmware" and "the wifi/bluetooth stack firmware" separately, to separate chips. Then ship the motherboard without the wifi/bluetooth stack firmware pre-flashed — with the NAND that the wifi controller initializes from, just empty, such that the wifi controller immediately halts on boot, and the CPU doesn't find it on the bus. Make sure the rest of the BIOS works without the wifi controller "up". And then have an open root key of trust for the BIOS (= you can sign your own BIOS), but a closed root key of trust for the wifi controller (= only the OEM can sign the wifi/bluetooth stack firmware.)
It doesn't seem like it would be all that hard, given that we already have this kind of hardware firmware (+ firmware storage) modularity in modern devices in other ways — e.g. most trackpads have their own isolated firmware, that the host can flash to update, but which isn't otherwise accessed by the host CPU, rather only the trackpad microcontroller itself; where the trackpad firmware flash lives inside the trackpad, not in the host.
https://protectli.com/kb/coreboot-build-guide/ - guide on how to build coreboot yourself. You can check out their homepage for the hardware they sell and that includes it.
It looks like the systems may still contain some binary blobs in Coreboot.
https://m.aliexpress.us/item/3256802158669247.html?algo_pvid...
Protectli provide their own warranty on, plus offer coreboot. But you can get the same hardware cheaper on AliExpress maybe.
That was cancelled IIRC a couple of years ago (?) and they now pay closer to "true" shipping rates.
I agree with the other comment here that this stuff should've been open-source in the first place, but more than that, I wish Intel would just release all the detailed documentation on their products. They used to be far better about that --- I believe you can still find reference schematics and such for Pentium II/III-era chipsets on their site, or in the Internet Archive thereof.
The latter part of the article is more "open source bad" fearmongering, sadly common these days in that part of the software industry.
Many of them do actually have CNDAs signed with Intel, at least those employed to work on commercial products based on Intel's chips. You'll see tons of references to NDA-only datasheet in coreboot's commit history.
Isn't that really against the principles of open-source (and possibly the NDA itself)? It's a strange situation and why I'd rather manufacturers release datasheets instead of contributing to OSS. The source is technically "open" in the latter case, but in practice it's not much more informative than what you'd get if you just decompiled the binary.
Depends on the NDA. A lot of NDAs won't require you to never mention that there is a thing that's under NDA, just from divulging the information in question.
Given that "source code" which looks like decompiled binary wouldn't be of much informative value anyway, I can see how it wouldn't seem like it's leaking any NDA'd information.
> Can open source firmware projects benefit from leaked content?
> Unfortunately, no or rarely.
> Individuals or organizations that are not eligible to sign CNDA with Intel, such as open source firmware maintainers. Please note that open source firmware projects cannot directly benefit/reuse from leaked content due to legal risks
A direct reuse of everything is unlikely, but access to the material might lead to many interesting tools.
Simple example: undervolting (to save battery and reduce heat) was taken away by intel because plundervolt allowed attacks against the SGX enclave.
SGX has now been abandoned by Intel, but undervolting remains impossible.
If I ever get an Alder Lake, would I look for a way to enable that on my laptop? Yes!
Do I fear legal risks of altering the functionality of the hardware I purchased? No, thanks to the consequences of the first sale doctrine.
> Binary blobs: It’s worth noting that in addition to the binary blobs required by various devices (Bluetooth BLE, WiFi, Ethernet, etc.), there are three different ACMs for security features: BiosGuard, BootGuard, and TXT
> In addition, one thing should be noted that the key pairs required by BootGuard during provisioning stage is also included in the leaked content
So there's everything I would need to understand, patch then flash my own alterations? Great! I'm even more interested now!!
> the data center should prepare
> Short-term plan:
> Security team and patch management team should work together to ensure critical devices are upgraded to the latest version
And IMHO the individual interested in future attempts to reclaim full ownership of their hardware should prepare in a very different way, by:
- downloading a copy of the current BIOS binary update (and the last few versions, just to be on the safe side)
- blocking BIOS updates ("capsules" etc) in the BIOS
- in the OS, uninstalling the tools that allow such updates (ex: Lenovo Vantage)
- ideally, even switching to Linux, as Microsoft can package drivers updates with the BIOS, and if it's that big one of these drivers may include code from Intel using unusual ways to forcefully apply upgrades, that would bypass the methods you can control if the binary is delivered and run on your hardware (ex: Intel ME)
I really like Windows, and "security" in general, but I like the idea of having features like Undervolt even more!
SGX only really appears to be abandoned on client chips. SGX is a critical part of TDX, which is brand new.
They could have merely disabled the GUI element which enables the undervolting. This would've made it so you need tools like http://ruexe.blogspot.com/ to edit the EFI variable which firmly put it outside of the reach of the average consumer but still makes it possible. But no, the EFI variable is protected and unless you manage to break the firmware it's impossible to change it. Sigh.
This has probably occurred in certain communities but 'clean-room' documentation may have been written by third-parties from an understanding of non-public information and as long as the developer(s) nor the writers of said documentation were involved in any malice towards obtaining said information it is probably somewhat ok.