LiteSpeed Blog: LSQUIC Security Enhancements Announced

NewsLiteSpeed Blog: LSQUIC Security Enhancements Announced

Understanding the LSQUIC Security Vulnerability and Its Resolution

In a recent development, a vulnerability affecting multiple QUIC (Quick UDP Internet Connections) implementations, including the LiteSpeed QUIC and HTTP/3 Library (LSQUIC), has been identified and addressed. This security flaw, which can potentially lead to a denial-of-service attack, was discovered by Paul Bottinelli, a Cryptography and Security Consultant with NCC Group. It has been cataloged under the identifier CVE-2025-24947. This article delves into the specifics of the vulnerability, its implications, and the necessary steps for mitigation.

The Vulnerability Explained

The identified issue is a Hash-based Denial-of-Service (DoS) vulnerability. Simply put, in computer science, a hash table is a data structure that maps keys to values for efficient data retrieval. In the case of LSQUIC and other QUIC implementations, hash tables are used to store Secure Connection IDs (SCIDs), which act as identifiers for secure internet connections.

If the hash function used is not robust enough, an attacker can exploit this by creating connections with SCIDs that collide, or match, causing the system to slow down or become unresponsive. This is akin to a traffic jam on a highway, where multiple cars (or data packets) pile up, causing significant delays.

Although LSQUIC was technically vulnerable to this attack, it has a built-in rate-limiting mechanism that mitigates the risk. This feature triggers a Retry packet if too many INIT packets—initial connection requests—are detected, thus preventing the client-generated SCID from being hashed. In practical terms, this makes it challenging to exploit the vulnerability in real-world scenarios.

The Patch and Its Implementation

Previously, LSQUIC used a hash function called XXH32() to generate a 32-bit hash key. While efficient, XXH32() is susceptible to hash collisions. To address this, the LSQUIC library has been updated to version 4.2.0, which uses a more robust hash function known as rapidhash. This new implementation generates a 64-bit hash key, significantly reducing the chances of collisions by using a stronger random seed.

To illustrate the effectiveness of the new hash function, consider the following examples:

  • Without a random seed:
    • SCID: 211C6C858BB29CDD408F1EBDAA43A980CE016B71 results in hash: F3C569EBDE612455
    • SCID: 211CEC85DBB29CDE418F1EBDAA43A980CF214B71 results in hash: F3C569EBDE612455
  • With a random seed:
    • SCID: 211C6C858BB29CDD408F1EBDAA43A980CE016B71 results in hash: 3173D06C62EB64E2
    • SCID: 211CEC85DBB29CDE418F1EBDAA43A980CF214B71 results in hash: EF06763606005C05

      The results show that, with a seed, the hash values differ, reducing the likelihood of hash collisions and thus the potential for a DoS attack.

      Recommended Actions

      For anyone using the QUIC and HTTP/3 library, it is crucial to update to LSQUIC version 4.2.0 or later to secure against this vulnerability. Additionally, users of LiteSpeed server products, such as LiteSpeed Web Server (LSWS), LiteSpeed Web ADC (LSADC), and OpenLiteSpeed (OLS), should ensure they are running the latest product versions.

      Timeline of Events

  • January 10, 2025: The vulnerability was reported to LiteSpeed.
  • January 15, 2025: A patch was added to the internal repository for integration into upcoming builds.
  • February 18, 2025: New versions of LSWS (v6.3.2), LSADC (v3.3.0), and OLS (v1.8.3) were released.
  • February 18, 2025: LSQUIC version 4.2.0 was made available on GitHub.

    Conclusion

    The proactive identification and resolution of this vulnerability underscore the importance of regular software updates and security vigilance. Thanks to Paul Bottinelli’s efforts, the issue was swiftly addressed, ensuring that systems using LSQUIC remain secure.

    If your systems rely on LSQUIC or LiteSpeed server products, confirm that they are updated to the latest versions. Regular updates not only protect against vulnerabilities but also improve performance and stability.

    For further information, you can refer to the official announcement on the LiteSpeed Blog.

    Additional Information: Understanding Hash Functions

    For readers unfamiliar with hash functions, they are mathematical algorithms that convert data into a fixed-size string of characters, which typically appears as a sequence of numbers and letters. The same input will always produce the same output, but even a small change in input can result in a completely different output. This property makes hash functions valuable for data verification and integrity checks in digital communications and storage.

For more Information, Refer to this article.

Neil S
Neil S
Neil is a highly qualified Technical Writer with an M.Sc(IT) degree and an impressive range of IT and Support certifications including MCSE, CCNA, ACA(Adobe Certified Associates), and PG Dip (IT). With over 10 years of hands-on experience as an IT support engineer across Windows, Mac, iOS, and Linux Server platforms, Neil possesses the expertise to create comprehensive and user-friendly documentation that simplifies complex technical concepts for a wide audience.
Watch & Subscribe Our YouTube Channel
YouTube Subscribe Button

Latest From Hawkdive

You May like these Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

This site uses Akismet to reduce spam. Learn how your comment data is processed.