CVE-2022-50731

crypto: akcipher - default implementation for setting a private key

published December 24, 2025

CVSS
—
EPSS
0%
Percentile
15.6
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

crypto: akcipher - default implementation for setting a private key

Changes from v1:

* removed the default implementation from set_pub_key: it is assumed that

an implementation must always have this callback defined as there are

no use case for an algorithm, which doesn't need a public key

Many akcipher implementations (like ECDSA) support only signature

verifications, so they don't have all callbacks defined.

Commit 78a0324f4a53 ("crypto: akcipher - default implementations for

request callbacks") introduced default callbacks for sign/verify

operations, which just return an error code.

However, these are not enough, because before calling sign the caller would

likely call set_priv_key first on the instantiated transform (as the

in-kernel testmgr does). This function does not have a default stub, so the

kernel crashes, when trying to set a private key on an akcipher, which

doesn't support signature generation.

I've noticed this, when trying to add a KAT vector for ECDSA signature to

the testmgr.

With this patch the testmgr returns an error in dmesg (as it should)

instead of crashing the kernel NULL ptr dereference.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00251 · 15.6th percentile
Published
2025-12-24T12:22Z
EPSS history
Timeline
  • 24 DEC 12:22Z
    crypto: akcipher - default implementation for setting a private key
    cvelistv5