CVE-2018-1000168: Input Validation

Published Apr 9, 2018
·
Updated

If ALTSVC frame is received by libnghttp2 and it is larger than it can accept, the pointer field which points to ALTSVC frame payload is left NULL. Later libnghttp2 attempts to access another field through the pointer, and gets segmentation fault. The largest frame size libnghttp2 accept is by default 16384 bytes.

Receiving ALTSVC frame is disabled by default. Application has to enable it explicitly by calling nghttp2optionsetbuiltinrecvextensiontype(opt, NGHTTP2ALTSVC).

Transmission of ALTSVC is always enabled, and it does not cause this vulnerability. ALTSVC frame is expected to be sent by server, and received by client as defined in RFC 7838.

Affected versions: nghttp2 >= 1.10.0 and nghttp2 <= v1.31.0

Other sources

nghttp2 version >= 1.10.0 and nghttp2 <= v1.31.0 contains an Improper Input Validation CWE-20 vulnerability in ALTSVC frame handling that can result in segmentation fault leading to denial of service. This attack appears to be exploitable via network client. This vulnerability appears to have been fixed in >= 1.31.1.

Affected Software

7 affected componentsFixes available
redhat/nghttp2<1.31.1
1.31.1
nghttp2 nghttp2>=1.10.0<=1.31.0
Nodejs Node.js>=6.0.0<=6.8.1
Nodejs Node.js>=8.4.0<=8.17.0
Nodejs Node.js>=9.0.0<=9.11.2
Nodejs Node.js>=10.0.0<10.4.1
Debian Debian Linux=9.0

Event History

May 8, 2018
CVE Published
via MITRE·03:00 PM
Data Sourced
via MITRE·03:00 PM
Description
Data Sourced
via NVD·03:29 PM
DescriptionSeverityWeaknessAffected Software

Frequently Asked Questions

1

What is CVE-2018-1000168?

CVE-2018-1000168 is a vulnerability in nghttp2 version >= 1.10.0 and nghttp2 <= v1.31.0 that contains an Improper Input Validation CWE-20 vulnerability in ALTSVC frame handling.

2

How severe is CVE-2018-1000168?

CVE-2018-1000168 has a severity rating of 7.5 (high).

3

Which software versions are affected by CVE-2018-1000168?

nghttp2 version >= 1.10.0 and <= v1.31.0, Node.js versions 6.0.0 to 6.8.1, 8.4.0 to 8.17.0, and 9.0.0 to 9.11.2, as well as Debian Linux version 9.0 are affected by CVE-2018-1000168.

4

How can the CVE-2018-1000168 vulnerability be exploited?

The CVE-2018-1000168 vulnerability can be exploited through a network client.

5

How can I fix CVE-2018-1000168?

To fix CVE-2018-1000168, you should update your nghttp2 package to version 1.31.1.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203