libexpat before commit 13c5f63 contains a heap buffer over-read vulnerability in xmlparse.c. XML_ParseBuffer advances the parse buffer end with parser->m_bufferEnd += len using a caller-supplied length that is not validated against the allocated buffer size, so repeated XML_ParseBuffer calls move m_bufferEnd past the end of the heap allocation and subsequent parsing reads out of bounds. Reaching this path requires a parse buffer to already be present; otherwise XML_ParseBuffer returns XML_ERROR_NO_BUFFER. A buffer is present after a prior call to XML_GetBuffer, either directly (the common case) or indirectly through a prior XML_Parse call that allocates the buffer internally. The over-read discloses adjacent heap memory to the calling application, recovering heap pointers, libc function pointers, and code pointers sufficient to defeat ASLR and build further exploitation primitives.
{
"binaries": [
{
"binary_name": "libgdcm-cil",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "libgdcm-java",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "libgdcm-tools",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "libgdcm2.6",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "libvtkgdcm-cil",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "libvtkgdcm-java",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "libvtkgdcm-tools",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "libvtkgdcm2.6",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "python-gdcm",
"binary_version": "2.6.3-3ubuntu3"
},
{
"binary_name": "python-vtkgdcm",
"binary_version": "2.6.3-3ubuntu3"
}
]
}{
"binaries": [
{
"binary_name": "libgdcm-cil",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "libgdcm-java",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "libgdcm-tools",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "libgdcm2.8",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "libvtkgdcm-cil",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "libvtkgdcm-java",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "libvtkgdcm-tools",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "libvtkgdcm2.8",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "python-gdcm",
"binary_version": "2.8.4-1build2"
},
{
"binary_name": "python-vtkgdcm",
"binary_version": "2.8.4-1build2"
}
]
}{
"binaries": [
{
"binary_name": "insighttoolkit4-examples",
"binary_version": "4.12.2-dfsg1-1ubuntu1"
},
{
"binary_name": "insighttoolkit4-python",
"binary_version": "4.12.2-dfsg1-1ubuntu1"
},
{
"binary_name": "libinsighttoolkit4.12",
"binary_version": "4.12.2-dfsg1-1ubuntu1"
}
]
}{
"binaries": [
{
"binary_name": "libxmlrpc-c++9",
"binary_version": "1.60.05-1"
},
{
"binary_name": "libxmlrpc-core-c3t64",
"binary_version": "1.60.05-1"
},
{
"binary_name": "libxmlrpc-util4",
"binary_version": "1.60.05-1"
},
{
"binary_name": "xmlrpc-api-utils",
"binary_version": "1.60.05-1"
}
]
}{
"binaries": [
{
"binary_name": "libxmlrpc-c++9",
"binary_version": "1.60.05-1build1"
},
{
"binary_name": "libxmlrpc-core-c3t64",
"binary_version": "1.60.05-1build1"
},
{
"binary_name": "libxmlrpc-util4",
"binary_version": "1.60.05-1build1"
},
{
"binary_name": "xmlrpc-api-utils",
"binary_version": "1.60.05-1build1"
}
]
}{
"binaries": [
{
"binary_name": "libvtk-java",
"binary_version": "5.8.0-14.1ubuntu3+esm1"
},
{
"binary_name": "libvtk5.8",
"binary_version": "5.8.0-14.1ubuntu3+esm1"
},
{
"binary_name": "libvtk5.8-qt4",
"binary_version": "5.8.0-14.1ubuntu3+esm1"
},
{
"binary_name": "python-vtk",
"binary_version": "5.8.0-14.1ubuntu3+esm1"
},
{
"binary_name": "tcl-vtk",
"binary_version": "5.8.0-14.1ubuntu3+esm1"
},
{
"binary_name": "vtk-examples",
"binary_version": "5.8.0-14.1ubuntu3+esm1"
}
]
}{
"binaries": [
{
"binary_name": "libvtk-java",
"binary_version": "5.10.1+dfsg-2.1ubuntu0.1~esm1"
},
{
"binary_name": "libvtk5.10",
"binary_version": "5.10.1+dfsg-2.1ubuntu0.1~esm1"
},
{
"binary_name": "libvtk5.10-qt4",
"binary_version": "5.10.1+dfsg-2.1ubuntu0.1~esm1"
},
{
"binary_name": "python-vtk",
"binary_version": "5.10.1+dfsg-2.1ubuntu0.1~esm1"
},
{
"binary_name": "tcl-vtk",
"binary_version": "5.10.1+dfsg-2.1ubuntu0.1~esm1"
},
{
"binary_name": "vtk-examples",
"binary_version": "5.10.1+dfsg-2.1ubuntu0.1~esm1"
}
]
}{
"binaries": [
{
"binary_name": "libxmlrpc-c++8v5",
"binary_version": "1.33.14-8ubuntu0.18.04.1~esm1"
},
{
"binary_name": "libxmlrpc-core-c3",
"binary_version": "1.33.14-8ubuntu0.18.04.1~esm1"
},
{
"binary_name": "xmlrpc-api-utils",
"binary_version": "1.33.14-8ubuntu0.18.04.1~esm1"
}
]
}{
"binaries": [
{
"binary_name": "libxmlrpc-c++8v5",
"binary_version": "1.33.14-8ubuntu0.20.04.1~esm1"
},
{
"binary_name": "libxmlrpc-core-c3",
"binary_version": "1.33.14-8ubuntu0.20.04.1~esm1"
},
{
"binary_name": "xmlrpc-api-utils",
"binary_version": "1.33.14-8ubuntu0.20.04.1~esm1"
}
]
}