SUSE-SU-2025:20207-1

Source
https://www.suse.com/support/update/announcement/2025/suse-su-202520207-1/
Import Source
https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2025:20207-1.json
JSON Data
https://api.test.osv.dev/v1/vulns/SUSE-SU-2025:20207-1
Upstream
CVE (10)
Related
Published
2025-04-29T11:07:45Z
Modified
2026-03-11T07:29:42Z
Summary
Security update for expat
Details

This update for expat fixes the following issues:

Version update to 2.7.1:

  • Bug fixes:

    • Restore event pointer behavior from Expat 2.6.4 (that the fix to CVE-2024-8176 changed in 2.7.0); affected API functions are:

      • XML_GetCurrentByteCount
      • XML_GetCurrentByteIndex
      • XML_GetCurrentColumnNumber
      • XML_GetCurrentLineNumber
      • XML_GetInputContext
    • Other changes: #976 #977 Autotools: Integrate files "fuzz/xml_lpm_fuzzer.{cpp,proto}" with Automake that were missing from 2.7.0 release tarballs #983 #984 Fix printf format specifiers for 32bit Emscripten #992 docs: Promote OpenSSF Best Practices self-certification #978 tests/benchmark: Resolve mistaken double close #986 Address compiler warnings #990 #993 Version info bumped from 11:1:10 (libexpat*.so.1.10.1) to 11:2:10 (libexpat*.so.1.10.2); see https://verbump.de/ for what these numbers do

      Infrastructure:
          #982  CI: Start running Perl XML::Parser integration tests
          #987  CI: Enforce Clang Static Analyzer clean code
          #991  CI: Re-enable warning clang-analyzer-valist.Uninitialized
                  for clang-tidy
          #981  CI: Cover compilation with musl
      

      #983 #984 CI: Cover compilation with 32bit Emscripten #976 #977 CI: Protect against fuzzer files missing from future release archives

