OESA-2023-1866 (CVE-2023-45661)

Vulnerability from osv_openeuler – Published: 2023-12-01 11:06 – Updated: 2026-08-06 11:06 – Source website
VLAI
Summary
stb security update
Details

Single-file public domain libraries for C/C++.

Security Fix(es):

stb_image is a single file MIT licensed library for processing images. A crafted image file may trigger out of bounds memcpy read in stbi__gif_load_next. This happens because two_back points to a memory address lower than the start of the buffer out. This issue may be used to leak internal memory allocation information.(CVE-2023-45661)

stb_image is a single file MIT licensed library for processing images. A crafted image file can trigger stbi__load_gif_main_outofmem attempt to double-free the out variable. This happens in stbi__load_gif_main because when the layers * stride value is zero the behavior is implementation defined, but common that realloc frees the old memory and returns null pointer. Since it attempts to double-free the memory a few lines below the first “free”, the issue can be potentially exploited only in a multi-threaded environment. In the worst case this may lead to code execution.(CVE-2023-45664)


{
  "affected": [
    {
      "ecosystem_specific": {
        "aarch64": [
          "stb_ds-devel-0.67.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_voxel_render-devel-0.89.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_image_write-devel-1.16.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_dxt-devel-1.12.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_herringbone_wang_tile-devel-0.7.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_divide-devel-0.94.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_connected_components-devel-0.96.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_tilemap_editor-devel-0.42.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_sprintf-devel-1.10.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_vorbis-devel-1.22.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_image-devel-2.27.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_hexwave-devel-0.5.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb-devel-0.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_image_resize-devel-0.97.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_c_lexer-devel-0.12.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_textedit-devel-1.14.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_truetype-devel-1.26.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_perlin-devel-0.5.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_leakcheck-devel-0.6.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_easy_font-devel-1.1.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm",
          "stb_rect_pack-devel-1.1.20220908git8b5f1f3-0.8.oe2203sp2.aarch64.rpm"
        ],
        "noarch": [
          "stb-help-0.20220908git8b5f1f3-0.8.oe2203sp2.noarch.rpm"
        ],
        "src": [
          "stb-0.20220908git8b5f1f3-0.8.oe2203sp2.src.rpm"
        ],
        "x86_64": [
          "stb_divide-devel-0.94.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_tilemap_editor-devel-0.42.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_image_resize-devel-0.97.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_voxel_render-devel-0.89.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_image-devel-2.27.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_herringbone_wang_tile-devel-0.7.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb-devel-0.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_c_lexer-devel-0.12.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_image_write-devel-1.16.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_sprintf-devel-1.10.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_leakcheck-devel-0.6.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_ds-devel-0.67.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_dxt-devel-1.12.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_hexwave-devel-0.5.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_connected_components-devel-0.96.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_perlin-devel-0.5.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_textedit-devel-1.14.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_easy_font-devel-1.1.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_rect_pack-devel-1.1.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_truetype-devel-1.26.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm",
          "stb_vorbis-devel-1.22.20220908git8b5f1f3-0.8.oe2203sp2.x86_64.rpm"
        ]
      },
      "package": {
        "ecosystem": "openEuler:22.03-LTS-SP2",
        "name": "stb",
        "purl": "pkg:rpm/openEuler/stb\u0026distro=openEuler-22.03-LTS-SP2"
      },
      "ranges": [
        {
          "events": [
            {
              "introduced": "0"
            },
            {
              "fixed": "0.20220908git8b5f1f3-0.8.oe2203sp2"
            }
          ],
          "type": "ECOSYSTEM"
        }
      ]
    }
  ],
  "database_specific": {
    "severity": "High"
  },
  "details": "Single-file public domain libraries for C/C++.\r\n\r\nSecurity Fix(es):\r\n\r\nstb_image is a single file MIT licensed library for processing images. A crafted image file may trigger out of bounds memcpy read in `stbi__gif_load_next`. This happens because two_back points to a memory address lower than the start of the buffer out. This issue may be used to leak internal memory allocation information.(CVE-2023-45661)\r\n\r\nstb_image is a single file MIT licensed library for processing images. A crafted image file can trigger `stbi__load_gif_main_outofmem` attempt to double-free the out variable. This happens in `stbi__load_gif_main` because when the `layers * stride` value is zero the behavior is implementation defined, but common that realloc frees the old memory and returns null pointer. Since it attempts to double-free the memory a few lines below the first \u201cfree\u201d, the issue can be potentially exploited only in a multi-threaded environment. In the worst case this may lead to code execution.(CVE-2023-45664)",
  "id": "OESA-2023-1866",
  "modified": "2026-08-06T11:06:18Z",
  "published": "2023-12-01T11:06:18Z",
  "references": [
    {
      "type": "ADVISORY",
      "url": "https://www.openeuler.org/en/security/safety-bulletin/detail.html?id=openEuler-SA-2023-1866"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-45661"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2023-45664"
    }
  ],
  "schema_version": "1.7.2",
  "severity": [
    {
      "score": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L",
      "type": "CVSS_V3"
    }
  ],
  "summary": "stb security update",
  "upstream": [
    "CVE-2023-45661",
    "CVE-2023-45664"
  ]
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Related by attack behaviour

Vulnerabilities whose description is nearest to this one in the vector space of the CIRCL/vulnerability-attack-technique-biencoder model. This is a similarity search over the bi-encoder space (plain cosine), not a classification, and it has no measured accuracy.


Loading…