Fwupd Will Use Zstd Compression (9to5linux.com)
from GravelPieceOfSword@lemmy.ca to linux@lemmy.ml on 03 Apr 2024 17:29
https://lemmy.ca/post/18710798

Linux Firmware Update Utility Fwupd Will Use Zstd Compression for Future Releases

The devs are also considering enforcing signed commits in an attempt to prevent supply chain issues like the XZ backdoor.

Edit: note for downvotes: I understand some of you disagree with the need for a switch. However, are you downvoting the news itself (i.e. shooting the messenger?)

#linux

threaded - newest

BaalInvoker@lemmy.eco.br on 03 Apr 2024 19:37 next collapse

I think it solves nothing, cause it’s not primarily a XZ issue itself, but some bad actors that infiltrate into the community for years to finally use his credibility to upload a backdoor. Every single package is vulnerable to this kind of attack and has little we can do to completely avoid it

Of course we have to make the best moves to prevent this happening again, however it’s not a simple “I’ll use X instead of Z” (see what I did here?!), cause both X and Z may be doomed with this shit anytime

GravelPieceOfSword@lemmy.ca on 03 Apr 2024 19:47 next collapse

The article states reasons which aren’t limited to what happened. I understand and agree with your sentiment about the supply chain issue being something that could happen anywhere - those were my initial thoughts too.

The reasons for shifting are related to speed, other mainstream software already having made that switch years ago (pre incident), and unfortunately… More robustness in terms of maintainers.

Open source funding and resilience should be mainstream discussions. Open source verification and security reliability should be mainstream discussions: here’s a recent mastodon thread I found interesting:

ruby.social/@getajobmike/112202543680959859

However, people switching from x to z (I did see what you did there) is something that is going to happen considering the other factors listed in the article that I summarized above.

BaalInvoker@lemmy.eco.br on 03 Apr 2024 21:18 collapse

Well, if the choice to change from XZ to zstd is based on other technical features, my previous point is pointless

It’s always great to see better technology being implemented!

Killing_Spark@feddit.de on 04 Apr 2024 14:19 collapse

One good thing about zstd is that the main developer is full-time employed to work on it. Alas he’s employed by meta to do that… But it’s likely harder to social engineer your way into that project

bigmclargehuge@lemmy.world on 05 Apr 2024 11:47 collapse

This is definitely a huge unsung benefit of having larger corperations get their fingers into FOSS projects. Not just the funding, which is great, but the literal job security. Good luck bullying a meta or google employee into giving over control to a stranger.

rollingflower@lemmy.kde.social on 03 Apr 2024 23:03 next collapse

As did Fedora for RPM packaging since 31. Good progress, but signed commits have nothing to do here I think.

unionagainstdhmo@aussie.zone on 03 Apr 2024 23:06 next collapse

www.softwaremaxims.com/blog/not-a-supplier

Calling it a supply chain is rich. Also I’m pretty sure the XZ person was signing their commits anyway.

GravelPieceOfSword@lemmy.ca on 03 Apr 2024 23:27 next collapse

As with all definitions, there is a gray area where people will have different boundaries on exact meanings. To you - a supplier relationship needs an explicit payment, which is a fair definition.

However, the more widely used definition that most people, including me, refer to, is not necessarily focused on the supplier, but on the supply - what we use in our toolchains is a supply - regardless of how it was obtained.

When there is an issue in a trusted supply, even if it was not a commercial relationship (a prerequisite by your definition), it is a supply-chain attack by the more widely used definition.

possiblylinux127@lemmy.zip on 04 Apr 2024 13:08 collapse

Brodie is that you?

Anyhow I would argue that it is indeed a supply chain but you still need to be respectful of the volunteers. The article seems to mostly talking about proprietary software anyway.

unionagainstdhmo@aussie.zone on 04 Apr 2024 23:16 collapse

Brodie is that you?

His video is where I got that from. Well as the article points out it’s not like a traditional supply chain where there is an agreement or guarantees.

