Closed
Bug 624042
Opened 14 years ago
Closed 2 years ago
Softoken cannot decrypt padded data into a buffer that does not reserve room for the padding
Categories
(NSS :: Libraries, defect, P3)
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: briansmith, Unassigned)
References
Details
> /* this assumes that pLastPart is big enough to hold the *whole*
> * buffer!!! */
> rv = (*context->update)(context->cipherInfo, pLastPart, &outlen,
> maxout, context->padBuf, context->blockSize);
We should remove the assumption; decrypt the last block into a separate tem buffer, check the padding, copy the decrypted data into pLastPart, and then zeroize the temp buffer.
Comment 1•13 years ago
|
||
bsmith: just to confirm my understanding: this bug will result in a
decryption failure but not a buffer overflow, right? If pLastPart
does not reserve room for the padding, the (*context->update)() call
you showed should fail.
If so, this bug isn't serious because without knowing the length of
the plaintext in advance, the caller has to use an output buffer
large enough for a padding of only one byte. I think most callers
will use an output buffer that's at least as long as the ciphertext.
Summary: Softoken cannot decrypt padded data into a buffer that does reserve room for the padding → Softoken cannot decrypt padded data into a buffer that does not reserve room for the padding
Updated•3 years ago
|
Severity: normal → S3
Updated•2 years ago
|
Status: NEW → RESOLVED
Closed: 2 years ago
Priority: -- → P3
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•