OpenSC up to 0.26.x sc_compacttlv_find_tag buffer over-read
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 3.8 | $0-$5k | 2.38 |
Summary
A vulnerability labeled as problematic has been found in OpenSC up to 0.26.x. This affects the function sc_compacttlv_find_tag. Such manipulation leads to buffer over-read.
This vulnerability is traded as CVE-2025-66038. The attack can be executed directly on the physical device. There is no exploit available.
The affected component should be upgraded.
Details
A vulnerability, which was classified as problematic, has been found in OpenSC up to 0.26.x. Affected by this issue is the function sc_compacttlv_find_tag. The manipulation with an unknown input leads to a buffer over-read vulnerability. Using CWE to declare the problem leads to CWE-126. The product reads from a buffer using buffer access mechanisms such as indexes or pointers that reference memory locations after the targeted buffer. Impacted is confidentiality, integrity, and availability. CVE summarizes:
OpenSC is an open source smart card tools and middleware. Prior to version 0.27.0, sc_compacttlv_find_tag searches a compact-TLV buffer for a given tag. In compact-TLV, a single byte encodes the tag (high nibble) and value length (low nibble). With a 1-byte buffer {0x0A}, the encoded element claims tag=0 and length=10 but no value bytes follow. Calling sc_compacttlv_find_tag with search tag 0x00 returns a pointer equal to buf+1 and outlen=10 without verifying that the claimed value length fits within the remaining buffer. In cases where the sc_compacttlv_find_tag is provided untrusted data (such as being read from cards/files), attackers may be able to influence it to return out-of-bounds pointers leading to downstream memory corruption when subsequent code tries to dereference the pointer. This issue has been patched in version 0.27.0.
The advisory is shared for download at github.com. This vulnerability is handled as CVE-2025-66038 since 11/21/2025. The exploitation is known to be difficult. The attack needs to be approached locally. No form of authentication is required for exploitation. There are known technical details, but no exploit is available.
Upgrading to version 0.27.0 eliminates this vulnerability.
If you want to get best quality of vulnerability data, you may have to visit VulDB.
Product
Name
Version
License
Website
- Product: https://github.com/OpenSC/OpenSC/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 3.9VulDB Meta Temp Score: 3.8
VulDB Base Score: 3.9
VulDB Temp Score: 3.8
VulDB Vector: 🔒
VulDB Reliability: 🔍
CNA Base Score: 3.9
CNA Vector (GitHub_M): 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Buffer over-readCWE: CWE-126 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physical: Yes
Local: Yes
Remote: No
Availability: 🔒
Status: Not defined
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
0-Day Time: 🔒
Upgrade: OpenSC 0.27.0
Timeline
11/21/2025 CVE reserved03/30/2026 Advisory disclosed
03/30/2026 VulDB entry created
03/30/2026 VulDB entry last update
Sources
Product: github.comAdvisory: github.com
Status: Confirmed
CVE: CVE-2025-66038 (🔒)
GCVE (CVE): GCVE-0-2025-66038
GCVE (VulDB): GCVE-100-354224
Entry
Created: 03/30/2026 19:48Changes: 03/30/2026 19:48 (62)
Complete: 🔍
Cache ID: 216:BE7:103
No comments yet. Languages: en.
Please log in to comment.