Empty or malformed p256-ECDH public keys from project Wycheproof cause segfault
Categories
(NSS :: Libraries, defect, P1)
Tracking
(firefox-esr6068+ fixed, firefox67 wontfix, firefox68+ fixed, firefox69+ fixed)
People
(Reporter: jallmann, Assigned: mt)
References
Details
(Keywords: csectype-nullptr, sec-moderate, Whiteboard: [post-critsmash-triage][adv-main68+][adv-esr60.8+])
Attachments
(5 files)
Comment 1•6 years ago
|
||
Assignee | ||
Comment 2•6 years ago
|
||
Assignee | ||
Comment 3•6 years ago
|
||
Assignee | ||
Comment 4•6 years ago
|
||
Assignee | ||
Comment 5•6 years ago
|
||
Comment 6•6 years ago
|
||
Assignee | ||
Comment 7•6 years ago
|
||
Reporter | ||
Comment 8•6 years ago
|
||
Assignee | ||
Comment 9•6 years ago
|
||
All part of applying better discipline throughout.
Assignee | ||
Comment 10•6 years ago
|
||
Comment on attachment 9069833 [details]
Bug 1515342 - More thorough input checking, r=jcj
Security Approval Request
- How easily could an exploit be constructed based on the patch?: This patch rolls up the fixes in the real patches here (D15061 and D15062), but does not include any test changes.
The tests would light the path to an exploit too easily and mixing a bunch of related changes makes it much less obvious which are the nasty ones. There is an integer underflow in a buffer length calculation mixed in here, so this is potentially very bad.
- Do comments in the patch, the check-in comment, or tests included in the patch paint a bulls-eye on the security problem?: No
- Which older supported branches are affected by this flaw?: all of them
- If not all supported branches, which bug introduced the flaw?: None
- Do you have backports for the affected branches?: Yes
- If not, how different, hard to create, and risky will they be?: This patch applies on older branches cleanly.
- How likely is this patch to cause regressions; how much testing does it need?: Very unlikely.
From a code stability perspective, this is a small targeted change with plenty of testing.
From a compatibility perspective, if there are invalid encodings that are in use, this would start to reject those encodings. But I checked openssl code and they (correctly) reject invalid values in the same way as in this patch, so I'm comfortable that the compatibility risk is very low.
Comment 11•6 years ago
|
||
sec-approval+ for trunk. We'll want this on the beta (68) and ESR60 branches as well. Please nominate patches for these as well.
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Comment 12•6 years ago
|
||
Comment 13•6 years ago
|
||
Comment 14•6 years ago
|
||
Comment 15•6 years ago
|
||
Updated•6 years ago
|
Assignee | ||
Comment 16•6 years ago
|
||
A reminder here to both add tests and to back out https://hg.mozilla.org/projects/nss/rev/ebc93d6daeaa9001d31fd18b5199779da99ae9aa when this is opened up.
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Updated•6 years ago
|
Assignee | ||
Comment 17•5 years ago
•
|
||
Updated•5 years ago
|
Description
•