-
Bug
-
Resolution: Fixed
-
P3
-
8, 9
-
b129
-
generic
-
generic
-
Verified
Issue | Fix Version | Assignee | Priority | Status | Resolution | Resolved In Build |
---|---|---|---|---|---|---|
JDK-8197079 | 8u192 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8195314 | 8u172 | Ivan Gerasimov | P3 | Resolved | Fixed | b03 |
JDK-8184363 | 8u162 | Ivan Gerasimov | P3 | Resolved | Fixed | b04 |
JDK-8188577 | 8u161 | Unassigned | P3 | Resolved | Fixed | b01 |
JDK-8172943 | 8u152 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8170271 | 8u151 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8171759 | 8u141 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8171580 | 8u131 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8170756 | 8u121 | Ivan Gerasimov | P3 | Resolved | Fixed | b12 |
JDK-8192322 | emb-8u161 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8184593 | emb-8u151 | Unassigned | P3 | Resolved | Fixed | b01 |
JDK-8178597 | emb-8u141 | Unassigned | P3 | Resolved | Fixed | b01 |
JDK-8173525 | emb-8u131 | Unassigned | P3 | Resolved | Fixed | b01 |
JDK-8170800 | emb-8u121 | Ivan Gerasimov | P3 | Resolved | Fixed | b12 |
JDK-8188454 | 7u171 | Unassigned | P3 | Resolved | Fixed | b01 |
JDK-8170414 | 7u161 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8171713 | 7u151 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8171627 | 7u141 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8170752 | 7u131 | Ivan Gerasimov | P3 | Resolved | Fixed | b11 |
JDK-8175458 | openjdk7u | Ivan Gerasimov | P3 | Resolved | Fixed | master |
JDK-8188352 | 6u181 | Unassigned | P3 | Resolved | Fixed | b01 |
JDK-8170417 | 6u171 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8171800 | 6u161 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8171667 | 6u151 | Ivan Gerasimov | P3 | Resolved | Fixed | b01 |
JDK-8170747 | 6u141 | Ivan Gerasimov | P3 | Resolved | Fixed | b11 |
openjdk version "1.8.0_92"
OpenJDK Runtime Environment (build 1.8.0_92-b14)
OpenJDK 64-Bit Server VM (build 25.92-b14, mixed mode)
ADDITIONAL OS VERSION INFORMATION :
Linux nicks-dryden 4.5.7-200.fc23.x86_64 #1 SMP Wed Jun 8 17:41:50 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
EXTRA RELEVANT SYSTEM CONFIGURATION :
Version of sunec.jar:
unzip -p /usr/lib/jvm/jre/lib/ext/sunec.jar META-INF/MANIFEST.MF
Manifest-Version: 1.0
Implementation-Title: Java Runtime Environment
Implementation-Version: 1.8.0_92
Specification-Vendor: Oracle Corporation
Specification-Title: Java Platform API Specification
Implementation-Vendor-Id: com.sun
Extension-Name: javax.crypto
Specification-Version: 1.8
Created-By: 1.8.0_92 (Oracle Corporation)
Implementation-Vendor: N/A
A DESCRIPTION OF THE PROBLEM :
When verifying ECDSA signatures, the SunEC provider does not validate the signature length, allowing signatures with bogus trailing bytes to be allowed.
Having stepped through the source code, the problem is in sun.security.ec.ECDSASignature; the decodeSignature() method unpacks the DER signature but does check for trailing bytes.
REPRODUCIBILITY :
This bug can be reproduced always.
- backported by
-
JDK-8170271 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8170414 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8170417 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8170747 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8170752 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8170756 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8170800 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8171580 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8171627 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8171667 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8171713 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8171759 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8171800 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8172943 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8173525 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8175458 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8178597 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8184363 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8184593 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8188352 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8188454 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8188577 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8192322 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8195314 Verifying ECDSA signatures permits trailing bytes
- Resolved
-
JDK-8197079 Verifying ECDSA signatures permits trailing bytes
- Resolved