{"id":"CVE-2023-29659","kind":"vulnerability","aliases":["CVE-2023-29659","GHSA-22fx-6r9m-r8h9"],"related":[],"title":"libheif vulnerable to segmentation fault via floating point exception","description":"A Segmentation fault caused by a floating point exception exists in libheif 1.15.1 using crafted heif images via the heif::Fraction::round() function in box.cc, which causes a denial of service.","summary":"libheif, a library for reading HEIF and HEIC images, has a segmentation fault caused by a floating point exception in its Fraction::round() function in box.cc. A crafted image file makes any program that decodes it crash, which is a denial of service.","severity":"medium","cvss":6.5,"epss":0.00927,"exploited":false,"exploited_at":null,"products":[{"name":"github.com/strukturag/libheif","fixed":["1.15.2"],"affected":"< 1.15.2","ecosystem":"go"},{"name":"struktur libheif","fixed":[],"affected":"= 1.15.1","ecosystem":"vendor"},{"name":"fedoraproject fedora","fixed":[],"affected":"= 36","ecosystem":"vendor"},{"name":"fedoraproject fedora","fixed":[],"affected":"= 37","ecosystem":"vendor"}],"ecosystems":["go","vendor"],"tags":["cwe-369","go","image-processing","libheif","package"],"not_affected_if":["libheif-1.15.2-or-later","no-untrusted-heif-input"],"how_to_check":"- Check the version of the Go module in `go.mod` for `github.com/strukturag/libheif`; affected versions are below `1.15.2`.\n- Run `go list -m github.com/strukturag/libheif` to see the resolved version.","fix":"- `github.com/strukturag/libheif` `1.15.2`","status":"open","published_at":"2023-05-05T16:15:09+00:00","first_seen_at":"2026-11-12T22:42:03+00:00","triaged_at":"2026-11-12T22:42:39+00:00","updated_at":"2026-11-12T23:10:46+00:00","category":"package","confidence":0.8,"triage":{"at":"2026-11-12T22:42:39Z","model":"claude-haiku-5-5","output":{"fix":"- `github.com/strukturag/libheif` `1.15.2`","reach":"internet","title":"libheif: crafted HEIF image crashes decoder via floating point exception","impact":"low","summary":"libheif, a library for reading HEIF and HEIC images, has a segmentation fault caused by a floating point exception in its Fraction::round() function in box.cc. A crafted image file makes any program that decodes it crash, which is a denial of service.","audience":"developers","category":"package","nicknames":[],"who_cares":["go","image-processing","libheif"],"confidence":0.8,"fix_status":"available","needs_auth":"no","worst_case":"Process crashes on a crafted image, causing denial of service","analyst_note":"","how_to_check":"- Check the version of the Go module in `go.mod` for `github.com/strukturag/libheif`; affected versions are below `1.15.2`.\n- Run `go list -m github.com/strukturag/libheif` to see the resolved version.","plain_action":"","product_name":"","needs_analyst":false,"not_affected_if":["libheif-1.15.2-or-later","no-untrusted-heif-input"],"who_is_affected":"Applications that decode untrusted HEIF or HEIC images with libheif before 1.15.2 can be crashed by a crafted file. Services that only process images they create themselves, or that do not use libheif, are not exposed.","user_interaction":"no","product_ecosystem":"","needs_special_setup":"no","severity_if_unknown":"medium"},"cost_usd":0.000711,"input_tokens":4576,"output_tokens":506,"severity_before":"medium"},"analyst_status":null,"analyst_note":null,"search":"'-2023':11A,19A '-29659':12A,20A '-369':31B '/strukturag/libheif':23A '1.15.1':93C '22fx':15A '6r9m':16A 'box.cc':63B,105C 'caus':51B,84C,107C 'craft':65B,95C 'crash':74B 'cve':10A,18A 'cwe':30B 'decod':72B 'denial':78B,109C 'except':9A,56B,89C 'exist':90C 'fault':5A,50B,83C 'fedora':27A,29A 'fedoraproject':26A,28A 'file':67B 'float':7A,54B,87C 'fraction':59B,101C 'function':61B,103C 'ghsa':14A 'ghsa-22fx-6r9m-r8h9':13A 'github.com':22A 'github.com/strukturag/libheif':21A 'go':32B 'heic':45B 'heif':43B,96C,100C 'imag':34B,46B,66B,97C 'image-process':33B 'libheif':1A,25A,36B,38B,92C 'librari':40B 'make':68B 'packag':37B 'point':8A,55B,88C 'process':35B 'program':70B 'r8h9':17A 'read':42B 'round':60B,102C 'segment':4A,49B,82C 'servic':80B,111C 'struktur':24A 'use':94C 'via':6A,98C 'vulner':2A","nicknames":[],"mitigations":[],"who_affected":"Applications that decode untrusted HEIF or HEIC images with libheif before 1.15.2 can be crashed by a crafted file. Services that only process images they create themselves, or that do not use libheif, are not exposed.","tier":"C","verified":{},"analyst_revisit_at":null,"fix_status":"available","audience":"developers","plain_action":null,"pkeys":["fedora","fedoraprojectfedora","githubcomstrukturaglibheif","libheif","strukturlibheif"],"ptokens":["com","fedora","fedoraproject","github","libheif","struktur","strukturag"],"labels":["cwe369","go","imageprocessing","libheif","medium","package","vendor"],"campaign_type":null,"search_a":"'-2023':11A,19A '-29659':12A,20A '/strukturag/libheif':23A '22fx':15A '6r9m':16A 'cve':10A,18A 'except':9A 'fault':5A 'fedora':27A,29A 'fedoraproject':26A,28A 'float':7A 'ghsa':14A 'ghsa-22fx-6r9m-r8h9':13A 'github.com':22A 'github.com/strukturag/libheif':21A 'libheif':1A,25A 'point':8A 'r8h9':17A 'segment':4A 'struktur':24A 'via':6A 'vulner':2A","search_b":"'-369':31B 'box.cc':63B 'caus':51B 'craft':65B 'crash':74B 'cwe':30B 'decod':72B 'denial':78B 'except':56B 'fault':50B 'file':67B 'float':54B 'fraction':59B 'function':61B 'go':32B 'heic':45B 'heif':43B 'imag':34B,46B,66B 'image-process':33B 'libheif':36B,38B 'librari':40B 'make':68B 'packag':37B 'point':55B 'process':35B 'program':70B 'read':42B 'round':60B 'segment':49B 'servic':80B","search_c":"'1.15.1':93C 'box.cc':105C 'caus':84C,107C 'craft':95C 'denial':109C 'except':89C 'exist':90C 'fault':83C 'float':87C 'fraction':101C 'function':103C 'heif':96C,100C 'imag':97C 'libheif':92C 'point':88C 'round':102C 'segment':82C 'servic':111C 'use':94C 'via':98C","cause_entry":null,"cause_path":null,"disclosures_checked_at":null,"first_public_at":"2023-05-05T16:15:09+00:00","kev":null,"cvss_vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H","cvss_by":"GitHub","poc_count":1,"sources":[{"source":"ghsa","external_id":"GHSA-22fx-6r9m-r8h9","url":"https://github.com/advisories/GHSA-22fx-6r9m-r8h9","severity":"medium","published_at":"2023-05-05T18:30:17+00:00","modified_at":"2026-11-12T22:41:31+00:00","first_seen_at":"2026-11-12T22:42:03+00:00","fetched_at":"2026-11-12T22:49:35+00:00","note":null},{"source":"nvd","external_id":"CVE-2023-29659","url":"https://nvd.nist.gov/vuln/detail/CVE-2023-29659","severity":null,"published_at":"2023-05-05T16:15:09+00:00","modified_at":"2026-06-17T05:50:40+00:00","first_seen_at":"2026-11-12T23:10:46+00:00","fetched_at":"2026-11-12T23:10:46+00:00","note":null}],"documents":[{"id":140024,"url":"https://github.com/strukturag/libheif/commit/e05e15b57a38ec411cb9acb38512a1c36ff62991","title":"Patch: github.com","kind":"other","source":"ghsa","publisher":"vendor","text":null,"published_at":null,"relation":"fix","confidence":null,"note":"Patch: github.com"},{"id":140101,"url":"https://github.com/strukturag/libheif/issues/794","title":"Exploit: github.com","kind":"poc","source":"nvd","publisher":"research","text":null,"published_at":null,"relation":"poc","confidence":null,"note":"Exploit: github.com"}],"disclosures":[],"exploit_sources":[{"type":"poc","url":"https://github.com/strukturag/libheif/issues/794"},{"type":"epss","score":0.00927,"url":"https://api.first.org/data/v1/epss?cve=CVE-2023-29659"}],"notice":"Free to read, with fair use of about 60 pages a minute. For higher limits or API access: sales@infrastack.ai"}