写点什么

华为被指 Linux 内核补丁有漏洞,官方否认参与该项目,称系员工个人项目

  • 2020-05-14
  • 本文字数:3721 字

    阅读完需:约 12 分钟

华为被指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 处理程序是这样的:



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 项目。


华为表示,该补丁代码未在华为产品中使用,也未正式发布。



当天,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 作者的自述文章显示,作者自称他是华为的员工,这个项目已经辛苦研发了很久。他称因为漏洞事件给公司造成了一定负面影响,他担忧会因此离职。但该自述文章的真实性有待证明。



在 5 月 12 日晚,PaX/GRsecurity 发现,该项目作者已经把 HKSP 的名称修改为了AKSP(+Another kernel self protection,另一个内核自我保护)。


去年,华为曾被指代码存在 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/


2020-05-14 13:559519
用户头像
刘燕 InfoQ高级技术编辑

发布了 1112 篇内容, 共 574.3 次阅读, 收获喜欢 1981 次。

关注

评论 3 条评论

发布
用户头像
20级代码这么烂?
2021-04-23 09:55
回复
用户头像
名誉公司求,黑锅员工背。
2020-05-15 13:57
回复
用户头像
还好没说是临时工干的
2020-05-14 14:28
回复
没有更多了
发现更多内容

监控系统 Prometheus 的原理 | 社区征文

悟空聊架构

运维 监控 Prometheus 悟空聊架构 年中技术盘点

浅议实时操作系统RTOS

DevOps和数字孪生

RTOS 实时操作系统

4种大文件传输的方式?适用设计类企业的文件传输方法

镭速

大文件传输

柏睿数据作为湖仓一体数据平台代表厂商入选IDC报告

新消费日报

浅析本地缓存技术-Guava Cache | 京东物流技术团队

京东科技开发者

Java 缓存 Guava Cache Guava 企业号 7 月 PK 榜

基于50W携程出行攻略构建事件图谱(含码源):交通工具子图谱、订酒店吃饭事件图谱等

汀丶人工智能

人工智能 自然语言处理 知识图谱

社区征文 | 记一次“雪花算法”造成的生产事故的排查记录

悟空聊架构

架构 雪花算法 生产事故 悟空聊架构 年中技术盘点

网络带宽利用率不够?这些大数据传输解决方案来帮你

镭速

数据传输 大数据传输

EDS从小白到专家丨打造你的专属“数据物流”系统

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 7 月 PK 榜

什么是 JSON:一个简洁易懂的入门指南

Apifox

Java json 程序员 开发 Postman

极客时间架构实战营模块一作业

德拉古蒂洛维奇

#架构实战营

DevSecOps:软件安全捍卫者

DevOps和数字孪生

DevSecOps

多云管理平台有哪些?大家推荐哪家好用?

行云管家

云计算 多云 云管理 云管

m7s Console架构解析

不卡科技

vite 流媒体 控制台 Vue 3 #go

混战源起ChatGPT,中国的AI产业怎么样了? | 社区征文

向阳花

人工智能 AI 马斯克 前沿技术 年中技术盘点

24款数据可视化工具介绍

2D3D前端可视化开发

数据分析 web前端 数据可视化工具 可视化看板 数据可视化软件

【航遥 × ModelWhale】AI for Science 科研范式改革

ModelWhale

人工智能 云计算 算力 遥感 地球科学

揭秘|来看看袋鼠云数栈内部的资产血缘方案设计与实现

袋鼠云数栈

数据资产 数据血缘

电商企业需要堡垒机吗?采购堡垒机选择哪家好?

行云管家

网络安全 信息安全 电商 堡垒机 等级保护

如何看待互联网大厂加班文化?

程序员小毕

程序员 互联网 后端 架构师 java面试

跟着核心开发者聊聊大模型应用、框架开源那些事儿

飞桨PaddlePaddle

人工智能 百度 paddle 飞桨 百度飞桨

构建网站利器!体验高速稳定的香港云主机服务!

一只扑棱蛾子

云主机 香港云主机

18款iPad绘画软件推荐!iPad必备生产力工具。

彭宏豪95

ipad 效率工具 苹果 绘图软件 在线绘图

多种应用场景下的大数据传输解决方案,让企业数据高效同步

镭速

大数据传输

中小企业建设数字化工厂,选择集成老路还是整体重构?

华为云开发者联盟

云计算 后端 华为云 华为云开发者联盟 企业号 7 月 PK 榜

这些大数据传输解决方案保证了企业快速传输和数据可靠性

镭速

高速传输 大数据传输 快速文件传输

大语言模型的预训练[6]:思维链(Chain-of-thought,CoT)定义原理详解、Zero-shot CoT、Few-shot CoT 以及在LLM上应用| 社区征文

汀丶人工智能

人工智能 大语言模型 LLM模型 年中技术盘点 思维链

华为被指Linux内核补丁有漏洞,官方否认参与该项目,称系员工个人项目_AI&大模型_刘燕_InfoQ精选文章