令人失望:物联网供应商无视基本的安全优秀实践

 CITL 大规模模糊测试项目的新测试结果显示了现实情况有多糟糕——以及物联网设备制造商如何通过一天的工程作业从根本上提高二进制安全性。

 

 

[[276876]]

模糊测试 (fuzz testing) 是一种安全测试方法,它介于完全的手工测试和完全的自动化测试之间。为什么是介于那两者之间?首先完全的手工测试即是渗透测试,测试人员可以模拟黑客恶意进入系统、查找漏洞,这对测试人员的要求比较高。能力强的测试人员可以发现比较多或者高质量的安全性问题,但是如果测试人员的能力不够,可能就不能找到足够多、威胁大的安全漏洞。所有渗透测试对人员能力的依赖性强,成本高,难以大规模的实施。

但是想用完全的自动化来实现渗透测试也不可行,同一套测试用例和方法不可能不加修改的就用在不同的产品上,因为各个产品的需求、实现、功能等等都不一样。测试过程中还需要测试人员的介入来分析结果、判断漏洞等等。那么,这种情况下就需要引入模糊测试。

打开 “编译时” (compile-time) 安全功能很容易,那么为什么没有更多的物联网设备制造商这样做呢?

在构建物联网固件二进制文件时添加安全功能标志可以显著提高整个物联网设备的安全性。但是,根据 CITL 大规模模糊测试项目的研究显示,几乎没有人这样做,问题正变得越来越严重,而不是更好。

这都是一些非常基本且简单的安全实践……根本就找不到充分的理由不去这么做,但现实是,大部分物联网设备制造商确实没有这样做。

Cyber ITL 是一个非盈利的消费者报告式安全实验室,迄今为止已经对过去 15 年发布的 300 多万个物联网固件二进制文件进行了模糊测试,但结果却令人失望。

在谈及大部分物联网设备供应商并未打开基本的 “编译时” 安全功能时,CITL 首席科学家 Sarah Zatko 感叹道:

这很容易做到,我也想不出有什么理由不去这么做,但结果就是他们并未这么做!我认为他们应该不是故意忽视这一点的,因为看起来不像某个人有意识地决定排除这些安全特征,而更像是一种 ‘良性/无意的’ 忽视,可能是某人认为这并不属于他们的工作范畴。

post-build检查单

物联网供应商可以轻而易举地打开这些 “编译时” 安全功能,并且检查它们作为其发布管理流程的一部分。良好的构建卫生包括检查是否存在更新版本的编译器,并确保启用基本安全功能,如 ASLR,DEP 以及堆栈防护。虽然这些安全缓解措施都并非 “灵丹妙药”,但它们仍然是物联网世界的 “安全气囊” 和 “安全带”。也许它们无法阻止崩溃,但它们在关键时刻可能会挽救你的生命。

而要完成这些操作可能只需要几个小时的工程作业,最多不会超过一天的时间。如果由于某种原因存在一些特殊的操作系统和芯片组合的奇怪边缘现象,那么问题可能会相对麻烦复杂一些,但大多数情况下应该都还是非常简单易实现的。

由于在我们继续部署不安全的物联网设备时,不良构建卫生的后果会变得更为复杂,因此物联网供应商需要开始检查他们正在进行的 post-build 质量检查测试,或者他们可能会发现自己是被强制规定需要这么做的。

鉴于自由市场到目前为止未能鼓励供应商采取这种负责任的行为,人们不禁会质疑,在这种不良的监管环境下,何时会引爆物联网安全危机?

物联网安全:自由市场还是监管?

到目前为止,自由市场未能制定有效地激励措施,以鼓励供应商提供强有力的网络安全产品,但 Zatko 希望大型买家可以在其中发挥作用。

自由市场本身没有做太多努力。15 年来情况一直没有发生变化……如果做出大规模采购决策的人开始询问有关构建安全性的问题,那么可能会影响供应商的实践。而无疑,企业组织和政府机构正是物联网产品的大买家。

买家通常会在签订新协议之前提供他们所要求的安全问题清单。在该清单中囊括构建安全问题,将迫使供应商进行实际检查,并且也能够让供应商明白大型买家是关心构建安全问题的。

物联网固件安全问题

不过,CITL 的研究也发现了一些惊喜——物联网供应商应该知道的级联故障点。编译器和固件工具链(如buildroot)是关键的上游依赖项,可以更好地帮助开发人员在编译时标记安全问题。此外,MIPS 仍然是一个问题,且需要特殊处理。

MIPS 的意思 “无内部互锁流水级的微处理器”,其机制是尽量利用软件办法避免流水线中的数据相关问题。MIPS 采用精简指令系统计算结构 (RISC) 来设计芯片。

MIPS 架构优势:

(1)支持 64Bit 指令和操作;

(2)MIPS 有专门的除法器,可以执行除法指令;

