The JPXStream::init function in Poppler 0.78.0 and earlier doesn't check for negative values of stream length, leading to an Integer Overflow, thereby making it possible to allocate a large memory chunk on the heap, with a size controlled by an attacker, as demonstrated by pdftocairo.
{ "binaries": [ { "binary_name": "gir1.2-poppler-0.18", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "gir1.2-poppler-0.18-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-cpp-dev", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-cpp-dev-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-cpp0", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-cpp0-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-dev", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-dev-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-glib-dev", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-glib-dev-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-glib-doc", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-glib8", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-glib8-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-private-dev", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-private-dev-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-qt4-4", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-qt4-4-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-qt4-dev", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-qt4-dev-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-qt5-1", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-qt5-1-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-qt5-dev", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler-qt5-dev-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler58", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "libpoppler58-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "poppler-dbg", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "poppler-utils", "binary_version": "0.41.0-0ubuntu1.15" }, { "binary_name": "poppler-utils-dbgsym", "binary_version": "0.41.0-0ubuntu1.15" } ], "ubuntu_priority": "low", "availability": "No subscription required" }
{ "binaries": [ { "binary_name": "gir1.2-poppler-0.18", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-cpp-dev", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-cpp0v5", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-cpp0v5-dbgsym", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-dev", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-glib-dev", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-glib-doc", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-glib8", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-glib8-dbgsym", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-private-dev", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-qt5-1", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-qt5-1-dbgsym", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler-qt5-dev", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler73", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "libpoppler73-dbgsym", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "poppler-utils", "binary_version": "0.62.0-2ubuntu2.11" }, { "binary_name": "poppler-utils-dbgsym", "binary_version": "0.62.0-2ubuntu2.11" } ], "ubuntu_priority": "low", "availability": "No subscription required" }
{ "binaries": [ { "binary_name": "gir1.2-poppler-0.18", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-cpp-dev", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-cpp0v5", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-cpp0v5-dbgsym", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-dev", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-glib-dev", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-glib-doc", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-glib8", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-glib8-dbgsym", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-private-dev", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-qt5-1", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-qt5-1-dbgsym", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler-qt5-dev", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler97", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "libpoppler97-dbgsym", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "poppler-utils", "binary_version": "0.86.1-0ubuntu1" }, { "binary_name": "poppler-utils-dbgsym", "binary_version": "0.86.1-0ubuntu1" } ], "ubuntu_priority": "low", "availability": "No subscription required" }