MigratingtoLemmy@lemmy.world on 04 Apr 2024 06:23 next collapse

I think that’s a decent approach

bizdelnick@lemmy.ml on 04 Apr 2024 06:45 next collapse

Look at what libs zstd is linked to. You’ll be surprised.

Laser@feddit.de on 04 Apr 2024 12:53 next collapse

Here, it’s libzstd.so, libc and glibc, and libzstd only libc and glibc. What do you mean? At first I thought you were implying an liblzma dependency, but there’s no such thing, at least can’t see it.

Killing_Spark@feddit.de on 04 Apr 2024 14:17 next collapse

Apparently it differs between distributions

bizdelnick@lemmy.ml on 04 Apr 2024 15:22 collapse

% libtree /usr/bin/zstd
/usr/bin/zstd 
├── libz.so.1 [ld.so.conf]
├── liblz4.so.1 [ld.so.conf]
└── liblzma.so.5 [ld.so.conf]
% lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 12 (bookworm)
Release:        12
Codename:       bookworm
%
tastysnacks@programming.dev on 04 Apr 2024 15:35 next collapse

Bookworm was unaffected by this though, right?

bizdelnick@lemmy.ml on 04 Apr 2024 15:58 next collapse

% xz --version 
xz (XZ Utils) 5.4.1
liblzma 5.4.1
%

I hope so.

caseyweederman@lemmy.ca on 05 Apr 2024 00:42 collapse

Canonical is delaying Noble by more than a week so they can rebuild every binary in a clean environment, just in case the build process itself was affected.

Laser@feddit.de on 04 Apr 2024 15:50 collapse

Maybe Debian’s goal is to make liblzma a dependency of everything possible? It wasn’t a standard dependency of OpenSSH either, but rather something they patched in. ;)

bizdelnick@lemmy.ml on 04 Apr 2024 15:57 collapse

What’s your distro and how did you check needed libraries? I guess that liblzma.so can be needed by libzstd.so in your system.

Laser@feddit.de on 04 Apr 2024 16:01 collapse

NixOS, did a ldd (which zstd) and then ldd on the reported libzstd file.

Not using a POSIX shell before people complain about syntax

Edit: if you look at github.com/NixOS/nixpkgs/blob/…/default.nix, you’ll see that buildInputs is not being set, which means it can’t link to anything except the standard libraries.

lemmyreader@lemmy.ml on 04 Apr 2024 13:38 collapse

ldd $(which zstd)

liblzma.so.5

… wow

rotopenguin@infosec.pub on 04 Apr 2024 18:21 collapse

<img alt="" src="https://infosec.pub/pictrs/image/a5cfce6f-a755-42a8-aaac-1a20f237abd2.png">

mariusafa@lemmy.sdf.org on 04 Apr 2024 12:48 next collapse

I thought major software devs used signed commits. I don’t have that much git experience and I have everything gpg signed even since the first repo I did.

This makes me question a lot of software.

GravelPieceOfSword@lemmy.ca on 04 Apr 2024 13:00 collapse

They do. They did. What do you do when a ‘good guy’ is really a bad guy? Happens outside of software too. Someone inserts themselves into an organization while secretly working against its interests.

Here’s a good summary. However, you should read a few articles - plenty have been going around, including on Lemmy.

<img alt="" src="https://lemmy.ca/pictrs/image/ff7ab46a-d36b-4581-9b39-e28dd7ce1749.jpeg">

lemmyreader@lemmy.ml on 04 Apr 2024 13:33 next collapse

Following Arch Linux which made that move years ago. archlinux.org/…/now-using-zstandard-instead-of-xz…

As announced on the mailing list, on Friday, Dec 27 2019, our package compression scheme has changed from xz (.pkg.tar.xz) to zstd (.pkg.tar.zst).

gianni@lemmy.ml on 05 Apr 2024 17:39 collapse

Aside from the backdoor (which is a moot point when talking about zstd anyway), there are a number of other very good reasons to use ZSTD.