Version update to 2.7.0 (CVE-2024-8176 [bsc#1239618])

  • Security fixes:

    • CVE-2024-8176 -- Fix crash from chaining a large number of entities caused by stack overflow by resolving use of recursion, for all three uses of entities:
      • general entities in character data ("&g1;")
      • general entities in attribute values ("")
      • parameter entities ("%p1;")

    Known impact is (reliable and easy) denial of service:

    CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H/E:H/RL:O/RC:C

    (Base Score: 7.5, Temporal Score: 7.2)

    Please note that a layer of compression around XML can significantly reduce the minimum attack payload size.

    • Other changes:
      • Document changes since the previous release
      • Version info bumped from 11:0:10 (libexpat*.so.1.10.0) to 11:1:10 (libexpat*.so.1.10.1); see https://verbump.de/ for what these numbers do

Version update to 2.6.4:

  • Security fixes: [bsc#1232601][bsc#1232579]
    • CVE-2024-50602 -- Fix crash within function XML_ResumeParser from a NULL pointer dereference by disallowing function XML_StopParser to (stop or) suspend an unstarted parser. A new error code XML_ERROR_NOT_STARTED was introduced to properly communicate this situation. // CWE-476 CWE-754
  • Other changes:
    • Version info bumped from 10:3:9 (libexpat*.so.1.9.3) to 11:0:10 (libexpat*.so.1.10.0); see https://verbump.de/ for what these numbers do

Update to 2.6.3:

  • Security fixes:

    • CVE-2024-45490, bsc#1229930 -- Calling function XML_ParseBuffer with len < 0 without noticing and then calling XML_GetBuffer will have XML_ParseBuffer fail to recognize the problem and XML_GetBuffer corrupt memory. With the fix, XML_ParseBuffer now complains with error XML_ERROR_INVALID_ARGUMENT just like sibling XML_Parse has been doing since Expat 2.2.1, and now documented. Impact is denial of service to potentially artitrary code execution.
    • CVE-2024-45491, bsc#1229931 -- Internal function dtdCopy can have an integer overflow for nDefaultAtts on 32-bit platforms (where UINT_MAX equals SIZE_MAX). Impact is denial of service to potentially artitrary code execution.
    • CVE-2024-45492, bsc#1229932 -- Internal function nextScaffoldPart can have an integer overflow for m_groupSize on 32-bit platforms (where UINT_MAX equals SIZE_MAX). Impact is denial of service to potentially artitrary code execution.
  • Other changes:

    • Version info bumped from 10:2:9 (libexpat*.so.1.9.2) to 10:3:9 (libexpat*.so.1.9.3); see https://verbump.de/ for what these numbers do

Update to 2.6.2:

  • CVE-2024-28757 -- Prevent billion laughs attacks with isolated use of external parsers (bsc#1221289)
  • Reject direct parameter entity recursion and avoid the related undefined behavior

Update to 2.6.1:

  • Expose billion laughs API with XML_DTD defined and XML_GE undefined, regression from 2.6.0
  • Make tests independent of CPU speed, and thus more robust

Update to 2.6.0:

  • Security fixes:
    • CVE-2023-52425 (bsc#1219559)
      Fix quadratic runtime issues with big tokens that can cause denial of service, in partial where dealing with compressed XML input. Applications that parsed a document in one go -- a single call to functions XML_Parse or XML_ParseBuffer -- were not affected. The smaller the chunks/buffers you use for parsing previously, the bigger the problem prior to the fix. Backporters should be careful to no omit parts of pull request #789 and to include earlier pull request #771, in order to not break the fix.
    • CVE-2023-52426 (bsc#1219561) Fix billion laughs attacks for users compiling without XML_DTD defined (which is not common). Users with XML_DTD defined have been protected since Expat >=2.4.0 (and that was CVE-2013-0340 back then).
  • Bug fixes:
    • Fix parse-size-dependent "invalid token" error for external entities that start with a byte order mark
    • Fix NULL pointer dereference in setContext via XML_ExternalEntityParserCreate for compilation with XML_DTD undefined
    • Protect against closing entities out of order
  • Other changes:
    • Improve support for arc4random/arc4random_buf
    • Improve buffer growth in XML_GetBuffer and XML_Parse
    • xmlwf: Support --help and --version
    • xmlwf: Support custom buffer size for XML_GetBuffer and read
    • xmlwf: Improve language and URL clickability in help output
    • examples: Add new example "element_declarations.c"
    • Be stricter about macro XML_CONTEXT_BYTES at build time
    • Make inclusion to expat_config.h consistent
    • Autotools: configure.ac: Support --disable-maintainer-mode
    • Autotools: Sync CMake templates with CMake 3.26
    • Autotools: Make installation of shipped man page doc/xmlwf.1 independent of docbook2man availability
    • Autotools|CMake: Add missing -DXML_STATIC to pkg-config file section "Cflags.private" in order to fix compilation against static libexpat using pkg-config on Windows
    • Autotools|CMake: Require a C99 compiler (a de-facto requirement already since Expat 2.2.2 of 2017)
    • Autotools|CMake: Fix PACKAGE_BUGREPORT variable
    • Autotools|CMake: Make test suite require a C++11 compiler
    • CMake: Require CMake >=3.5.0
    • CMake: Lowercase off_t and size_t to help a bug in Meson
    • CMake: Sort xmlwf sources alphabetically
    • CMake|Windows: Fix generation of DLL file version info
    • CMake: Build tests/benchmark/benchmark.c as well for a build with -DEXPAT_BUILD_TESTS=ON
    • docs: Document the importance of isFinal + adjust tests accordingly
    • docs: Improve use of "NULL" and "null"
    • docs: Be specific about version of XML (XML 1.0r4) and version of C (C99); (XML 1.0r5 will need a sponsor.)
    • docs: reference.html: Promote function XML_ParseBuffer more
    • docs: reference.html: Add HTML anchors to XML_* macros
    • docs: reference.html: Upgrade to OK.css 1.2.0
    • docs: Fix typos
    • docs|CI: Use HTTPS URLs instead of HTTP at various places
    • Address compiler warnings
    • Address clang-tidy warnings
    • Version info bumped from 9:10:8 (libexpat*.so.1.8.10) to 10:0:9 (libexpat*.so.1.9.0); see https://verbump.de/ for what these numbers do
References

Affected packages

SUSE:Linux Micro 6.0 / expat

Package

Name
expat
Purl
pkg:rpm/suse/expat&distro=SUSE%20Linux%20Micro%206.0

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
2.7.1-1.1

Ecosystem specific

{
    "binaries":  [
        {
            "libexpat1":  "2.7.1-1.1"
        }
    ]
}

Database specific

source
"https://ftp.suse.com/pub/projects/security/osv/SUSE-SU-2025:20207-1.json"