Source: nix
X-Debbugs-CC: t...@security.debian.org
Severity: important
Tags: security

Hi,

The following vulnerability was published for nix.

CVE-2024-47174[0]:
| Nix is a package manager for Linux and other Unix systems. Starting
| in version 1.11 and prior to versions 2.18.8 and 2.24.8,
| `<nix/fetchurl.nix>` did not verify TLS certificates on HTTPS
| connections. This could lead to connection details such as full URLs
| or credentials leaking in case of a man-in-the-middle (MITM) attack.
| `<nix/fetchurl.nix>` is also known as the builtin derivation builder
| `builtin:fetchurl`. It's not to be confused with the evaluation-time
| function `builtins.fetchurl`, which was not affected by this issue.
| A user may be affected by the risk of leaking credentials if they
| have a `netrc` file for authentication, or rely on derivations with
| `impureEnvVars` set to use credentials from the environment. In
| addition, the commonplace trust-on-first-use (TOFU) technique of
| updating dependencies by specifying an invalid hash and obtaining it
| from a remote  store was also vulnerable to a MITM injecting
| arbitrary store objects. This also applied to the impure derivations
| experimental feature. Note that this may also happen when using
| Nixpkgs fetchers to obtain new hashes when not using the fake hash
| method, although that mechanism is not implemented in Nix itself but
| rather in Nixpkgs using a fixed-output derivation. The behavior was
| introduced in version 1.11 to make it consistent with the Nixpkgs
| `pkgs.fetchurl` and to make `<nix/fetchurl.nix>` work in the
| derivation builder sandbox, which back then did not have access to
| the CA bundles by default. Nowadays, CA bundles are bind-mounted on
| Linux. This issue has been fixed in Nix 2.18.8 and 2.24.8. As a
| workaround, implement (authenticated) fetching with `pkgs.fetchurl`
| from Nixpkgs, using `impureEnvVars` and `curlOpts` as needed.

https://github.com/NixOS/nix/commit/062b4a489e30da9c85fa4ff15cfdd2e51cac7b90
https://github.com/NixOS/nix/pull/11585
https://github.com/NixOS/nix/security/advisories/GHSA-6fjr-mq49-mm2c


If you fix the vulnerability please also make sure to include the
CVE (Common Vulnerabilities & Exposures) id in your changelog entry.

For further information see:

[0] https://security-tracker.debian.org/tracker/CVE-2024-47174
    https://www.cve.org/CVERecord?id=CVE-2024-47174

Please adjust the affected versions in the BTS as needed.

Reply via email to