{"answers":{"affected":"It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-47747 exists.","fix":"No fix has been published for CVE-2026-47747 yet. Limit exposure of the affected software until one is available.","what":"CVE-2026-47747 is a high-severity memory corruption vulnerability in leejet stable-diffusion.cpp, published on 16 Jun 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link."},"fix_prompt":"Check this codebase for CVE-2026-47747 and fix it if it is affected.\n\nWhat it is: CVE-2026-47747 is a high-severity memory corruption vulnerability in leejet stable-diffusion.cpp, published on 16 Jun 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-47747 exists.\n\nAffected product: leejet stable-diffusion.cpp. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2026-47747/ (Markdown: https://insights.sbomify.com/CVE-2026-47747/index.md)","id":"CVE-2026-47747","markdown":"https://insights.sbomify.com/CVE-2026-47747/index.md","name":"CVE-2026-47747","record":{"aliases":["GHSA-mghm-5mqc-pwmp"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["code_execution","denial_of_service"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"C++ diffusion model library","requires_auth":"none","summary":"A heap buffer overflow in stable-diffusion.cpp allows attackers to execute arbitrary code or cause denial of service via crafted checkpoint files.","user_interaction":"required","vuln_class":"memory_corruption"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"stable-diffusion.cpp","vendor":"leejet"}],"cvss":{"score":7.8,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H","version":"3.1"},"cwes":[{"id":"CWE-787","name":"Out-of-bounds Write"},{"id":"CWE-122","name":"Heap-based Buffer Overflow"}],"description":"stable-diffusion.cpp is a pure C/C++ library for running diffusion model (Stable Diffusion, Flux, Wan, Qwen Image, Z-Image, and more) inference. In versions prior to master-584-0a7ae07, the pickle .ckpt parser in src/model.cpp contained a heap buffer overflow vulnerability in the BINUNICODE opcode handler. The issue was caused by sign confusion on the opcode length field. A crafted .ckpt file could trigger memcpy with a very large length derived from a negative signed value, causing immediate heap corruption.\nThe issue has been resolved in version master-584-0a7ae07. If developers are unable to immediately update their applications they can work around this issue by only loading .ckpt checkpoint files from trusted sources and preferring trusted model sources and safer formats such as .safetensors where possible.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"weaponised"},"has_fix":false,"headline":"stable-diffusion.cpp has a Heap-based Buffer Overflow","id":"CVE-2026-47747","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"memory_corruption","year":"2026"},"n_packages":0,"n_references":3,"next":{"headline":"stable-diffusion.cpp: Out-of-bounds reads in PyTorch checkpoint pickle opcode parsing","id":"CVE-2026-47748"},"packages":[],"prev":{"headline":"Misskey: JSON-LD signature validation + compaction is vulnerable to timing attacks","id":"CVE-2026-47746"},"products":["stable-diffusion.cpp"],"published":"2026-06-16","related":[{"cvss_score":7.8,"headline":"stable-diffusion.cpp: Heap buffer overflow in SHORT_BINUNICODE parsing for PyTorch checkpoint files","id":"CVE-2026-47749","kev_date_added":null,"published":"2026-06-16"},{"cvss_score":7.8,"headline":"stable-diffusion.cpp: Heap buffer overflow in GLOBAL opcode parsing for PyTorch checkpoint files","id":"CVE-2026-47750","kev_date_added":null,"published":"2026-06-16"},{"cvss_score":5.5,"headline":"stable-diffusion.cpp: Out-of-bounds reads in PyTorch checkpoint pickle opcode parsing","id":"CVE-2026-47748","kev_date_added":null,"published":"2026-06-16"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"poc","technical_impact":"total"},"state":"PUBLISHED","updated":"2026-06-17","vendors":["leejet"]},"summary":"A heap buffer overflow in stable-diffusion.cpp allows attackers to execute arbitrary code or cause denial of service via crafted checkpoint files.","url":"https://insights.sbomify.com/CVE-2026-47747/"}