Categories
程式開發

華為被指Linux內核補丁有漏洞,官方否認參與該項目,稱系員工個人項目


華為否認參與為Linux內核提供帶有漏洞的不安全補丁。

華為HKSP被指存在漏洞

5月10日,華為在內核加固郵件列表上提交了一個針對Linux內核防禦的方案—華為自我保護即HKSP( huawei kernel self protection)。

HKSP是一種內核保護工具,據了解,該補丁為Linux內核引入了一系列安全強化選項,以試圖增強廣泛部署的開源項目的安全性。

大多數在數據中心及在線服務中使用Linux的技術公司通常都會向Linux內核提交補丁,比如穀歌、微軟、亞馬遜等大型的科技公司都為其貢獻了代碼。

這是華為首次為Linux內核項目做出貢獻,因此該舉動也格外引人關注。

近日,HKSP項目受到了一些質疑。 PaX/GR security團隊發現HKSP補丁程序在內核代碼中引入了一個“可輕易利用”的漏洞,並對此寫了一篇分析文章發表出來。 PaX/GR security是一家長期為Linux內核提供安全加固補丁的團隊。

在文章中,PaX/GR security指出,該補丁本身充滿漏洞,且通常缺乏任何威脅模型分析(這就使得補丁的緩解措施與在LKRG中的緩解措施類似,而已知的緩解措施可以繞過該漏洞)。

目前尚不清楚發布的補丁集是否是華為的正式版本,也不清楚這些代碼是否已在華為的任何設備上發布。 “但有信息顯示,其與華為有關係。因為該補丁集在名稱上使用了‘華為’,其Github帳戶也將華為列為該帳戶的組織”,PaX/GR security稱。

文章中,PaX/GR security用了較大篇幅來說明“由於完全缺乏防禦性程序,HKSP修補程序集是如何引入了可輕易利用的漏洞的”。

在這個補丁中,創建了一個/proc/ksguard/state條目。每次打開或關閉該條目時,都將提示代碼檢查級別,引用了不存在的文件名的下列行被輸出到dmesg:

open /proc/ksg_state_proc ok.
close /proc/ksg_state_proc ok.

如在下面的補丁中看到的,該條目是使用全局RWX權限創建的。 “這是粗心大意的表現,因為這不支持任何有意義的讀取操作,並且在這樣的條目上執行是沒有意義的”,PaX/GR security稱。

state_proc = proc_create("state", 0777, ksg_proc, &ksg_state_ops);

這個條目的ksg_state_write處理程序是這樣的:

華為被指Linux內核補丁有漏洞,官方否認參與該項目,稱系員工個人項目 1

PaX/GR security認為這個函數存在很多問題:

首先,這裡有一個會返回適當errno(通常是-EFAULT)的return-1。也有一個用於賦值的n變量,但實際上卻沒什麼用,根本沒有檢查len的值,這導致的第一個問題是limited oracle。

通過將0字節寫入entry,未初始化的tmp數組將嘗試從中解析出一個數字,然後對其進行操作。同樣地,向entry寫入完整的32字節並沒有使用以空字符結尾的字符串將導致simple_strtoul訪問越界,可能要在相鄰內存上的部分oracle上進行操作。

最重要的是,由於缺少對len的檢查,並且tmp是一個簡單的32字節堆棧數組,這就引入了一個可以被任何非特權用戶執行的內核堆棧緩衝區溢出。

“有效的安全防禦需要明確的、能解決實際問題的威脅模型分析。內核中的補丁應該是具有防禦性的,並考慮到減少維護負擔”,PaX/GR security認為HKSP補丁是一種風險,它會產生新的攻擊面,並引入比最初嘗試解決的問題更多的問題。

華為回應:HKSP僅是個人開源項目,不代表公司

PaX/GR security的質疑文章出來後,引起了很多人的關注和討論,對於華為此舉,有不少指責的聲音流出,甚至不乏謠言和陰謀論。

有外媒觀點認為,華為或其員工正在偷偷將“後門”引入Linux內核,如果該補丁獲得批准,那麼,該內核將可能在下一個Linux更新中實現,這將削弱Linux內核的安全性。據悉,該漏洞需要Linux基金會為Linux內核項目批准了HKSP之後才會起作用。

對於爭議,5月11日,華為產品安全應急響應中心發表了一份聲明。

公告中,華為表示經過調查後發現,該補丁只是個人用於與開源社區Openwall進行技術討論的演示代碼,華為並未參與HKSP項目。

華為表示,該補丁代碼未在華為產品中使用,也未正式發布。

華為被指Linux內核補丁有漏洞,官方否認參與該項目,稱系員工個人項目 2

當天,HKSP的作者在一份免責自述中也回應了PaX/GR security的質疑。

HKSP作者表示,這個項目是他業餘時間展開的研究工作,屬於個人開源項目,與華為公司無關,也沒有華為產品使用這些代碼。

“該補丁代碼由我提出,因為一個人沒有足夠的精力去覆蓋所有的工作,因此缺乏像審查和測試這樣的質量保證”。他解釋稱,“這個補丁只是一個演示代碼,謝謝您發現的問題,我正在嘗試修復相關代碼。

他對PaX/GR security提出的ksguard的問題做出了解釋— “ksg_guard是一個用來檢測內核級rootkit的poc示例,用戶與內核的通信是拋出/proc接口,我的初衷是為了快速驗證這個想法,因此我沒有添加足夠的安全檢查”。

