Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

libav: mark as insecure #111330

Merged
merged 19 commits into from
Feb 8, 2021
Merged

libav: mark as insecure #111330

merged 19 commits into from
Feb 8, 2021

Conversation

dotlambda
Copy link
Member

@dotlambda dotlambda commented Jan 30, 2021

Motivation for this change

closes #90844 and closes #90852 and closes #90839
I didn't list all vulnerabilities under knownVulnerabilities.

Consequences of this change

This disables the following packages:

7 packages removed:
clickshare-csc1 (†01.07.00.033) keyfinder (†2.2) libav (†0.8.21) libav (†11.12) libav (†12.3) vdr-markad (†2017-03-13) vdr-xineliboutput (†2.2.0)

Is there a way to make ofborg ping their maintainers?

For those maintainers: Consider switching to ffmpeg.

@dotlambda dotlambda added 1.severity: security Issues which raise a security issue, or PRs that fix one 9.needs: port to stable A PR needs a backport to the stable release. labels Jan 30, 2021
@erictapen
Copy link
Member

Thats a lot of packages to break. Why don't we patch for the vulnerabilities?

@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux labels Jan 30, 2021
@dotlambda
Copy link
Member Author

Thats a lot of packages to break. Why don't we patch for the vulnerabilities?

I guess we could find some patches over at ffmpeg, but wouldn't it be easier to patch everything to use ffmpeg instead?

@vcunat
Copy link
Member

vcunat commented Jan 30, 2021

I'm not aware of a way to notify them. steam* is certainly used; I'm not sure how important libav is in there and perhaps ffmpeg is perfectly OK.

@dotlambda
Copy link
Member Author

@jtojnar @IvarWithoutBones @prusnak Libav is not in https://github.com/AppImage/pkg2appimage/blob/master/excludelist. Should we just remove it from appimageTools's dependencies or replace it by ffmpeg?

@ofborg ofborg bot added 10.rebuild-linux: 1-10 10.rebuild-linux: 11-100 and removed 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux 10.rebuild-linux: 1-10 labels Jan 30, 2021
@ofborg ofborg bot requested a review from rycee January 30, 2021 19:10
@ofborg ofborg bot added 10.rebuild-darwin: 1-10 and removed 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin labels Jan 30, 2021
@dotlambda
Copy link
Member Author

dotlambda commented Jan 30, 2021

Thats a lot of packages to break.

We brought the number down from 74 to 7.

@ofborg ofborg bot requested a review from alkeryn January 30, 2021 19:25
@rycee
Copy link
Member

rycee commented Jan 30, 2021

Checked the unpaper change and it is OK. Thanks!

@ofborg ofborg bot requested review from ggPeti and fpletz January 30, 2021 20:17
@twhitehead
Copy link
Contributor

My only experience is with the ovito package. I changed libav in the buildInputs to ffmpeg and it built fine, so certainly seems worthwhile trying the same with any of these other packages that people may be using.

Copy link
Contributor

@twhitehead twhitehead left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's a huge list of CVEs with no hope of being fixed upstream. With ffmpeg being pretty much a drop in replacement, makes sense to start the process of phasing out its usage.

Comment on lines +131 to +133
lib.optional (lib.versionOlder version "12.1") "CVE-2017-9051"
++ lib.optionals (lib.versionOlder version "12.3") [ "CVE-2018-5684" "CVE-2018-5766" ]
++ lib.optionals (lib.versionOlder version "12.4") [ "CVE-2019-9717" "CVE-2019-9720" ];
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@dotlambda
Copy link
Member Author

Alternative suggestion: Just use libav as an alias for ffmpeg and drop the expressions for libav. This will cause some packages not to build which should also catch the maintainers' attention.

@dotlambda
Copy link
Member Author

@erikarvstedt @peti @romildo Can we make untrunc an alias of untrunc-anthwlock?

@romildo
Copy link
Contributor

romildo commented Feb 1, 2021

@erikarvstedt @peti @romildo Can we make untrunc an alias of untrunc-anthwlock?

It is ok for me. untrunc-anthwlock has more features than untrunc.

@ofborg ofborg bot requested a review from astsmtl February 1, 2021 13:25
@WolfangAukang
Copy link
Contributor

#111693 for signumone-ks. Removing libav_0_8

@yaroot
Copy link
Contributor

yaroot commented Feb 3, 2021

@dotlambda I don't think zulu should depend on libav or ffmpeg, I've checked all the so files it should be fine to remove them.

@@ -294,6 +294,7 @@ mapAliases ({
kinetic-cpp-client = throw "kinetic-cpp-client has been removed from nixpkgs, as it's abandoned."; # 2020-04-28
kicad-with-packages3d = kicad; # added 2019-11-25
krename-qt5 = krename; # added 2017-02-18
keyfinder = throw "keyfinder has been removed because it was broken"; # added 2021-02-01
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It seems to work for someone #18475 (comment)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

False positive: #18475 (comment) ;-)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ajs124 Or would say we should keep it anyway? It would defiitely be marked as insecure.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Instead of removing it, I now added a commit updating it to version 2.4.

@Yarny0
Copy link
Contributor

Yarny0 commented Feb 4, 2021

Thanks for the notification about clickshare-csc1. Sadly, clickshare won't build with ffmpeg: It needs libswscale.so.2 which is not provided by any of the ffmpeg versions currently in nixpkgs. I suspect it would need a much older ffmpeg version which we no longer package. Sadly, there is no hope for an update of clickshare as the company no longer produces a linux version.

As long as libav_0_8 isn't removed from nixpkgs, it's probably best to leave clickshare as it is. Users are warned about the situation and can decide themselves if they accept the risk of installing a vulnerable package. I don't know of any other solution.

@dotlambda
Copy link
Member Author

Is anything preventing us from merging?

@dotlambda dotlambda merged commit 9a200f6 into NixOS:master Feb 8, 2021
@dotlambda dotlambda deleted the libav-insecure branch February 8, 2021 11:18
@dotlambda
Copy link
Member Author

backport: #112396

@TredwellGit TredwellGit added 8.has: port to stable A PR already has a backport to the stable release. and removed 9.needs: port to stable A PR needs a backport to the stable release. labels Aug 20, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
1.severity: security Issues which raise a security issue, or PRs that fix one 6.topic: steam Steam game store/launcher (store.steampowered.com) 8.has: clean-up 8.has: port to stable A PR already has a backport to the stable release. 10.rebuild-darwin: 1-10 10.rebuild-linux: 11-100
Projects
None yet