summaryrefslogtreecommitdiff
path: root/crypto
diff options
context:
space:
mode:
authorEric Sesterhenn <eric.sesterhenn@x41-dsec.de>2017-10-08 21:02:32 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-10-27 11:39:15 +0300
commit7610595830bbec52079a40e8d3928f6261c02dcc (patch)
tree50d73ea72fe474deb7565422bcf030ee38479b90 /crypto
parent24a33a0c96f3e976c18e4321ca09f71cb835a9b5 (diff)
downloadlinux-7610595830bbec52079a40e8d3928f6261c02dcc.tar.xz
pkcs7: Prevent NULL pointer dereference, since sinfo is not always set.
commit 68a1fdbbf8bd3378325e45c19e167a165f9ffc3a upstream. The ASN.1 parser does not necessarily set the sinfo field, this patch prevents a NULL pointer dereference on broken input. Fixes: 99db44350672 ("PKCS#7: Appropriately restrict authenticated attributes and content type") Signed-off-by: Eric Sesterhenn <eric.sesterhenn@x41-dsec.de> Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'crypto')
-rw-r--r--crypto/asymmetric_keys/pkcs7_parser.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/crypto/asymmetric_keys/pkcs7_parser.c b/crypto/asymmetric_keys/pkcs7_parser.c
index af4cd8649117..d140d8bb2c96 100644
--- a/crypto/asymmetric_keys/pkcs7_parser.c
+++ b/crypto/asymmetric_keys/pkcs7_parser.c
@@ -88,6 +88,9 @@ static int pkcs7_check_authattrs(struct pkcs7_message *msg)
bool want = false;
sinfo = msg->signed_infos;
+ if (!sinfo)
+ goto inconsistent;
+
if (sinfo->authattrs) {
want = true;
msg->have_authattrs = true;