Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: platform/x86: hp-bioscfg: fix password encoding bounds check The password PSWD_ENCODINGS parser reads password_obj[elem + pos_values] while copying the supported password encodings from the ACPI package. The outer loop only guarantees that elem is within password_obj_count. The encoding count is bounded by MAX_ENCODINGS_SIZE, but that does not guarantee that the ACPI package contains enough entries for all elem + pos_values accesses. A malformed package can therefore declare a non-zero encoding count without providing enough string objects, causing the parser to read past the ACPI package array and pass an out-of-bounds string pointer and length to hp_convert_hexstr_to_str(). Add the same computed-index bounds check used by the other offset-based package parsing loops before reading password_obj[elem + pos_values].
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected 8646a3b5ee3a5b384a22a721f37c24274d974045 before c224759555a13735b0d67561d818cefe00c3309a; affected 8646a3b5ee3a5b384a22a721f37c24274d974045 before 59fe8491ddaa03a510b352552e6ee291e7ce45d3; affected 8646a3b5ee3a5b384a22a721f37c24274d974045 before ace1ba5fca0ab775b3641e154bcbc3ccde26a71a; affected 8646a3b5ee3a5b384a22a721f37c24274d974045 before 8a7499b8fd34438c1b11964e0e7ef5bd590fec92; affected 8646a3b5ee3a5b384a22a721f37c24274d974045 before e213939ed9e6e6badf7aa48c4c8dd9a9cdf00615 |
| Linux / Linux | affected 6.6; unaffected 0 before 6.6; unaffected 6.6.157 through 6.6.*; unaffected 6.12.110 through 6.12.*; unaffected 6.18.52 through 6.18.*; unaffected 7.2.6 through 7.2.*; unaffected 7.3 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/c224759555a13735b0d67561d818cefe00c3309a
- https://git.kernel.org/stable/c/59fe8491ddaa03a510b352552e6ee291e7ce45d3
- https://git.kernel.org/stable/c/ace1ba5fca0ab775b3641e154bcbc3ccde26a71a
- https://git.kernel.org/stable/c/8a7499b8fd34438c1b11964e0e7ef5bd590fec92
- https://git.kernel.org/stable/c/e213939ed9e6e6badf7aa48c4c8dd9a9cdf00615