CVE-2023-53456

Summary

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

scsi: qla4xxx: Add length check when parsing nlattrs

There are three places that qla4xxx parses nlattrs:

  • qla4xxx_set_chap_entry()

  • qla4xxx_iface_set_param()

  • qla4xxx_sysfs_ddb_set_param()

and each of them directly converts the nlattr to specific pointer of structure without length checking. This could be dangerous as those attributes are not validated and a malformed nlattr (e.g., length 0) could result in an OOB read that leaks heap dirty data.

Add the nla_len check before accessing the nlattr data and return EINVAL if the length check fails.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < cfa6a1a79ed6d336fac7a5d87eb5471e4401829faffected
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < 5925e224cc6edfef57b20447f18323208461309baffected
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < 47f3be62eab50b8cd7e1ae5fc2c4dae687497c34affected
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < 6d65079c69dc1feb817ed71f5bd15e83a7d6832daffected
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < f61fc650c47849637fa1771a31a11674c824138aaffected
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < 25feffb3fbd51ae81d92c65cebc0e932663828b3affected
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < 4ed21975311247bb84e82298eeb359ec0a0fa84daffected
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < b018c0440b871d8b001c996e95fa4538bd292de6affected
LinuxLinux00c31889f7513e9ffa6b2b4de8ad6d7f59a61c80 < 47cd3770e31df942e2bb925a9a855c79ed0662ebaffected
LinuxLinux3.2affected
LinuxLinux0 < 3.2unaffected
LinuxLinux4.14.326 <= 4.14.*unaffected
LinuxLinux4.19.295 <= 4.19.*unaffected
LinuxLinux5.4.257 <= 5.4.*unaffected
LinuxLinux5.10.195 <= 5.10.*unaffected
LinuxLinux5.15.132 <= 5.15.*unaffected
LinuxLinux6.1.53 <= 6.1.*unaffected
LinuxLinux6.4.16 <= 6.4.*unaffected
LinuxLinux6.5.3 <= 6.5.*unaffected
LinuxLinux6.6 <= *unaffected

Weaknesses

References