經(jīng)過(guò)多年以來(lái)的無(wú)數(shù)次審查、討論和代碼重寫,Linus Torvalds 通過(guò)了一項(xiàng) Linux 內(nèi)核新的安全功能,它被稱為“鎖定”(lockdown)。
這項(xiàng)新功能將作為 LSM(Linux Security Module,Linux 安全模塊)包含在即將發(fā)布的 Linux kernel 5.4 中。由于存在破壞現(xiàn)有系統(tǒng)的風(fēng)險(xiǎn),因此該功能是可選的,并非默認(rèn)開啟。
這一新的鎖定功能主要是為了防止 root 帳戶篡改內(nèi)核代碼,從而在用戶態(tài)進(jìn)程和代碼之間劃清界限。啟用該功能后,即便是 root 帳戶也無(wú)法訪問某些內(nèi)核功能,從而保護(hù)操作系統(tǒng)免受受損的 root 帳戶影響。
Linus Torvalds 表示,啟用鎖定模塊后,各種內(nèi)核功能都會(huì)受到限制。其中包括對(duì)內(nèi)核功能的訪問限制;對(duì) /dev/mem 的讀寫操作的阻止;對(duì) CPU MSR 訪問的限制;以及防止系統(tǒng)進(jìn)入睡眠狀態(tài)等等。
鎖定功能支持兩種不同模式,可用于激活不同級(jí)別的限制。“完整性”(integrity)模式將禁止用戶修改正在運(yùn)行的內(nèi)核功能。另一種“機(jī)密性”(confidentiality)模式則會(huì)禁止用戶從內(nèi)核中提取機(jī)密信息。
內(nèi)核鎖定功能的研究始于 2010 年代初期,由現(xiàn)在的 Google 工程師 Matthew Garrett 牽頭。該功能背后的想法是創(chuàng)建一種安全機(jī)制,以防止具有特權(quán)的用戶(甚至是“root”帳戶)篡改內(nèi)核的代碼。
在那個(gè)時(shí)候,即使 Linux 系統(tǒng)采用了安全啟動(dòng)機(jī)制,惡意軟件仍然可以通過(guò)濫用具有特殊提升特權(quán)的驅(qū)動(dòng)程序和 root 帳戶等來(lái)篡改內(nèi)核代碼。多年以來(lái),許多安全專家一直在要求 Linux 內(nèi)核支持一種更有效的方式來(lái)限制 root 帳戶,并提高內(nèi)核安全性。
最初提出該功能時(shí),Linus Torvalds 本人是最大的反對(duì)者之一,他對(duì)此提出了不少批評(píng)。結(jié)果,許多 Linux 發(fā)行版開發(fā)了自己的 Linux 內(nèi)核補(bǔ)丁,這些補(bǔ)丁在主線內(nèi)核之上都添加了鎖定功能。直到 2018 年,支持派和反對(duì)派才逐漸達(dá)成中間立場(chǎng),關(guān)于鎖定功能的工作也終于在今年取得了新的進(jìn)展。
新功能獲得批準(zhǔn)后,也在 Linux 和網(wǎng)絡(luò)安全社區(qū)受到了廣泛歡迎。詳情可查看公告
【責(zé)任編輯:未麗燕 TEL:(010)68476606】