Bug 1084529 - (CVE-2017-18222) VUL-0: CVE-2017-18222: kernel-source: In the Linux kernel before 4.12, Hisilicon Network Subsystem (HNS) doesnot consider the ETH_SS_PRIV_FLAGS case when retrieving sset_countdata, which allows local users to cause a denial of service (bu
(CVE-2017-18222)
VUL-0: CVE-2017-18222: kernel-source: In the Linux kernel before 4.12, Hisili...
Status: RESOLVED FIXED
Classification: Novell Products
Product: SUSE Security Incidents
Classification: Novell Products
Component: Incidents
unspecified
Other Other
: P3 - Medium : Normal
: ---
Assigned To: Security Team bot
Security Team bot
https://smash.suse.de/issue/201458/
CVSSv3:SUSE:CVE-2017-18222:8.4:(AV:L/...
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2018-03-08 15:27 UTC by Marcus Meissner
Modified: 2020-10-29 10:59 UTC (History)
6 users (show)

See Also:
Found By: Security Response Team
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marcus Meissner 2018-03-08 15:27:43 UTC
CVE-2017-18222

In the Linux kernel before 4.12, Hisilicon Network Subsystem (HNS) does
not consider the ETH_SS_PRIV_FLAGS case when retrieving sset_count
data, which allows local users to cause a denial of service (buffer
overflow and memory corruption) or possibly have unspecified other
impact, as demonstrated by incompatibility between hns_get_sset_count
and ethtool_get_strings.


References:
http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2017-18222
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-18222
Comment 1 Marcus Meissner 2018-03-08 15:28:47 UTC
https://github.com/torvalds/linux/commit/412b65d15a7f8a93794653968308fc100f2aa87c

 net: hns: fix ethtool_get_strings overflow in hns driver

hns_get_sset_count() returns HNS_NET_STATS_CNT and the data space allocated
is not enough for ethtool_get_strings(), which will cause random memory
corruption.

When SLAB and DEBUG_SLAB are both enabled, memory corruptions like the
the following can be observed without this patch:
[   43.115200] Slab corruption (Not tainted): Acpi-ParseExt start=ffff801fb0b69030, len=80
[   43.115206] Redzone: 0x9f911029d006462/0x5f78745f31657070.
[   43.115208] Last user: [<5f7272655f746b70>](0x5f7272655f746b70)
[   43.115214] 010: 70 70 65 31 5f 74 78 5f 70 6b 74 00 6b 6b 6b 6b  ppe1_tx_pkt.kkkk
[   43.115217] 030: 70 70 65 31 5f 74 78 5f 70 6b 74 5f 6f 6b 00 6b  ppe1_tx_pkt_ok.k
[   43.115218] Next obj: start=ffff801fb0b69098, len=80
[   43.115220] Redzone: 0x706d655f6f666966/0x9f911029d74e35b.
[   43.115229] Last user: [<ffff0000084b11b0>](acpi_os_release_object+0x28/0x38)
[   43.115231] 000: 74 79 00 6b 6b 6b 6b 6b 70 70 65 31 5f 74 78 5f  ty.kkkkkppe1_tx_
[   43.115232] 010: 70 6b 74 5f 65 72 72 5f 63 73 75 6d 5f 66 61 69  pkt_err_csum_fai
Comment 2 Marcus Meissner 2018-03-08 15:31:37 UTC
Driver was added in 4.4.

is enabled for aarch64
Comment 6 Marcus Meissner 2018-08-29 10:02:52 UTC
patches.kernel.org/4.4.124-068-net-hns-fix-ethtool_get_strings-overflow-in-h.patch

in sle12 sp3.
Comment 7 Marcus Meissner 2018-08-29 10:03:18 UTC
aarch64 not supported in older products -> done