0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Linux的物联网设备的安全案例

星星科技指导员 来源:嵌入式计算设计 作者:John Weber 2022-08-12 11:13 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

您是否属于将 Internet 连接和服务添加到原本不打算这样做的设备中的 OEM 和系统集成商?如果您是,那么您知道通过将这些产品连接到 Internet,客户正在发现新的收入形式,在某些情况下,还会发现全新的商业模式。更重要的是,他们能够使他们现有的产品更有价值和更具成本效益。

随着我们继续看到更多连接互联网的设备,我们必须承认它们将容易受到攻击、远程禁用或以其他不受欢迎的方式受到损害——每种情况都严重威胁到这些新商业模式的整个基础。

考虑以下家庭自动化领域的示例。它是物联网IoT) 的最大消费者应用程序之一,并且可能是攻击者最有利可图的应用程序之一。犯罪分子可以如何处理存储在可能被认为是无害的家庭自动化设备(如 IP 连接的智能恒温器)中的信息?嗯,这些设备是为了学习你的习惯而设计的。它们旨在识别或“学习”您何时在家和何时外出,以便它们可以优化用于加热和冷却房屋的能量。你可以猜到我会用这个去哪里。他们会了解您的习惯并跟踪您的日常生活——对于那些想不请自来的人来说,这是一种耸人听闻的素材。

还记得三星智能电视的案例吗?为了能够响应语音命令,它会不断地“倾听”您的谈话,对其进行解释,然后甚至可能将其发送给“授权”的第三方。是的,我是认真的。早在 2013年,智能电视就被证明是可破解的(不是没有锁定安全性)。这是一个完美的例子,证明了对多个可访问性级别的需求。在智能电视案例中,只有一个用户帐户可能,并且该用户(即攻击者)可以访问设备上的任何内容。

通过默默无闻的安全

在过去的许多情况下,产品开发人员会依靠他们的设备太少且对黑客来说太无趣这一事实来尝试利用它们。换句话说,这些设备是模糊的——网络上表面上未知的节点。不幸的是,这种策略将不再有效。预计在未来五年内将有数十亿台设备连接到互联网(功能种类繁多),这些曾经“不感兴趣”的设备将成为非常诱人的攻击目标。

这个特定的网站专门用于展示连接到 Internet 的设备的存在,以及(如果可能)的类型。此类设备可能是网络摄像头、恒温器或任何其他联网的家庭自动化设备。通过这个网站,订阅者可以扫描和搜索一系列连接的设备。

现在,如果您在这种情况下依靠默默无闻来保护您,您可能不会担心更改默认 root 密码。此密码由供应商设置为始终同名,因为如果默认密码始终相同,则编写文档非常简单。对消费者来说是个坏主意。..

未更改的默认 root 密码是对黑客的公开邀请,可以登录并控制摄像头。他们有效地获得了通过遥控器查看和录制视频的完全控制权,而所有者完全不知道。

您可能读过一个关于婴儿和父母用作婴儿监视器的网络摄像头的故事。父亲走进他孩子的房间,听到一个男人通过摄像头的扬声器在催促孩子“醒来”。当父亲走进房间时,镜头摇动,另一端的人开始对他大喊粗俗,直到他拔掉了相机。

这只是为什么互联网安全在未来几年将变得非常重要的众多例子之一。它需要成为联网设备制造商的首要考虑因素。

这些设备中的大多数都运行 Linux,这是世界上用于运行嵌入式设备的最流行的操作系统。在本文中,我们将探讨在保护连接 Linux 的设备时需要考虑的几种技术。

在我们详细介绍之前,重要的是您必须深入了解安全风险,识别与此类业务攻击相关的潜在成本,并最终了解如何设计您的软件并适当地建立智能安全策略。应该说,额外的安全性确实是有代价的,通常是在性能损失、功能受限和额外的开发成本方面。

为了说明这些考虑,我希望您考虑在笔记本电脑或工作站上运行增强的安全软件的体验。我说的是防病毒软件、驱动器或文件系统加密以及访问控制软件。我们大多数人都欣赏这些程序提供的额外安全性。但是,我可能会偏离基础,我猜大多数读者有时实际上禁用了部分或全部,特别是如果您是开发人员并且正在尝试运行一些 CPU 密集型任务,安装可能无法使用的软件工具或实用程序被 IT “批准”,甚至运行执行大量文件系统访问的程序,例如从源代码构建 Linux 发行版。