(3)MIPS 内核寄存器比 ARM 多一倍,也就是说在同样性能下,MIPS 功耗比 ARM 更低,同样功耗下性能比 ARM 更高;

(4)MIPS 指令比 ARM 多一些,执行部分运算时更灵活。

MIPS 架构缺点:

(1)MIPS 内存地址起始有问题,这就导致 MIPS 在内存和 cache 的支持方面受限,单内核无法承受高容量内存配置;

(2)MIPS 技术大发展方向是并行线程,从核心移动设备的发展趋势来看,并不是未来主流;

(3)MIPS 虽然结构更简单,但采用顺序单/双发射,执行指令流水线周期远不如 ARM 高效;

(4)商业化进程落后,至今还停留在高清盒子打印机之类的产品上;

(5)软件平台落后,应用软件少。

如今,很多人错误地以为 MISP 正在步入淘汰行列,但该硬件架构已经在物联网领域卷土重来,且事实证明,该架构正是 CITL 在大规模模糊测试中遇到的最常见的架构。他们发现,问题在于,从安全的角度来看,并非每个架构都是相同的。

许多人认为,如果你采用相同的源代码并将其转移到不同的芯片或不同的架构中,其仍然能发挥相同的安全特性和功能。但是事实并非如此,就安全方面而言,必须要考虑整体情况。

事实证明,为 Linux MIPS 版本启用 ASLR 和 DEP 编译时功能无法正常工作,消除、部署和完全修复该问题可能需要花费数年的时间。十多年来,Linux MIPS 二进制文件一直很容易被经典的堆栈溢出攻击利用,而且根据 CITL 对工具链补丁的检测结果显示,这种情况仍在持续。

更糟糕的是,物联网固件领域似乎正存在大量无意义的代码重用现象,且每个人都想当然地以为其他人已经做了安全审计工作。当查看不同的产品时,实际上出现了很多共同的二进制文件,这表明许多不同的供应商正在使用相同的框架来构建他们的物联网平台。

开发人员用户界面——编译器和固件构建工具链——中的敏感安全默认值将流向下游并影响使用这些产品的供应商,以及随后将使用这些设备的数百万用户。

编译器本身可以提供更好的报告,说明在编译过程结束时实施了哪些安全功能。此外,编译器也很容易提供透明度,并为开发人员提供有关刚刚生成的内容的更好反馈。

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/132777.html<

(0)
运维的头像运维
上一篇2025-02-27 04:28
下一篇 2025-02-27 04:29

相关推荐

  • 个人主题怎么制作?

    制作个人主题是一个将个人风格、兴趣或专业领域转化为视觉化或结构化内容的过程,无论是用于个人博客、作品集、社交媒体账号还是品牌形象,核心都是围绕“个人特色”展开,以下从定位、内容规划、视觉设计、技术实现四个维度,详细拆解制作个人主题的完整流程,明确主题定位:找到个人特色的核心主题定位是所有工作的起点,需要先回答……

    2025-11-20
    0
  • 社群营销管理关键是什么?

    社群营销的核心在于通过建立有温度、有价值、有归属感的社群,实现用户留存、转化和品牌传播,其管理需贯穿“目标定位-内容运营-用户互动-数据驱动-风险控制”全流程,以下从五个维度展开详细说明:明确社群定位与目标社群管理的首要任务是精准定位,需明确社群的核心价值(如行业交流、产品使用指导、兴趣分享等)、目标用户画像……

    2025-11-20
    0
  • 香港公司网站备案需要什么材料?

    香港公司进行网站备案是一个涉及多部门协调、流程相对严谨的过程,尤其需兼顾中国内地与香港两地的监管要求,由于香港公司注册地与中国内地不同,其网站若主要服务内地用户或使用内地服务器,需根据服务器位置、网站内容性质等,选择对应的备案路径(如工信部ICP备案或公安备案),以下从备案主体资格、流程步骤、材料准备、注意事项……

    2025-11-20
    0
  • 如何企业上云推广

    企业上云已成为数字化转型的核心战略,但推广过程中需结合行业特性、企业痛点与市场需求,构建系统性、多维度的推广体系,以下从市场定位、策略设计、执行落地及效果优化四个维度,详细拆解企业上云推广的实践路径,精准定位:明确目标企业与核心价值企业上云并非“一刀切”的方案,需先锁定目标客户群体,提炼差异化价值主张,客户分层……

    2025-11-20
    0
  • PS设计搜索框的实用技巧有哪些?

    在PS中设计一个美观且功能性的搜索框需要结合创意构思、视觉设计和用户体验考量,以下从设计思路、制作步骤、细节优化及交互预览等方面详细说明,帮助打造符合需求的搜索框,设计前的规划明确使用场景:根据网站或APP的整体风格确定搜索框的调性,例如极简风适合细线条和纯色,科技感适合渐变和发光效果,电商类则可能需要突出搜索……

    2025-11-20
    0

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注