GPAC is an open-source multimedia framework. In versions up to and including 26.02.0, a stack buffer overflow occurs during NHML file parsing in src/filters/dmx_nhml.c. The value of the xmlHeaderEnd XML attribute is copied from att->value into szXmlHeaderEnd[1000] using strcpy() without any length validation. If the input exceeds 1000 bytes, it overwrites beyond the stack buffer boundary. Commit 9bd7137fded2db40de61a2cf3045812c8741ec52 patches the issue.
{
"binaries": [
{
"binary_version": "0.5.0+svn4288~dfsg1-4ubuntu1+esm2",
"binary_name": "gpac"
},
{
"binary_version": "0.5.0+svn4288~dfsg1-4ubuntu1+esm2",
"binary_name": "gpac-modules-base"
},
{
"binary_version": "0.5.0+svn4288~dfsg1-4ubuntu1+esm2",
"binary_name": "libgpac-dev"
},
{
"binary_version": "0.5.0+svn4288~dfsg1-4ubuntu1+esm2",
"binary_name": "libgpac2"
}
]
}{
"binaries": [
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-1ubuntu0.1+esm2",
"binary_name": "gpac"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-1ubuntu0.1+esm2",
"binary_name": "gpac-modules-base"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-1ubuntu0.1+esm2",
"binary_name": "libgpac-dev"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-1ubuntu0.1+esm2",
"binary_name": "libgpac4"
}
]
}{
"binaries": [
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-3ubuntu0.1+esm1",
"binary_name": "gpac"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-3ubuntu0.1+esm1",
"binary_name": "gpac-modules-base"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-3ubuntu0.1+esm1",
"binary_name": "libgpac-dev"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-3ubuntu0.1+esm1",
"binary_name": "libgpac4"
}
]
}{
"binaries": [
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-5ubuntu0.1~esm2",
"binary_name": "gpac"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-5ubuntu0.1~esm2",
"binary_name": "gpac-modules-base"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-5ubuntu0.1~esm2",
"binary_name": "libgpac-dev"
},
{
"binary_version": "0.5.2-426-gc5ad4e4+dfsg5-5ubuntu0.1~esm2",
"binary_name": "libgpac4"
}
]
}{
"binaries": [
{
"binary_version": "2.0.0+dfsg1-2ubuntu0.1~esm2",
"binary_name": "gpac"
},
{
"binary_version": "2.0.0+dfsg1-2ubuntu0.1~esm2",
"binary_name": "gpac-modules-base"
},
{
"binary_version": "2.0.0+dfsg1-2ubuntu0.1~esm2",
"binary_name": "libgpac-dev"
},
{
"binary_version": "2.0.0+dfsg1-2ubuntu0.1~esm2",
"binary_name": "libgpac11"
}
]
}{
"binaries": [
{
"binary_version": "2.2.1+dfsg1-3.1ubuntu0.1~esm2",
"binary_name": "gpac"
},
{
"binary_version": "2.2.1+dfsg1-3.1ubuntu0.1~esm2",
"binary_name": "gpac-modules-base"
},
{
"binary_version": "2.2.1+dfsg1-3.1ubuntu0.1~esm2",
"binary_name": "libgpac-dev"
},
{
"binary_version": "2.2.1+dfsg1-3.1ubuntu0.1~esm2",
"binary_name": "libgpac12t64"
}
]
}