Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack (Ars Technica)
As its name suggests, LogoFAIL involves logos, specifically those of the hardware seller that are displayed on the device screen early in the boot process, while the UEFI is still running. Image parsers in UEFIs from all three major IBVs [independent BIOS vendors] are riddled with roughly a dozen critical vulnerabilities that have gone unnoticed until now. By replacing the legitimate logo images with identical-looking ones that have been specially crafted to exploit these bugs, LogoFAIL makes it possible to execute malicious code at the most sensitive stage of the boot process.
Posted Dec 7, 2023 15:20 UTC (Thu)
by domdfcoding (guest, #159754)
[Link] (8 responses)
Can this actually be exploited from within the OS?
Posted Dec 7, 2023 16:22 UTC (Thu)
by jafd (subscriber, #129642)
[Link] (7 responses)
They also have a table with aggregated stats: all vendors have buggy image parsers (I'd wager because there are only three firmware vendors, of which none are known for exceptional code quality) but only boards from Acer, Lenovo, and Intel are actually exploitable.
Posted Dec 7, 2023 17:47 UTC (Thu)
by simon.d (guest, #168021)
[Link]
Posted Dec 7, 2023 23:37 UTC (Thu)
by epithumia (subscriber, #23370)
[Link] (5 responses)
Posted Dec 8, 2023 0:04 UTC (Fri)
by randomguy3 (subscriber, #71063)
[Link] (2 responses)
Posted Dec 8, 2023 6:47 UTC (Fri)
by WolfWings (subscriber, #56790)
[Link] (1 responses)
But once it's loaded an exploit would be running in essentially the earliest of the early UEFI boot zones so it can overwrite whatever it pleases with impunity.
Posted Dec 10, 2023 18:04 UTC (Sun)
by jacinto (subscriber, #157537)
[Link]
To my limited understanding, a compromised install could easily be erased by replacing the compromised EFI boot code file with the correct file. A reformat and reinstall of Linux on the SSD would also serve to erase any other potential malicious modifications to the system. The article seems to suggest, without nuance, that the malicious boot code becomes permanently embedded and unfixable. I could understand the permanence of the exploit if there were an embedded storage device in the motherboard that served as the EFI partition, but for the scenario I described it seems like the article’s dire claim would not be true.
Posted Dec 8, 2023 15:39 UTC (Fri)
by tshow (subscriber, #6411)
[Link]
Look back over Dan Goodin's security articles on Ars Technica over the years and you may or may not notice a theme in this regard. Somewhere buried in any of the articles is usually some useful info, but the title and overall tone are generally BILLIONS OF MACHINES VULNERABLE TO EXPLOIT ALL IS LOST.
Posted Dec 9, 2023 3:20 UTC (Sat)
by csamuel (✭ supporter ✭, #2624)
[Link]
> Since the vulnerable parsers are developed and distributed by the IBVs – AMI, Insyde and Phoenix – a large percentage of devices
But then goes on to say:
> The exploitability of these vulnerabilities relies on whether the user is able to input data to a parser. When these parsers are used to
They do list 3 scenarios by which it could be exploited, with the first being the easiest (and potentially remote) attack with just 3 vendors named, but then include as the hardest using an SPI flash programmer which would require physical access & an unprotected BIOS which could expand that list considerably.
Posted Dec 7, 2023 16:47 UTC (Thu)
by rweikusat2 (subscriber, #117920)
[Link] (5 responses)
Posted Dec 7, 2023 17:58 UTC (Thu)
by jajpol (subscriber, #8044)
[Link]
Posted Dec 7, 2023 21:27 UTC (Thu)
by mat2 (guest, #100235)
[Link] (3 responses)
Also, Intel Boot Guard (the verification of UEFI image hash with fuses embedded into the CPU die) is done for the sake of "security", but more importantly it does prevent the user from exchanging the CPU in their laptop (which harms hardware manufacturers) or a proprietary firmware with Coreboot. For more see the Matthew Garrett's article ( https://mjg59.dreamwidth.org/58424.html ).
Posted Dec 8, 2023 3:08 UTC (Fri)
by khim (subscriber, #9252)
[Link] (2 responses)
I suspect it's a bit of both. If they are after the ability to, e.g., remove mail (or “expiring video” from your phone) then it's precisely the inability to run your code on your own device that they are seeking. You may not like it, but “owner of the device may do something to his (or her) own device” is very much a security vulnerability, and that something is not limited to “make copy of movie rented for 24 hours”. Whether it's goal worth pursuing is entirely different question, but a lot of people (and not just in government or movie industry) say the answer is “yes”.
Posted Dec 8, 2023 20:17 UTC (Fri)
by mat2 (guest, #100235)
[Link] (1 responses)
Posted Dec 8, 2023 20:19 UTC (Fri)
by mat2 (guest, #100235)
[Link]
I meant that targeting these devices does not pay off to the criminals because these devices are rare. It is similar with viruses for Linux.
Posted Dec 7, 2023 17:48 UTC (Thu)
by simon.d (guest, #168021)
[Link] (4 responses)
Posted Dec 7, 2023 19:33 UTC (Thu)
by geofft (subscriber, #59789)
[Link]
Posted Dec 7, 2023 20:19 UTC (Thu)
by mjg59 (subscriber, #23239)
[Link]
Posted Dec 7, 2023 20:39 UTC (Thu)
by klossner (subscriber, #30046)
[Link] (1 responses)
Posted Dec 8, 2023 20:22 UTC (Fri)
by simon.d (guest, #168021)
[Link]
Posted Dec 7, 2023 18:32 UTC (Thu)
by BlueLightning (subscriber, #38978)
[Link] (3 responses)
Posted Dec 7, 2023 18:47 UTC (Thu)
by ballombe (subscriber, #9523)
[Link] (2 responses)
Posted Dec 7, 2023 21:04 UTC (Thu)
by NYKevin (subscriber, #129325)
[Link] (1 responses)
Posted Dec 8, 2023 3:28 UTC (Fri)
by raven667 (subscriber, #5198)
[Link]
There are probably a bunch of ways to detect modified boot logo files, by changing the logo to something custom, if it gets reverted to a stock looking one, maybe something is up, or just put additional audit and AV scanning around modifying this image, AV vendors could probably get the SHA512 hash of all the extant custom images from their installed base and check for shenanigans, flagging any new hashes for further scrutiny, or blocking modification.
Im sure there is going to be a long tail of exploitable systems but it is possible to get a handle on this for new systems and maintained systems I think.
Posted Dec 7, 2023 19:55 UTC (Thu)
by roc (subscriber, #30627)
[Link] (11 responses)
* UEFI vendors wrote their own codecs (why?)
Posted Dec 7, 2023 21:52 UTC (Thu)
by Wol (subscriber, #4433)
[Link]
Cheers,
Posted Dec 8, 2023 3:40 UTC (Fri)
by raven667 (subscriber, #5198)
[Link] (3 responses)
In any case, quality of implementation and security testing was not part of the design requirements handed to the developers, they built an image loader that loaded well formed images reliably, "job done, time to move on to the next deliverable" -- some nameless manager in the past. Their test suites are probably focused much more on initializing the hardware correctly on bootup than whether the cosmetic image loaders were robust against attack, even with all the work on SecureBoot. This is still better than the previous system which didn't have a security boundary that could be exploited, you could just change the firmware directly or modify the early boot such that the OS never can tell, there was almost no protection at all from firmware-level persistence for malware. At least this is a flaw that can be fixed.
Posted Dec 8, 2023 8:41 UTC (Fri)
by Wol (subscriber, #4433)
[Link] (1 responses)
I don't think Itanium is pre-world-war-1 :-)
Cheers,
Posted Dec 8, 2023 21:01 UTC (Fri)
by mathstuf (subscriber, #69389)
[Link]
Posted Dec 8, 2023 19:43 UTC (Fri)
by roc (subscriber, #30627)
[Link]
Part of the dialogue around safe languages is people claiming that safe(r) languages are not needed for most code, because most code is not exposed to hostile input. This example well illustrates the weakness of that point. Determining whether code will be exposed to hostile input is not easy, especially when you have to make that decision once for all future time.
Posted Dec 9, 2023 0:14 UTC (Sat)
by tialaramex (subscriber, #21167)
[Link] (2 responses)
These applications should obviously use WUFFS-the-library, it's exactly perfect for them, it's C (WUFFS is not C, but WUFFS-the-library is provided as C) so they can build it with whichever 30 year old proprietary toolchain is "state of the art" in their dusty corner of reality, its performance is best-in-class and it's entirely safe.
It's very, very silly that this isn't the baseline in 2023. I believe Chrome uses WUFFS for one image format (and maybe only on Android?), and that's the sum total of real world impact. It's like if we had an effective vaccine for a serious disease and millions of people with easy access to the vaccine decided they'd rather take their chances without. Oh right, yeah, that's us.
Posted Dec 9, 2023 1:51 UTC (Sat)
by pizza (subscriber, #46)
[Link]
It's probably fair to say that the UEFI bitmap parsing code hasn't been touched since it was originally written/integrated, and that that occurred at least a decade before WUFFS existed.
While WUFFS offers some advantages, it also comes with its own costs [1] and whether or not switching is "worth it" (or even feasible) has to be evaluated on a case-by-case basis.
[1] Even one-off "migration costs" can be non-trivial -- WUFFS-the-library is not a drop-in replacement for $arbitrary_parsing_library, and that's just at the API boundry. Even once that is done, will WUFFS also operate within the same code size/runtime memory/other resource constraints as the old parsing code? Finding out takes time and effort.
Posted Dec 11, 2023 5:18 UTC (Mon)
by roc (subscriber, #30627)
[Link]
I think the actual problem here might just be the BMP format. That's not much used, and is "simpler", so more people have rolled their own and gotten it wrong.
Posted Dec 9, 2023 7:02 UTC (Sat)
by Cyberax (✭ supporter ✭, #52523)
[Link] (2 responses)
Pretty much all UEFI vendors base their firmware on https://www.tianocore.org/ . I tried to find where it implements image parsing, and I was not able to find it. But given that it's an unholy mess with a horrible coding style, I might have missed it.
Posted Dec 9, 2023 8:50 UTC (Sat)
by mjg59 (subscriber, #23239)
[Link]
Posted Dec 9, 2023 12:01 UTC (Sat)
by wtarreau (subscriber, #51152)
[Link]
Posted Dec 7, 2023 21:31 UTC (Thu)
by mat2 (guest, #100235)
[Link] (2 responses)
Posted Dec 13, 2023 13:33 UTC (Wed)
by Random167 (guest, #168499)
[Link] (1 responses)
Posted Dec 18, 2023 4:59 UTC (Mon)
by raven667 (subscriber, #5198)
[Link]
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
> UEFI firmware image out there contains a parser vulnerable to LogoFAIL. This is also confirmed by the data our platform constantly
> scans. Thanks to our triaging efforts, we were able to produce rules for fwhunt, our firmware vulnerability scanner, and confirm that
> every OEM is impacted by this supply chain problem. As we can see in the following table, we detected parsers vulnerable to
> LogoFAIL in hundreds of devices sold by Lenovo, Supermicro, MSI, HP, Acer, Dell, Fujitsu, Samsung and Intel.
> display a logo during boot and when this logo can be replaced by an attacker, using any of the OEM customization techniques
> described in the Attack Surface section of this blogpost, then LogoFAIL becomes an exploitable threat.
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
> For example, devices with modified Android systems (like LineageOS) are "insecure" and therefore many applications refuse to run on them. In reality, Google with DRM tools like Google Play Integrity likely tries to take a tougher grip on Android and limit any forks or free variants.
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
You may not like it, but “owner of the device may do something to his (or her) own device” is very much a security vulnerability, and that something is not limited to “make copy of movie rented for 24 hours”.
The security vulnerabilities you write about are minuscule compared to the real threats and can be further minimized with proper engineering and such. For example, attacks that target modified Android devices are rare because few people root their devices and so the criminals do not target them. Also, the LogoFAIL firmware attack is not likely to be used in the wild because it requires kernel level access in the first place, is likely complicated, device-specific and most criminals do not bother to get such persistence.
I simply don't want to live in a world in which large corporations control which software we can use and which cannot.
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
* UEFI vendors chose badly implemented codecs (why?)
* UEFI vendors chose the standard well-implemented codecs (libpng, libjpeg etc) and never updated them (easy to understand why, but even ten years ago libpng etc were pretty well hardened against fuzzing attacks)
* UEFI vendors chose standard well-implemented codecs and then modified them to fit into their environment, and those modifications introduced vulnerabilities
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Wol
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Wol
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)
Also the firmware update software relies on the firmware to do the job which is compromised in the first place… the worst case is to flash a new firmware by a flash programmer like dediprog, until then your system will be kept compromised.
Just about every Windows and Linux device vulnerable to new LogoFAIL firmware attack(ars technica)