保护连接的 Linux 设备

在这里,我将分享一些简单的方法,可以让您的嵌入式 Linux 产品更安全地抵御某些类型的威胁,所有这些都无需安装太多额外的软件或专有(商业)软件。

禁用并删除(或不安装)不必要的服务

Linux 的优点之一是在开发过程中利用网络服务调试和部署应用程序是多么容易。这些服务(TFTP、SFTP、SSH、NTP、gdbserver 等)也是攻击者目标最丰富的切入点。您应该只在生产期间在您的 Linux 平台中实现特定的必需服务,并使用诸如 nmap 之类的端口扫描器来检查开放端口(例如,侦听服务)。

使用防火墙

防火墙的基本原因是在内部和外部网络之间提供屏障。这是网关或路由器的关键功能,因为假设内部网络是开放且受信任的。Linux 有许多可用的防火墙解决方案。其中包括iptables/netfilter、Shorewall和UFW(简单防火墙)。有不同级别的功能、易用性和可配置性[5][6][7]。

安全

Grsecurity是 Linux 内核源代码的一组补丁,可提供增强的安全性。它为内核提供了基于角色的访问控制 (RBAC) 系统,因此进程(和用户)只能访问最少数量的文件,仅此而已。此外,它还提供了一个名为 PaX 的不同名称的捆绑补丁。PaX 提供了其他安全功能,可以通过创建执行空间保护来消除某些其他类型的攻击,例如缓冲区溢出。它还可以解决进程的空间布局随机化问题,以击败依赖于了解任务的默认虚拟内存组织(缓冲区溢出和其他攻击)的漏洞[8]。

RBAC

RBAC 的目标是最小化用户或进程对系统其余部分的特权。例如,许多连接互联网的基于 Linux 的系统可以实现许多互联网服务,包括 Web 服务器以及安全外壳 (SSH) 服务器。这些提供对设备的各种级别的访问,允许用户使用漂亮的用户界面(通过 Web 服务器)进行简单的配置更改,或者使用 SSH 进行更精细的更改。RBAC 可以根据用户的特定角色限制用户对沙箱的读取、写入和执行权限。这类似于基于 Linux/Unix 组限制对文件的访问,其中 RBAC 中的角色类似于组。

RBAC 如何真正帮助保护您的设备?对于初学者,您可以设置一个策略来限制所有用户对特定文件和系统服务的访问,甚至包括 root 用户。如果使用不同的漏洞利用来获得 root,则攻击者可能无法获得对系统的完全访问权限,这是他们成为 root 用户时通常期望的。

PaX 功能

PaX(grsecurity 的一部分)有助于抵御缓冲区溢出攻击。缓冲区溢出是指攻击者将数据注入进程的堆栈,从而允许他们更改程序流程并执行恶意代码。

许多现代处理器架构都实现了一个位 (NX),它将内存部分标记为可执行或不可执行。PaX 可以关闭所有数据段的执行权限,并可以禁用内存中所有可执行段的写权限。这样,即使攻击者能够实现缓冲区溢出,他们也无法将代码加载到指定的可执行内存中。

此外,PaX 在加载时随机化进程的地址空间。大多数进程将加载到虚拟内存的特定区域,加载库,并将堆栈放置在已知的内存位置(映射)中。这使得攻击者很容易运行缓冲区溢出,因为堆栈在同一个地方。通过随机化堆栈位置,除了内存的其他部分之外,它确实很难运行缓冲区溢出,因为(A)攻击者必须猜测堆栈的位置,或者(B)攻击者可能会覆盖一部分可执行代码并使进程自身崩溃。

Grsecurity 实现和配置

grsecurity 的大部分功能都不需要额外的配置,这是其他 Linux 安全增强(例如 SELinux)所不能做到的。

您可以通过下载内核版本的补丁来实现 grsecurity,然后使用补丁实用程序将补丁更改应用到内核源代码树。在编译内核之前,您需要配置 grsecurity 的构建选项。有很多选项,但您可能想要开始将 GRKERNSEC_CONFIG_AUTO 设置为 Y。这将为您的内核配置 grsecurity 提供最简单的方法,并且可能是一个很好的开发基准。

把它包起来(安全,连接时)

