AI 年度盘点与2025发展趋势展望,50+案例解析亮相AICon 了解详情
写点什么

华为被指 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:559319
用户头像
刘燕 InfoQ高级技术编辑

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

关注

评论 3 条评论

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

前端常用的几个工具网站

源字节1号

开源

中国AI长卷(三):算法生根

脑极体

工程架构简析

XIAOJUSURVEY

开源 全栈 问卷架构

活动回顾 | 2024 搜索客社区 Meetup 首期线上直播活动圆满结束,附 PPT 下载

极限实验室

elasticsearch Meetup 极限科技 搜索客社区

蓝易云 - Debian下dpkg-query命令怎么用

百度搜索:蓝易云

适配器模式在 Go 语言中的应用

江湖十年

Go 面试 设计模式 适配器模式 后端、

万界星空科技MES系统与ERP的对接

万界星空科技

系统集成 ERP mes 万界星空科技 系统对接

物联网时代的数据库盘点

Greptime 格睿科技

sqlite 数据库 IoT 数据存储

蓝易云 - 蓝易云百科分享:怎么优化跨境电商服务器?

百度搜索:蓝易云

蓝易云 - Logstash同步MySQL数据到ElasticSearch

百度搜索:蓝易云

开放签电子签章系统终于支持docker部署方式了

开放签开源电子签章

Docker 镜像 电子签章

基于Golang实现Kubernetes边车模式

俞凡

golang 架构 微服务

制造业数字化转型创新思路 |《数智新时代制造业数字化创新实践白皮书》上线!

tapdata

蚌埠住了!我把斯坦福大牛的Web安全开发指南给分享出来了!

我再BUG界嘎嘎乱杀

黑客 网络安全 信息安全 WEB安全 网安

TapData 信创数据源 | 国产信创数据库 OceanBase 数据同步指南,加速国产化进程,推进自主创新建设

tapdata

某黑产最新免杀攻击样本详细分析

我再BUG界嘎嘎乱杀

黑客 网络安全 安全 网安

产品经理的需求管理秘籍:9大工具解读

爱吃小舅的鱼

需求管理 软件需求管理 需求管理工具

蓝易云 - enkins如何请求http接口及乱码问题解决

百度搜索:蓝易云

工程化实践:工程配置化设计

XIAOJUSURVEY

开源 配置化 工程化

mac单机游戏推荐:仙剑奇侠传3 for mac(支持M1)

你的猪会飞吗

Mac游戏下载 mac单机游戏

极光大数据:百度文库智能PPT市场份额已达八成,用户增速远超行业水平

Geek_2d6073

Milvus 向量数据库进阶系列丨构建 RAG 多租户/多用户系统 (上)

Zilliz

人工智能 AI Milvus 向量数据库 大语言模型

开启智能屏跃级体验,天猫精灵「哇哦闺蜜机」首发 4999 元起

新消费日报

123131

一鸣(Ming)

蓝易云 - SQLServer如何获取客户端IP

百度搜索:蓝易云

唯品会商品列表数据接口详解与实战应用(VIP.item_search)

tbapi

唯品会商品列表数据接口 唯品会API接口 唯品会

如何在Java、C、Ruby语言中使用Newscatcher API

幂简集成

ruby C语言 API java

天润融通助力车企做好战败线索分析,实现商机转化最大化

天润融通

人工智能

MelosBoom 智能硬件音响:推动全民 DePIN 的全新时代

股市老人

如何选择最佳开源文档协作工具?一文了解

爱吃小舅的鱼

开源 文档管理 文档协作

打造知识共享文化:2024年8大最佳企业工具

爱吃小舅的鱼

知识管理 知识管理系统 知识管理软件

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