{"id":"CVE-2026-59959","aliases":[],"cve":{"records":[{"id":"CVE-2026-59959","source":"GitHub_M","state":"PUBLISHED","reasons":[],"replacements":[],"disputed":false,"unsupportedWhenAssigned":false,"reserved":"2026-07-07T18:49:15.608Z","published":"2026-10-28T13:17:29.214Z","modified":"2026-10-29T18:39:38.355Z"}],"publishers":[{"name":"GitHub_M","role":"CNA","organizationId":"a0819718-46f1-4df5-94e2-005712e83aaa","modified":"2026-10-28T13:17:29.214Z"},{"name":"CISA-ADP","role":"ADP","organizationId":"134c704f-9b21-4f2e-91b3-4a467353bcc0","modified":"2026-10-29T18:39:38.355Z"}],"references":[{"url":"https://github.com/HappySeaFox/sail/security/advisories/GHSA-5g8g-g347-84m8","tags":["x_refsource_CONFIRM"],"source":"GitHub_M"},{"url":"https://github.com/HappySeaFox/sail/commit/495660135a4c62e416a1b357a4381dd30069229d","tags":["x_refsource_MISC"],"source":"GitHub_M"},{"url":"https://github.com/HappySeaFox/sail/tree/v1.0.2","tags":["x_refsource_MISC"],"source":"GitHub_M"},{"url":"https://github.com/HappySeaFox/sail/security/advisories/GHSA-5g8g-g347-84m8","tags":["exploit"],"source":"CISA-ADP"}],"weaknesses":[{"id":"CWE-369","description":"CWE-369: Divide By Zero","source":"GitHub_M"}],"applicability":[],"prioritization":[{"source":"CISA-ADP","type":"SSVC","role":"CISA Coordinator","timestamp":"2026-10-29T18:39:15.378792Z","decisions":[{"name":"Exploitation","value":"poc"},{"name":"Automatable","value":"no"},{"name":"Technical Impact","value":"partial"}]}]},"title":"SAIL: WebP decoder division by zero through malformed animated canvas metadata","titleSource":"GitHub_M","descriptionSource":"GitHub_M","description":"SAIL is a cross-platform library for loading and saving images with support for animation, metadata, and ICC profiles. Prior to version 1.0.2, the built-in WebP decoder can crash during loader initialization when processing a malformed animated WebP file with inconsistent container or `ANMF` frame metadata. In `sail_codec_load_init_v8_webp()` in `src/sail-codecs/webp/webp.c`, `WebPDemuxGetI` with `WEBP_FF_CANVAS_WIDTH` can return a zero `image_local->width`, which is then used as a divisor when calculating `bytes_per_pixel` from the image row size. The division happens before frame decoding and before generic image skeleton validation in `src/sail/sail_advanced.c`, causing an arithmetic fault and process termination. Applications accepting untrusted WebP images can consequently suffer denial of service; builds must include the affected WebP codec. This issue is fixed in version 1.0.2.","score":4.8,"severity":"medium","published":"2026-10-28T13:17:29.214Z","modified":"2026-10-29T18:39:38.355Z","withdrawn":false,"knownExploited":false,"affected":[],"products":[{"vendor":"HappySeaFox","name":"sail","platforms":[],"versions":[{"version":"< 1.0.2","status":"affected"}],"cpes":[],"source":"GitHub_M","url":"https://www.cve.org/CVERecord?id=CVE-2026-59959"}],"remediation":[],"references":["https://github.com/HappySeaFox/sail/security/advisories/GHSA-5g8g-g347-84m8","https://github.com/HappySeaFox/sail/commit/495660135a4c62e416a1b357a4381dd30069229d","https://github.com/HappySeaFox/sail/tree/v1.0.2"],"sources":[{"name":"CVE","id":"CVE-2026-59959","modified":"2026-10-29T18:39:38.355Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-59959"}],"assessments":[{"source":"GitHub_M","vector":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N","score":4.8}],"sourceAffected":[],"observedAt":"2026-10-29T18:54:13.274Z","kev":{"status":"not-listed","checkedAt":"2026-11-14T23:30:30.969Z"},"coverage":[{"source":"NVD","status":"no-result","checkedAt":"2026-10-28T13:45:35.837Z","attemptedAt":"2026-10-28T13:45:35.837Z"},{"source":"GHSA","status":"no-result","checkedAt":"2026-10-28T13:45:35.896Z","attemptedAt":"2026-10-28T13:45:35.896Z"},{"source":"EUVD","status":"refresh-failed","attemptedAt":"2026-10-28T13:45:34.142Z"},{"source":"EPSS","status":"no-result","checkedAt":"2026-10-28T13:45:35.810Z","attemptedAt":"2026-10-28T13:45:35.810Z"}],"evidence":[],"aiSummary":{"text":"SAIL library versions prior to 1.0.2 have a division by zero weakness in the WebP decoder, causing a crash when processing malformed animated WebP files. This can lead to denial of service for applications accepting untrusted WebP images. The issue is fixed in version 1.0.2.","model":"@cf/meta/llama-3.3-70b-instruct-fp8-fast","generatedAt":"2026-10-30T09:49:50.097Z","sources":[{"name":"CVE","url":"https://www.cve.org/CVERecord?id=CVE-2026-59959"}]}}