There exists a use after free/double free in libwebp. An attacker can use the ApplyFiltersAndEncode() function and loop through to free best.bw and assign best = trial pointer. The second loop will then return 0 because of an Out of memory error in VP8 encoder, the pointer is still assigned to trial and the AddressSanitizer will attempt a double free.
Published 2023-06-20 12:15:10
Updated 2025-02-13 17:16:01
Source Google Inc.
View at NVD,   CVE.org
Vulnerability category: Memory Corruption

Products affected by CVE-2023-1999

Exploit prediction scoring system (EPSS) score for CVE-2023-1999

0.25%
Probability of exploitation activity in the next 30 days EPSS Score History
~ 48 %
Percentile, the proportion of vulnerabilities that are scored at or less

CVSS scores for CVE-2023-1999

Base Score Base Severity CVSS Vector Exploitability Score Impact Score Score Source First Seen
5.3
MEDIUM CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:N/A:N
1.6
3.6
Google Inc.
7.5
HIGH CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
3.9
3.6
NIST

CWE ids for CVE-2023-1999

  • The product calls free() twice on the same memory address.
    Assigned by: nvd@nist.gov (Primary)
  • The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer.
    Assigned by:
    • cve-coordination@google.com (Secondary)
    • nvd@nist.gov (Primary)

References for CVE-2023-1999

Jump to
This web site uses cookies for managing your session, storing preferences, website analytics and additional purposes described in our privacy policy.
By using this web site you are agreeing to CVEdetails.com terms of use!