CVE-2015-3298
📋 TL;DR
This vulnerability in Yubico's ykneo-openpgp smart card applet allows attackers to bypass PIN verification and generate signatures without proper authentication. It affects users of YubiKey NEO devices with the OpenPGP applet before version 1.0.10. The flaw occurs due to a typo in the code that fails to properly validate PIN status during device initialization.
💻 Affected Systems
- YubiKey NEO with OpenPGP applet
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
An attacker with physical access to a YubiKey NEO could generate digital signatures impersonating the legitimate user, potentially compromising authentication systems, signing fraudulent documents, or bypassing multi-factor authentication.
Likely Case
Attackers with temporary physical access to devices could generate unauthorized signatures, though they would need to intercept the device during initial power-up before legitimate PIN entry.
If Mitigated
With proper physical security controls and immediate PIN entry after device connection, the window for exploitation is minimized, though the fundamental authentication bypass remains.
🎯 Exploit Status
Exploitation requires physical access to the device and knowledge of the vulnerability timing (immediately after power-up). The advisory includes technical details that could be used to create exploits.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.0.10
Vendor Advisory: https://developers.yubico.com/ykneo-openpgp/SecurityAdvisory%202015-04-14.html
Restart Required: No
Instructions:
1. Download ykneo-openpgp 1.0.10 or later from Yubico's website. 2. Use the ykpersonalize tool to update the OpenPGP applet on your YubiKey NEO. 3. Verify the update completed successfully using ykman or similar tools.
🔧 Temporary Workarounds
Immediate PIN entry
allAlways enter your PIN immediately after connecting the YubiKey to prevent exploitation during the vulnerable window
Physical security controls
allImplement strict physical security for YubiKey devices, never leave them unattended
🧯 If You Can't Patch
- Implement strict physical security controls for all YubiKey NEO devices
- Require immediate PIN entry upon device connection and monitor for suspicious signature generation
🔍 How to Verify
Check if Vulnerable:
Check OpenPGP applet version using: ykman openpgp info or similar YubiKey management tools. Look for version numbers below 1.0.10.
Check Version:
ykman openpgp info | grep 'Applet version'
Verify Fix Applied:
After updating, verify the version shows 1.0.10 or higher using: ykman openpgp info
📡 Detection & Monitoring
Log Indicators:
- Unexpected signature generation events without prior PIN verification
- Multiple failed PIN attempts followed by successful signature generation
Network Indicators:
- N/A - This is a local device vulnerability
SIEM Query:
N/A - Physical access required, no network exploitation