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 8970 of biosig.c on the current master branch (35a819fa), when the Tag is 63:
                else if (tag==63) {
                    uint8_t tag2=255, len2=255;
                    count = 0;
                    while ((count<len) && !(FlagInfiniteLength && len2==0 && tag2==0)){
                        curPos += ifread(&tag2,1,1,hdr);
                        curPos += ifread(&len2,1,1,hdr);
                        if (VERBOSE_LEVEL==9)
                            fprintf(stdout,"MFER: tag=%3i chan=%2i len=%-4i tag2=%3i len2=%3i curPos=%i %li count=%4i\n",tag,chan,len,tag2,len2,curPos,iftell(hdr),(int)count);
                        if (FlagInfiniteLength && len2==0 && tag2==0) break;
                        count  += (2+len2);
                        curPos += ifread(&buf,1,len2,hdr);
Here, the number of bytes read is not the Data Length decoded from the current frame in the file (`len`) but rather is a new length contained in a single octet read from the same input file (`len2`). Despite this, a stack-based buffer overflow condition can still occur, as the destination buffer is still `buf`, which has a size of only 128 bytes, while `len2` can be as large as 255.
                
            Metrics
Affected Vendors & Products
References
        History
                    Tue, 02 Sep 2025 16:45:00 +0000
| Type | Values Removed | Values Added | 
|---|---|---|
| First Time appeared | Libbiosig Project Libbiosig Project libbiosig | |
| CPEs | cpe:2.3:a:libbiosig_project:libbiosig:*:*:*:*:*:*:*:* | |
| Vendors & Products | Libbiosig Project Libbiosig Project libbiosig | 
Mon, 25 Aug 2025 22:15:00 +0000
| Type | Values Removed | Values Added | 
|---|---|---|
| First Time appeared | The Biosig Project The Biosig Project libbiosig | |
| Vendors & Products | The Biosig Project The Biosig Project libbiosig | 
Mon, 25 Aug 2025 21:45:00 +0000
| Type | Values Removed | Values Added | 
|---|---|---|
| Metrics | ssvc 
 | 
Mon, 25 Aug 2025 14:00:00 +0000
| Type | Values Removed | Values Added | 
|---|---|---|
| Description | 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 8970 of biosig.c on the current master branch (35a819fa), when the Tag is 63: else if (tag==63) { uint8_t tag2=255, len2=255; count = 0; while ((count<len) && !(FlagInfiniteLength && len2==0 && tag2==0)){ curPos += ifread(&tag2,1,1,hdr); curPos += ifread(&len2,1,1,hdr); if (VERBOSE_LEVEL==9) fprintf(stdout,"MFER: tag=%3i chan=%2i len=%-4i tag2=%3i len2=%3i curPos=%i %li count=%4i\n",tag,chan,len,tag2,len2,curPos,iftell(hdr),(int)count); if (FlagInfiniteLength && len2==0 && tag2==0) break; count += (2+len2); curPos += ifread(&buf,1,len2,hdr); Here, the number of bytes read is not the Data Length decoded from the current frame in the file (`len`) but rather is a new length contained in a single octet read from the same input file (`len2`). Despite this, a stack-based buffer overflow condition can still occur, as the destination buffer is still `buf`, which has a size of only 128 bytes, while `len2` can be as large as 255. | |
| Weaknesses | CWE-121 | |
| References |  | |
| Metrics | cvssV3_1 
 | 
 MITRE
                        MITRE
                    Status: PUBLISHED
Assigner: talos
Published: 2025-08-25T13:53:46.340Z
Updated: 2025-08-25T19:03:12.538Z
Reserved: 2025-07-23T14:45:55.835Z
Link: CVE-2025-54489
 Vulnrichment
                        Vulnrichment
                    Updated: 2025-08-25T19:03:08.278Z
 NVD
                        NVD
                    Status : Analyzed
Published: 2025-08-25T14:15:35.233
Modified: 2025-09-02T16:42:26.920
Link: CVE-2025-54489
 Redhat
                        Redhat
                    No data.