OpenSC up to 0.18.x CAC Card libopensc/card-cac.c cac_get_serial_nr_from_CUID memory corruption
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 5.2 | $0-$5k | 0.00 |
Summary
A vulnerability identified as critical has been detected in OpenSC up to 0.18.x. This issue affects the function cac_get_serial_nr_from_CUID of the file libopensc/card-cac.c of the component CAC Card Handler. The manipulation leads to memory corruption.
This vulnerability is referenced as CVE-2018-16421. It is possible to launch the attack on the physical device. No exploit is available.
You should upgrade the affected component.
Details
A vulnerability, which was classified as problematic, has been found in OpenSC up to 0.18.x. This issue affects the function cac_get_serial_nr_from_CUID of the file libopensc/card-cac.c of the component CAC Card Handler. The manipulation with an unknown input leads to a memory corruption vulnerability. Using CWE to declare the problem leads to CWE-119. The product performs operations on a memory buffer, but it can read from or write to a memory location that is outside of the intended boundary of the buffer. Impacted is confidentiality, integrity, and availability. The summary by CVE is:
Several buffer overflows when handling responses from a CAC Card in cac_get_serial_nr_from_CUID in libopensc/card-cac.c in OpenSC before 0.19.0-rc1 could be used by attackers able to supply crafted smartcards to cause a denial of service (application crash) or possibly have unspecified other impact.
The bug was discovered 08/14/2018. The weakness was published 09/04/2018 (Website). The advisory is shared at github.com. The identification of this vulnerability is CVE-2018-16421 since 09/03/2018. The exploitation is known to be easy. An attack has to be approached locally. No form of authentication is needed for a successful exploitation. Technical details are known, but no exploit is available.
The vulnerability was handled as a non-public zero-day exploit for at least 20 days. During that time the estimated underground price was around $0-$5k. The vulnerability scanner Nessus provides a plugin with the ID 118881 (openSUSE Security Update : opensc (openSUSE-2018-1385)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family SuSE Local Security Checks and running in the context l. The commercial vulnerability scanner Qualys is able to test this issue with plugin 277562 (Fedora Security Update for opensc (FEDORA-2018-d0dff2abaa)).
Upgrading to version 0.19.0-rc1 eliminates this vulnerability. A possible mitigation has been published 3 months after the disclosure of the vulnerability.
The vulnerability is also documented in the vulnerability database at Tenable (118881). Similar entries are available at VDB-123548 and VDB-123549. Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
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: 5.3VulDB Meta Temp Score: 5.2
VulDB Base Score: 4.1
VulDB Temp Score: 3.9
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 6.6
NVD Vector: 🔍
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: 🔍
NVD Base Score: 🔍
Exploiting
Class: Memory corruptionCWE: CWE-119
CAPEC: 🔍
ATT&CK: 🔍
Physical: Yes
Local: Yes
Remote: No
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 118881
Nessus Name: openSUSE Security Update : opensc (openSUSE-2018-1385)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Upgrade: OpenSC 0.19.0-rc1
Patch: github.com
Timeline
08/14/2018 🔍09/03/2018 🔍
09/03/2018 🔍
09/04/2018 🔍
09/04/2018 🔍
11/09/2018 🔍
11/10/2018 🔍
05/06/2023 🔍
Sources
Product: github.comAdvisory: RHSA-2019:2154
Status: Confirmed
CVE: CVE-2018-16421 (🔍)
GCVE (CVE): GCVE-0-2018-16421
GCVE (VulDB): GCVE-100-123545
See also: 🔍
Entry
Created: 09/04/2018 15:43Updated: 05/06/2023 18:33
Changes: 09/04/2018 15:43 (74), 03/20/2020 11:36 (2), 05/06/2023 18:33 (5)
Complete: 🔍
Cache ID: 216::103
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.
No comments yet. Languages: en.
Please log in to comment.