# net:mdio:在__mdiobus_register的位移操作中修复未定义行为
## 概述
Linux内核中的一个漏洞被修复,该漏洞涉及在`__mdiobus_register`函数中位移操作的未定义行为。向左移位31位的操作可能导致未定义行为,现在将相关位移操作改为无符号类型。
## 影响版本
未明确列出具体影响的Linux内核版本。
## 细节
在`drivers/net/phy/mdio_bus.c`文件中第586行,将32位有符号整数左移31位的操作会导致未定义行为。通过将移位操作的变量类型改为无符号类型来解决此问题。
## 影响
该漏洞触发时,会产生UBSAN(Undefined Behavior Sanitizer)警告,并导致如下调用跟踪:
```
UBSAN: shift-out-of-bounds in drivers/net/phy/mdio_bus.c:586:27
left shift of 1 by 31 places cannot be represented in type 'int'
Call Trace:
<TASK>
dump_stack_lvl+0x7d/0xa5
dump_stack+0x15/0x1b
ubsan_epilogue+0xe/0x4e
__ubsan_handle_shift_out_of_bounds+0x1e7/0x20c
__mdiobus_register+0x49d/0x4e0
fixed_mdio_bus_init+0xd8/0x12d
do_one_initcall+0x76/0x430
kernel_init_freeable+0x3b3/0x422
kernel_init+0x24/0x1e0
ret_from_fork+0x1f/0x30
</TASK>
```
# | POC 描述 | 源链接 | 神龙链接 |
---|
标题: Making sure you're not a bot! -- 🔗来源链接
标签:
标题: 503 Service Temporarily Unavailable -- 🔗来源链接
标签:
标题: 503 Service Temporarily Unavailable -- 🔗来源链接
标签:
标题: 503 Service Temporarily Unavailable -- 🔗来源链接
标签:
标题: Making sure you're not a bot! -- 🔗来源链接
标签:
标题: 503 Service Temporarily Unavailable -- 🔗来源链接
标签:
标题: 503 Service Temporarily Unavailable -- 🔗来源链接
标签:
标题: Making sure you're not a bot! -- 🔗来源链接
标签: