A stack-based buffer overflow vulnerability exists in the MFER parsing functionality of The Biosig Project libbiosig 3.9.0 and Master Branch (35a819fa). A specially crafted MFER file can lead to arbitrary code execution. An attacker can provide a malicious file to trigger this vulnerability.This vulnerability manifests on line 9141 of biosig.c on the current master branch (35a819fa), when the Tag is 67: else if (tag==67) //0x43: Sample skew { int skew=0; // [1] curPos += ifread(&skew, 1, len,hdr); In this case, the address of the newly-defined integer skew [1] is overflowed instead of buf. This means a stack overflow can occur using much smaller values of len in this code path.
{
"binaries": [
{
"binary_version": "2.3.3-1build2",
"binary_name": "biosig-tools"
},
{
"binary_version": "2.3.3-1build2",
"binary_name": "libbiosig3"
},
{
"binary_version": "2.3.3-1build2",
"binary_name": "octave-biosig"
},
{
"binary_version": "2.3.3-1build2",
"binary_name": "python3-biosig"
}
]
}
{
"binaries": [
{
"binary_version": "2.6.0-1ubuntu1",
"binary_name": "biosig-tools"
},
{
"binary_version": "2.6.0-1ubuntu1",
"binary_name": "libbiosig3"
},
{
"binary_version": "2.6.0-1ubuntu1",
"binary_name": "octave-biosig"
},
{
"binary_version": "2.6.0-1ubuntu1",
"binary_name": "python3-biosig"
}
]
}
{
"binaries": [
{
"binary_version": "3.9.0-1build3",
"binary_name": "biosig-tools"
},
{
"binary_version": "3.9.0-1build3",
"binary_name": "libbiosig3"
},
{
"binary_version": "3.9.0-1build3",
"binary_name": "octave-biosig"
},
{
"binary_version": "3.9.0-1build3",
"binary_name": "python3-biosig"
}
]
}