• ITUGLIB Update: Git 2.39.1

    From Randall@21:1/5 to All on Wed Jan 18 13:05:37 2023
    Hi All,

    Git 2.39.1 is now available in the usual spots and usual builds. This release fixes two CVEs discussed below:

    CVE-2022-41903:

    git log has the ability to display commits using an arbitrary
    format with its --format specifiers. This functionality is also
    exposed to git archive via the export-subst gitattribute.

    When processing the padding operators (e.g., %<(, %<|(, %>(,
    %>>(, or %><( ), an integer overflow can occur in
    pretty.c::format_and_pad_commit() where a size_t is improperly
    stored as an int, and then added as an offset to a subsequent
    memcpy() call.

    This overflow can be triggered directly by a user running a
    command which invokes the commit formatting machinery (e.g., git
    log --format=...). It may also be triggered indirectly through
    git archive via the export-subst mechanism, which expands format
    specifiers inside of files within the repository during a git
    archive.

    This integer overflow can result in arbitrary heap writes, which
    may result in remote code execution.

    CVE-2022-23521:

    gitattributes are a mechanism to allow defining attributes for
    paths. These attributes can be defined by adding a .gitattributes
    file to the repository, which contains a set of file patterns and
    the attributes that should be set for paths matching this pattern.

    When parsing gitattributes, multiple integer overflows can occur
    when there is a huge number of path patterns, a huge number of
    attributes for a single pattern, or when the declared attribute
    names are huge.

    These overflows can be triggered via a crafted .gitattributes file
    that may be part of the commit history. Git silently splits lines
    longer than 2KB when parsing gitattributes from a file, but not when
    parsing them from the index. Consequentially, the failure mode
    depends on whether the file exists in the working tree, the index or
    both.

    This integer overflow can result in arbitrary heap reads and writes,
    which may result in remote code execution.

    Regards,
    Randall Becker
    On Behalf the ITUGLIB Technical Committee

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)