最後,HKSP作者對補丁進行了修改。他刪除了ksg_guard代碼,並準備用netlink接口重新編寫,他還刪除了隱藏符號模塊。

他刪除了“華為”字符串,“解除”了和華為的關聯。他表示這是個人項目,而非華為官方支持的項目。

PaX/GR security稱,華為聯繫了他們,並告知其調查結果。華為希望通過更新文章來糾正一些不准確的信息。

PaX/GR security發現,該項目的Github代碼庫在11日早上增加了一個提交項,在README文件的頂部插入了一個通知,使補丁代碼與華為保持距離。

PaX/GR security覺得,這個提交項似乎在有意或無意的追溯到創建存儲庫時,這會給人一種印像是,PaX/GR security以某種方式故意忽略了容易獲得的相關信息。因此,PaX/GR security堅持其報告及主張。

作者可能係華為20級安全員

PaX/GR security團隊稱,這個補丁的作者是華為的一名員工,儘管在這篇文章發表後,華為試圖與HKSP補丁代碼保持距離,但它仍然保留了“華為”的名字。

“根據我們的消息來源,該員工是華為20級的高級安全人員,這是華為內部的最高技術級別,如果沒有上級組織的指示,這麼高級別的人員就不可能發布代碼。”

另有一份疑似是HKSP作者的自述文章顯示,作者自稱他是華為的員工,這個項目已經辛苦研發了很久。他稱因為漏洞事件給公司造成了一定負面影響,他擔憂會因此離職。但該自述文章的真實性有待證明。

華為被指Linux內核補丁有漏洞,官方否認參與該項目,稱系員工個人項目 3

在5月12日晚,PaX/GRsecurity發現,該項目作者已經把HKSP的名稱修改為了AKSP(+Another kernel self protection,另一個內核自我保護)。

華為被指Linux內核補丁有漏洞,官方否認參與該項目,稱系員工個人項目 4

去年,華為曾被指代碼存在BUG

2019年3月,英國一家政府監督機構在一份報告中指出,華為的產品代碼不存在所謂的“後門”,但存在嚴重問題的缺陷(BUG),這些缺陷造成了一定的安全風險。該報告最後得出結論,華為產品代碼中的缺陷與“基本工程能力和網絡安全環境”有關,任何人都可以利用這些缺陷。

當時,該報告也在業界也引發了不少討論。對此,華為堅定表示,它在努力加強其工程工作流程中的安全保護,以及支持行業和國際監管機構之間的合作,以確保全球電信網絡的強大安全。

一個不容忽視的報告出爐背景是,因擔憂華為的設備可能被用於監控等用途,特朗普政府在協同努力在世界各地禁止華為的產品(尤其是5G無線網絡)。

這一次,鑑於華為目前所面臨的複雜政治環境,由PaX/GRsecurity指控而觸發的一些流言也在傳播。有網友就翻出了去年英國審查華為網絡軟件後發現漏洞的舊事,並稱,在某種程度上,華為延續這種“錯誤”應該被認為是惡意的。

當然,也有不少人是理性和客觀的,他們對此持反對意見。外媒TechNadu評論稱,這種所謂的“陰謀論”令人懷疑。它列出了3點反駁意見:首先,華為以這種方式對Linux內核項目進行的測試是公開進行的,如果他們認為Linus Torvalds及其團隊會不加以審核,就簡單地接受華為“扔”給他們的任何東西,那就太天真了。其次,如果華為試圖在Linus內核中隱藏一個“後門”,他們會不會試圖讓它不那麼明顯? 第三,他們為何不安排一個非在職員工做這件事?

去年6月,華為創始人任正非曾在接受外媒採訪時回應了外界對於“華為是否有後門”的質疑,他表示,信息安全方面,華為提供的是管道和水龍頭。如果把終端比作水龍頭,管道裡面流水還是流油,這不是華為決定的。 “我們絕對是沒有後門的。我們願意給全世界國家提供沒有後門的協定。”

因此,當評判HKSP這個項目時,還是要更加客觀的回歸到事實本身去看問題。PaX/GRsecurity團隊的創始人之一 Brad Spengler 反復強調稱,他在乎的是事實本身,“如果你犯了錯誤應該及時承認並且快速修復”。

Brad Spengler表示,並不是針對華為,因為他曾閱讀過英國政府發布的華為代碼分析報告,他覺得該報告從技術層面上非常不專業,當時也寫了一篇分析文章。他強調,自己很欣賞包括華為在內的所有為自由開源社區貢獻的個人和公司。

人稱TK 教主的@tombkeeper 在自己的微博也對該事件發表了自己的評論,以他對PaX/GRsecurity的了解,他認為,這次HKSP 事件中,PaX/GRsecurity 的做法不一定是針對華為,可能就是簡單的敵視膽敢涉足漏洞緩解技術領域的人。

( TK 教主完整版評論:
https://www.weibo.com/1401527553/J1zIzqcwr?from=page_1005051401527553_profile&wvr=6&mod=weibotime&type=comment)

參考鏈接:

https://grsecurity.net/huawei_hksp_introduces_trivially_exploitable_vulnerability

https://www.zdnet.com/article/huawei-denies-involvement-in-buggy-linux-kernel-patch-proposal/

https://www.technadu.com/huawei-says-controversial-linux-kernel-patch-wasnt-their-idea/101721/