Linux安全驱动模块,【漏洞预警】CVE-2017-2636:linux 内核n_hdlc驱动模块 本地提权漏洞...
漏洞描述:
漏洞編號:CVE-2017-2636
漏洞發現者:Alexander Popov
漏洞危害:高危,低權限用戶利用該漏洞可以在Linux系統上實現本地提權。
影響范圍:這個bug最早引入在2009年6月22號。在該日期發布后的內核版本均可能受該漏洞影響。詳情請參看
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=be10eb7589337e5defbe214dae038a53dd21add8
漏洞簡述:該漏洞是Linux內核驅動 n_hdlc 模塊(drivers/tty/n_hdlc.c)發生條件競爭導致的,利用該漏洞可以進行權限提升。該驅動模塊提供HDLC串行線路規則,在大多Linux發行版的內核配置為CONFIG_N_HDLC = m,n_hdlc被編譯成模塊并啟用。
漏洞細節:
N_HDLC線路規則使用自制的單鏈表來獲取緩沖區數據,當發生錯誤的時,n_hdlc.tbuf 指針用于重新傳輸緩沖區數據。如果發送緩沖區數據不成功,它的地址就被保存在 n_hdlc.tbuf 指針中,下次函數n_hdlc_send_frames()將嘗試首先重新發送它。
在 commit be10eb7589337e5defbe214dae038a53dd21add8(“tty:n_hdlc 增加了 buffer flushing“)引入了對n_hdlc.tbuf 的競爭訪問。
在傳輸錯誤后并發執行flush_tx_queue()和n_hdlc_send_frames()函數將由n_hdlc.tbuf指向的緩沖區放入tx_free_buf_list兩次。因此在n_hdlc_release()中造成可利用的double free 漏洞。
詳細相關代碼請參看:
PoC:
稍后更新
Linux各發行版本對于該漏洞相關信息:
Red Hat Enterprise Linux/CentOS
Debian
ubuntu
SUSE/openSUSE
修復建議:
建議用戶通過系統更新到最新發行版修復此漏洞
參考:
總結
以上是生活随笔為你收集整理的Linux安全驱动模块,【漏洞预警】CVE-2017-2636:linux 内核n_hdlc驱动模块 本地提权漏洞...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 你的“不着急”,最后都是“来不及”
- 下一篇: linux 其他常用命令