Security
Headlines
HeadlinesLatestCVEs

Headline

CVE-2023-24056: pkgconf

In pkgconf through 1.9.3, variable duplication can cause unbounded string expansion due to incorrect checks in libpkgconf/tuple.c:pkgconf_tuple_parse. For example, a .pc file containing a few hundred bytes can expand to one billion bytes.

CVE

1 changed files with 23 additions and 5 deletions

  1. 28

    libpkgconf/tuple.c

@ -357,12 +357,21 @@ pkgconf_tuple_parse(const pkgconf_client_t *client, pkgconf_list_t *vars, const

        PKGCONF_TRACE(client, "lookup tuple %s", varname);

        size_t remain = PKGCONF_BUFSIZE - (bptr - buf);

        ptr += (pptr - ptr);

        kv = pkgconf_tuple_find_global(client, varname);

        if (kv != NULL)

        {

            strncpy(bptr, kv, PKGCONF_BUFSIZE - (bptr - buf));

            bptr += strlen(kv);

            size_t nlen = pkgconf_strlcpy(bptr, kv, remain);

            if (nlen > remain)

            {

                pkgconf_warn(client, "warning: truncating very long variable to 64KB\n");

                bptr = buf + (PKGCONF_BUFSIZE - 1);

                break;

            }

            bptr += nlen;

        }

        else

        {

@ -370,12 +379,21 @@ pkgconf_tuple_parse(const pkgconf_client_t *client, pkgconf_list_t *vars, const

            if (kv != NULL)

            {

                size_t nlen;

                parsekv = pkgconf_tuple_parse(client, vars, kv, flags);

                nlen = pkgconf_strlcpy(bptr, parsekv, remain);

                free(parsekv);

                strncpy(bptr, parsekv, PKGCONF_BUFSIZE - (bptr - buf));

                bptr += strlen(parsekv);

                if (nlen > remain)

                {

                    pkgconf_warn(client, "warning: truncating very long variable to 64KB\n");

                free(parsekv);

                    bptr = buf + (PKGCONF_BUFSIZE - 1);

                    break;

                }

                bptr += nlen;

            }

        }

    }

CVE: Latest News

CVE-2023-50976: Transactions API Authorization by oleiman · Pull Request #14969 · redpanda-data/redpanda
CVE-2023-6905
CVE-2023-6903
CVE-2023-6904
CVE-2023-3907