CVE-2016-4970: Loop with Unreachable Exit Condition in Netty

io.netty:netty-handler Updated 02 Oct 2025

Summary

13/05/2022
Yes i
High
7.5

CVE-2016-4970: Loop with Unreachable Exit Condition in Netty. Affects io.netty:netty-handler across 2 version ranges.

>= 4.0.0.Alpha1, < 4.0.37.Final >= 4.1.0.Beta1, < 4.1.1.Final

Fixed in 4.0.37.Final or 4.1.1.Final, depending on the release line you run. How to fix ↓

Also tracked for

The same CVE-2016-4970 is tracked separately for each ecosystem and vendor. Its fix information is the same; the package and affected versions differ.

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Sponsored Devnack Penetration testing for web, API and mobile Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

Netty is a popular open-source networking framework written in Java. It provides an asynchronous event-driven network application framework for rapid development of maintainable high-performance protocol servers and clients. Netty is widely used in various applications, including web servers, proxy servers, and network communication libraries. However, versions 4.0.x before 4.0.37.Final and 4.1.x before 4.1.1.Final of Netty are vulnerable to a denial of service (DoS) attack due to a loop with an unreachable exit condition in the OpenSslEngine class.

Vulnerability Detail

The vulnerability in Netty arises from a flaw in the OpenSslEngine class. Remote attackers can exploit this vulnerability to cause an infinite loop, resulting in a denial of service. By sending specially crafted network packets, an attacker can trigger the vulnerable code path, causing the affected Netty server or client to consume excessive CPU resources and become unresponsive. This can lead to a complete service outage and disruption of normal operations.

How To Fix

Fixed versions by release line

The minimum fixed version depends on the release line you run.

  • >= 4.0.0.Alpha1, < 4.0.37.Final 4.0.37.Final
  • >= 4.1.0.Beta1, < 4.1.1.Final 4.1.1.Final

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Workaround

If upgrading to the fixed versions is not immediately feasible, a temporary workaround can be implemented by disabling the affected functionality. In this case, the OpenSslEngine class should be excluded or replaced with an alternative implementation. However, this workaround may result in reduced functionality or performance, and it is strongly recommended to apply the official fix as soon as possible.

Conclusion

The vulnerability in Netty can lead to a denial of service (DoS) attack by causing an infinite loop. It is crucial to upgrade to the fixed versions of Netty (4.0.37.Final or later for 4.0.x, and 4.1.1.Final or later for 4.1.x) to mitigate this vulnerability. If immediate upgrade is not possible, a temporary workaround can be implemented by disabling the affected functionality. For further assistance and support in vulnerability remediation, please contact DevNack.com.

See every vulnerability recorded for io.netty:netty-handler →

Share this vulnerability

FAQ

Netty is an open-source networking framework written in Java that provides an asynchronous event-driven network application framework for rapid development of maintainable high-performance protocol servers and clients.

Versions 4.0.x before 4.0.37.Final and 4.1.x before 4.1.1.Final of Netty are affected by this vulnerability.

This vulnerability allows remote attackers to cause a denial of service (DoS) by triggering an infinite loop in the affected Netty server or client. This can lead to a complete service outage and disruption of normal operations.

To fix this vulnerability, it is recommended to upgrade to the fixed versions of Netty (4.0.37.Final or later for 4.0.x, and 4.1.1.Final or later for 4.1.x).

Yes, a temporary workaround is to disable the affected functionality by excluding or replacing the OpenSslEngine class. However, it is strongly recommended to apply the official fix as soon as possible.

Related vulnerabilities

Recent vulnerabilities recorded for io.netty:netty-handler.

How To Fix

Fixed versions by release line

The minimum fixed version depends on the release line you run.

  • >= 4.0.0.Alpha1, < 4.0.37.Final 4.0.37.Final
  • >= 4.1.0.Beta1, < 4.1.1.Final 4.1.1.Final

Tip — Not sure which release line you're on? Vulert can find the fix for the version you are using. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback