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

[19.03] nginx: apply patches from 1.16.1 for HTTP/2 vulnerabilities #66605

Merged
merged 1 commit into from Aug 14, 2019

Conversation

@vincentbernat
Copy link
Contributor

commented Aug 14, 2019

Motivation for this change

Fixing CVE-2019-9511, CVE-2019-9513, CVE-2019-9516 affecting HTTP/2 protocol in nginx 1.14.2 and 1.15.10.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

I am running a patched 1.14.2 on my web servers (low traffic) without any issue. 1.15.10 was only tested to compile correctly. I have based this PR on release-19.03, should I base it on staging instead?

Notify maintainers

cc @thoughtpolice @fpletz

nginx: apply patches from 1.16.1 for HTTP/2 vulnerabilities
When using HTTP/2 a client might cause excessive memory consumption
and CPU usage (CVE-2019-9511, CVE-2019-9513, CVE-2019-9516). The
problems have been patched upstream in 1.16.1 and 1.17.2, but no patch
is available for 1.14.2 and 1.15.10. The patches from 1.16.1 applies
without any issue.

See #66582 for the update in master.
@mmahut

This comment has been minimized.

Copy link
Member

commented Aug 14, 2019

@GrahamcOfBorg build nginx

@mmahut

This comment has been minimized.

Copy link
Member

commented Aug 14, 2019

@GrahamcOfBorg test nginx

@aszlig aszlig referenced this pull request Aug 14, 2019

Merged

nginx update #66582

3 of 10 tasks complete

@aszlig aszlig merged commit d16d738 into NixOS:release-19.03 Aug 14, 2019

18 checks passed

Evaluation Performance Report Evaluator Performance Report
Details
grahamcofborg-eval ^.^!
Details
grahamcofborg-eval-check-maintainers matching changed paths to changed attrs...
Details
grahamcofborg-eval-check-meta config.nix: checkMeta = true
Details
grahamcofborg-eval-darwin nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A darwin-tested
Details
grahamcofborg-eval-nixos nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./nixos/release-combined.nix -A tested
Details
grahamcofborg-eval-nixos-manual nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./nixos/release.nix -A manual
Details
grahamcofborg-eval-nixos-options nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./nixos/release.nix -A options
Details
grahamcofborg-eval-nixpkgs-manual nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A manual
Details
grahamcofborg-eval-nixpkgs-tarball nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A tarball
Details
grahamcofborg-eval-nixpkgs-unstable-jobset nix-instantiate --arg nixpkgs { outPath=./.; revCount=999999; shortRev="ofborg"; } ./pkgs/top-level/release.nix -A unstable
Details
grahamcofborg-eval-package-list nix-env -qa --json --file .
Details
grahamcofborg-eval-package-list-no-aliases nix-env -qa --json --file . --arg config { allowAliases = false; }
Details
nginx on aarch64-linux Success
Details
nginx on x86_64-darwin Success
Details
nginx on x86_64-linux Success
Details
tests.nginx on aarch64-linux Success
Details
tests.nginx on x86_64-linux Success
Details

aszlig added a commit that referenced this pull request Aug 14, 2019

Merge pull request #66605 (nginx security fixes)
This applies a series of patches to fix CVE-2019-9511, CVE-2019-9513 and
CVE-2019-9516 affecting HTTP/2 protocol, all of those can possibly lead
to DoS.

Details about these vulnerabilities can be found at:

https://github.com/Netflix/security-bulletins/blob/216433296d3bc542496a8edae5b4ca39cfd892b1/advisories/third-party/2019-002.md

I haven't extensively tested this, but from a quick test, nginx is still
working and the NixOS tests also succeed.

Thanks to @vincentbernat for the pull request.
patches = stdenv.lib.optionals (stdenv.hostPlatform != stdenv.buildPlatform) [
patches = [
# HTTP/2: reject zero length headers with PROTOCOL_ERROR (from 1.16.1)
(fetchpatch {

This comment has been minimized.

Copy link
@aszlig

aszlig Aug 14, 2019

Member

Thanks a lot, minor nitpick though: Indentation should be 2 spaces, but I merged anyway so we have this in the channel ASAP.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
3 participants
You can’t perform that action at this time.