对于物联网产品,在设计之初就将安全性构建到产品中是绝对必要的。如果您不这样做,您的业务的关键部分就会受到攻击。真的就是这么简单。您构建的安全级别需要与与给定受损设备相关的风险相匹配。不过,请记住,您可以做一些相当简单的事情来大大提高保护级别。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    20149

    浏览量

    247232
  • 物联网
    +关注

    关注

    2939

    文章

    47324

    浏览量

    407981
  • Linux
    +关注

    关注

    88

    文章

    11628

    浏览量

    217990
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    Lora基站在联网应用的重要性

    联网设备的远程监测和控制,提供可靠的网络连接和管理,保障联网设备的数据
    发表于 12-03 07:09

    芯源半导体在联网设备中具体防护方案

    (一)数据传输安全防护方案​ 在联网设备与云端、其他设备进行数据传输时,芯源半导体安全芯片通过
    发表于 11-18 08:06

    请问如何协同工作来保障联网设备固件安全的?

    固件加密存储和安全启动与固件验证这两种固件安全防护手段,是如何协同工作来保障联网设备固件安全
    发表于 11-18 07:30

    联网设备面临的多种安全威胁中,数据传输安全威胁和设备身份安全威胁有何本质区别?

    联网设备面临的多种安全威胁中,数据传输安全威胁和设备身份
    发表于 11-18 06:41

    学习联网可以做什么工作?

    市场需求,制定产品规划。   系统集成工程师:负责将不同的联网设备和系统进行整合,实现设备之间的联通和数据共享。   安全工程师:负责保障
    发表于 10-11 16:40

    联网蓝牙模块有哪些优势?

    更加广泛地覆盖范围,从而提高了设备的可用性。安全性高:蓝牙模块采用了加密技术,可以有效地保障通信数据的安全性,防止数据被非法获取。这对于一些对安全性要求较高的
    发表于 06-28 21:49

    联网设备五大安全认证和标准

    在当今高度互联的世界中,联网 (IoT) 设备的信息安全能力达到前所未有的重要性。随着工业联网
    的头像 发表于 06-17 10:07 1564次阅读
    <b class='flag-5'>物</b><b class='flag-5'>联网</b><b class='flag-5'>设备</b>五大<b class='flag-5'>安全</b>认证和标准

    联网的应用范围有哪些?

    情况;网络通信技术保障数据在不同设备、系统间稳定传输,像 4G、5G 甚至未来的 6G 网络;大数据与云计算技术则对海量的感知数据进行存储、分析和处理,挖掘其中有价值的信息,为决策提供支持。 联网
    发表于 06-16 16:01

    联网未来发展趋势如何?

    技术将为人们带来更加安全、便捷和舒适的居住环境。 工业互联网:工业互联网联网行业中的热门领域。通过将传感器、
    发表于 06-09 15:25

    联网工程师为什么要学Linux

    依赖Linux安全启动机制。 三、职业需求与就业优势 1)岗位技能硬性要求 企业招聘中,约70%的联网开发岗位明确要求具备Linux
    发表于 05-26 10:32

    联网设备和应用的安全

    。 由于多种原因,安全联网和无线连接中变得越来越重要。考虑到这些风险,在设计过程中尽早优先考虑和确定安全要求非常重要。Nordic提供的安全
    的头像 发表于 03-20 10:49 620次阅读

    为什么选择蜂窝联网

    。虽然需要支付订阅费用,但却能保证广泛的覆盖范围、可扩展性、内置服务质量、可靠性和无懈可击的安全性。这样,您就可以专注于特定联网产品的开发,而无需部署和维护与在非授权频段运行的其他 LPWAN 技术相关
    发表于 03-17 11:42

    联网就业有哪些高薪岗位?

    对市场需求和技术趋势有敏锐洞察力。随着联网产品的增多,联网产品经理的需求也在不断增加。 联网
    发表于 01-10 16:47

    联网设备安全性:挑战和解决方案

    联网设备制造商和开发人员需要采用和实施与其特定设备最相关且最合适的标准和框架,并紧跟联网
    的头像 发表于 01-08 15:58 810次阅读
    <b class='flag-5'>物</b><b class='flag-5'>联网</b><b class='flag-5'>设备</b><b class='flag-5'>安全</b>性:挑战和解决方案

    联网(IoT)智能设备是什么?

    什么是iot智能设备联网(IoT)智能设备是指接入互联网并搭载了各种传感器和执行器,能够收集、交换、处理和执行操作的各种
    的头像 发表于 01-02 15:51 4660次阅读
    <b class='flag-5'>物</b><b class='flag-5'>联网</b>(IoT)智能<b class='flag-5'>设备</b>是什么?