An issue was discovered in wolfSSL before 5.5.0 (when --enable-session-ticket is used); however, only version 5.3.0 is exploitable. Man-in-the-middle attackers or a malicious server can crash TLS 1.2 clients during a handshake. If an attacker injects a large ticket (more than 256 bytes) into a NewSessionTicket message in a TLS 1.2 handshake, and the client has a non-empty session cache, the session cache frees a pointer that points to unallocated memory, causing the client to crash with a "free(): invalid pointer" message. NOTE: It is likely that this is also exploitable during TLS 1.3 handshakes between a client and a malicious server. With TLS 1.3, it is not possible to exploit this as a man-in-the-middle.
The product allocates a reusable resource or group of resources on behalf of an actor without imposing any restrictions on the size or number of resources that can be allocated, in violation of the intended security policy for that actor.
Link | Tags |
---|---|
https://github.com/wolfSSL/wolfssl/releases | release notes |
https://www.wolfssl.com/docs/security-vulnerabilities/ | vendor advisory |
https://github.com/wolfSSL/wolfssl/pull/5476 | patch third party advisory exploit |
https://github.com/trailofbits/tlspuffin | not applicable |
http://seclists.org/fulldisclosure/2023/Jan/8 | mailing list third party advisory exploit |
http://packetstormsecurity.com/files/170605/wolfSSL-5.3.0-Denial-Of-Service.html | third party advisory exploit |
https://blog.trailofbits.com/2023/01/12/wolfssl-vulnerabilities-tlspuffin-fuzzing-ssh/ | third party advisory |