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.
                
            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 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. | |
| Weaknesses | CWE-121 | |
| References |  | |
| Metrics | cvssV3_1 
 | 
 MITRE
                        MITRE
                    Status: PUBLISHED
Assigner: talos
Published: 2025-08-25T13:53:46.704Z
Updated: 2025-08-25T18:23:08.611Z
Reserved: 2025-07-23T14:45:55.836Z
Link: CVE-2025-54492
 Vulnrichment
                        Vulnrichment
                    Updated: 2025-08-25T18:22:59.927Z
 NVD
                        NVD
                    Status : Analyzed
Published: 2025-08-25T14:15:35.807
Modified: 2025-09-02T16:42:41.673
Link: CVE-2025-54492
 Redhat
                        Redhat
                    No data.