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

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

3天内不再提示

物联网开发人员使用应用程序更加安全的方法分享

h1654155282.3538 来源:陈翠 2019-08-18 10:49 次阅读

物联网开发人员使用应用程序更加安全的方法分享

物联网发展到今天已经日前成熟,2017年有84亿台物联网设备,Gartner公司预计到2020年将部署204亿台物联网设备。随着这一增长,物联网安全攻击的数量和复杂性大幅增加,开发人员不仅需要将安全作为优先事项,而且还需要将其作为首要事项。

在物联网的应用初期,物联网应用程序开发人员可以不必考虑安全性,因为他们构建了原型和最小可行的产品,旨在展示物联网可用于改变人们工作、娱乐和生活方式的不同方式。

但物联网发展到今天已经日前成熟,2017年有84亿台物联网设备,Gartner公司预计到2020年将部署204亿台物联网设备。随着这一增长,物联网安全攻击的数量和复杂性大幅增加,开发人员不仅需要将安全作为优先事项,而且还需要将其作为首要事项。

正如Trendnet公司的SecurView摄像头、St.Jude公司的心脏监测设备和JeepCherokee物联网遭遇黑客攻击证明的那样,当安全性不是首要任务时,企业遭遇的物联网攻击可能会导致财务和声誉的重大损失。

虽然不可能使物联网应用程序(或任何类型的软件)100%安全,但物联网应用程序开发人员可以采用几种最佳实践来加强其物联网应用程序的安全性。这些最佳实践包括:

(1)在构建应用程序时遵循一组经过批准的加密标准。

(2)使用静态代码分析程序分析应用程序代码,以识别可能导致安全漏洞的常见编码错误。

(3)制定漏洞管理战略,在计划的、持续的基础上识别和修复物联网应用程序中的已知漏洞。

这三个最佳实践并不能使物联网应用程序完全免受恶意参与者的攻击。但是,它们可以显著减少物联网应用程序的漏洞和攻击面,从而降低开发人员应用程序被破坏的可能性,减少客户投诉和负面新闻。

遵循已批准的加密标准

大多数开发人员都明白,如果他们希望保持物联网数据的安全,他们应该对这些数据进行加密,特别是在数据从设备传输到云平台时,反之亦然。然而,面对严格的开发期限,以及需要充分利用其物联网设备的有限带宽和处理能力,一些开发人员选择不加密他们的数据或使用弱加密算法,这些加密算法承诺比他们更快或更轻,但没有提供适当的安全级别。

经验表明,采用加密快捷方式可能导致客户数据被盗、应用程序被禁用或出现其他问题。出于这个原因,开发人员需要与他们的安全团队密切合作,按照国际认可的专家(如美国国家标准与技术研究院(NIST))批准的标准和指南,适当地加密物联网应用数据。

选择使用此类经批准的标准不会对物联网应用程序开发时间、性能或功能产生重大影响。美国国家标准与技术研究院(NIST)为开发人员提供了如何简化加密标准与应用程序集成的指导方针。它们还提供了许多不同的标准供选择,因此开发人员可以找到一种可以为应用程序提供适当级别的安全性,而不会牺牲太多的性能或功能。这确实需要一些额外的工作和努力,但是如果物联网开发商想把安全作为首要任务,他们需要确保遵循批准的加密标准。

使用静态代码分析程序

许多开发人员熟悉静态代码分析程序及其发现常见编码错误的能力,这些错误可能导致影响软件质量的错误。但是,这些程序还可以识别不安全的编码实践,例如使用不正确终止的字符串,释放内存的指针和允许超出缓冲区末尾的缓冲区索引。这些常见的编码错误会造成安全漏洞,恶意参与者可以在其他功能应用程序中利用这些漏洞。

有多种静态代码分析工具可供使用,其中包括专有的和开放源码的工具,开发人员可以使用这些工具来提醒他们可能会造成安全漏洞的编码错误。开发人员应该研究哪些程序更好地支持他们的安全性和其他代码分析需求,然后确保在整个应用程序开发过程中,特别是在部署应用程序之前,他们使用这些静态代码分析程序来发现代码错误,这些错误将会导致出现安全漏洞。

同样,许多开发人员可能会尝试跳过这一步骤,因为程序所揭示的问题可能会阻止他们尽可能快地部署和商业化其他功能性应用程序。但是,正如上面提到的黑客采用物联网应用程序的例子所证明的那样,安全性的偷工减料通常会导致严重的问题。如果开发人员致力于向客户交付具有强大安全性的物联网应用程序,他们需要承诺使用静态代码分析程序来修复可能使其应用程序易受网络攻击的编码错误。

监视和修复已知的漏洞

例如媒体非常关注的所谓的“零日”漏洞,而这些漏洞是软件供应商事先不知道的。然而,对于大多数攻击者来说,其结果是,在物联网应用程序中使用的数百万个软件组件中存在的已知漏洞数量不断增加,这些软件组件未被修复,这可能是因为组件的用户不知道该漏洞,也可能是因为他们没有采取措施更新其应用程序以修复漏洞。

所有物联网应用程序开发人员都应了解其应用程序可能因将第三方软件组件纳入到其应用程序中而导致的已知漏洞,无论是开源组件(如Linux操作系统和相关软件)还是专有组件。但是,了解物联网应用程序的设备固件、操作系统和其他第三方软件组件中的所有已知漏洞的最新信息并非易事。构建这些软件组件的企业、政府机构和其他监管机构通常每月在这些类型的软件组件中识别出多达1,000个不同的漏洞。

幸运的是,有些资源可以帮助开发人员及时了解新的漏洞。例如,美国国家漏洞数据库(NVD)是由美国国家标准与技术研究院(NIST)运营的公共资源,它对所有类型的软件组件(包括专有软件和开源软件)中的已知漏洞进行分类。为了确保他们的物联网应用程序清除或没有任何已知的漏洞,物联网开发人员可以为其物联网应用程序编制一份安全物料清单(BOM),列出应用程序中使用的所有软件组件和版本,然后监视新的美国国家漏洞数据库(NVD)这些组件的已知漏洞。或者,有许多专有和开源工具利用免费API查询美国国家漏洞数据库(NVD),然后评估其组件的代码库或识别暴露服务的版本(如DNS,HTTP/S,网络接口上的NTP、SSH)。

但是,仅仅了解已知漏洞并不能解决这些漏洞。这就是开发人员不仅要持续检查新的已知漏洞的原因,还要制定计划,通过安全更新的补丁定期修复新的已知漏洞。在理想情况下,这样的计划应允许远程(无线通信)和自动执行这些更新。如今,许多消费者物联网应用程序已经包含一个启用远程自动更新的选项。许多开发人员构建的商业物联网应用程序有时需要更多的协调来实现这种远程的自动更新,但这应该只是目标。在任何情况下,即使无法远程或自动进行更新,物联网开发商也必须制定某种计划,及时部署针对其应用程序中已知漏洞的安全更新。

强大的安全性将使物联网的未来增长成为可能

物联网正处于一个重要的转折点。市场继续快速扩张,每天都在推出激动人心的农业、供应链、工业、公共安全、消费者和其他物联网应用。然而,其他引人注目的物联网应用程序漏洞可能会威胁到企业和消费者在物联网中的信任度,尤其是当它越来越多地用于收集敏感数据或完成关键任务时。

为了加强对物联网的信任,开发人员需要致力于将物联网安全作为首要任务。开发人员需要实施物联网安全最佳实践,其中包括采用经过批准的加密标准,使用静态代码分析程序发现可能产生安全漏洞的编码错误,以及定期识别和修复其应用程序中已知漏洞的策略。如果物联网开发人员通过实施这些物联网安全最佳实践,将安全性作为真正的首要任务,那么企业对物联网的信任将会提高,他们的业务也会随之增长。

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

    关注

    2903

    文章

    44262

    浏览量

    371221
  • 应用程序
    +关注

    关注

    37

    文章

    3240

    浏览量

    57600
收藏 人收藏

    评论

    相关推荐

    【星闪派联网开发套件体验连载】智能交通灯

    搭,显示传感器信息,红绿灯状态等 模块化硬件,组装方便快捷,对软件开发人员十分友好 本项目使用星闪开发板+底板+红绿灯模块+OLED模块组合 软件开发环境搭建: 参考海思社区gitee网页的
    发表于 10-05 13:00

    Node-Red可视化编程:简化开发的创新之选

    Node-Red 是构建物联网 (IOT Internet of Things) 应用程序的一个强大工具,其重点是简化代码块的“连接 ” 以执行任务。它使用可视化编程方法,允许开发人员
    的头像 发表于 09-21 10:37 237次阅读
    Node-Red可视化编程:简化<b class='flag-5'>开发</b>的创新之选

    C2000 ePWM开发人员指南

    电子发烧友网站提供《C2000 ePWM开发人员指南.pdf》资料免费下载
    发表于 09-07 09:45 0次下载
    C2000 ePWM<b class='flag-5'>开发人员</b>指南

    【xG24 Matter开发套件试用体验】初识xG24 Matter开发套件

    和 Qwiic® 连接器对硬件附加板提供支持。硬件附加支持允许开发人员使用来自 mikroE、Sparkfun、AdaFruit 和 Seeed Studios 的现成板进行各种组合,来创建和原型化应用程序
    发表于 07-11 23:31

    Myriota 推出全球部署最快的卫星联网平台!天基联网创新提速

    ,这款新硬件平台设计了先进的功能,包括低功耗蓝牙和多种传感器功能,并由Myriota著名的低功耗卫星连接提供支持。利用FlexSense平台,开发人员能将基于传感
    的头像 发表于 05-27 08:04 547次阅读
    Myriota 推出全球部署最快的卫星<b class='flag-5'>物</b><b class='flag-5'>联网</b>平台!天基<b class='flag-5'>物</b><b class='flag-5'>联网</b>创新提速

    村田与Infineon公司合作开发联网设备新解决方案

    支持更加简单高效的开发活动 株式会社村田制作所与Infineon Technologies AG (总公司位于德国,以下简称“Infineon公司”)展开业务合作,提供面向联网设备
    的头像 发表于 05-15 13:21 315次阅读
    村田与Infineon公司合作<b class='flag-5'>开发</b>物<b class='flag-5'>联网</b>设备新解决方案

    三星停止自动驾驶研究,开发人员转到机器人领域

    近日,三星电子宣布了一项重要的研发战略调整。据业内人士透露,三星先进技术研究院(SAIT)已决定停止自动驾驶汽车的研究,并将这一领域的开发人员转移到机器人领域。
    的头像 发表于 05-13 09:21 418次阅读

    基于全志T113-i的Docker容器实现方案

    通过使用Docker,开发人员可以更容易地构建、交付和运行应用程序,同时确保应用程序的一致性及可移植性。它也使得应用程序的部署更加灵活、高效
    发表于 04-19 09:45 817次阅读
    基于全志T113-i的Docker容器实现方案

    Docker容器技术的安装和使用

    通过Docker,开发人员可以更容易地构建、交付和运行应用程序,同时确保应用程序的一致性和可移植性。它也使得应用程序的部署更加灵活和高效,因
    发表于 04-16 11:24 289次阅读
    Docker容器技术的安装和使用

    MG24无线SoC与Wirepas Mesh设备天作之合助力联网开发

    开发人员能够创建可以在单个芯片上处理Wirepas Mesh协议栈和应用程序代码的网状网络节点,同时提供低功耗、高性能和强大的安全性。
    的头像 发表于 03-08 14:04 740次阅读

    我用ST这个联网节点开发板连接到云快速完成了设计

    随着与联网 (IoT) 连接的设备越来越普遍,从零开始的开发人员意识到,这些产品的开发并不像他们所期望的那样简单,尤其是在时间紧迫和成本有限的情况下。从选择一个可信的、
    的头像 发表于 12-13 20:15 1005次阅读
    我用ST这个<b class='flag-5'>物</b><b class='flag-5'>联网</b>节点<b class='flag-5'>开发</b>板连接到云快速完成了设计

    USB调试模式是什么意思?USB调试模式有什么用?

    上进行诸如安装应用程序、查看设备日志、调试应用程序等操作。 USB调试模式有以下几个主要用途: 1. 应用程序开发开发人员可以使用USB调
    的头像 发表于 12-11 11:06 1.1w次阅读

    代码加密与数据加密 代码加密技术和方法

    今天,开发人员和组织面临着恶意行为者窃取其软件程序的持续威胁。不仅如此;今天,威胁行为者可以使用应用程序的源代码使其不可用
    的头像 发表于 12-09 09:29 1273次阅读

    介绍一款IDEA插件:Apipost-Helper-2.0

    IDEA是一款功能强大的集成开发环境(IDE)插件,它可以帮助开发人员更加高效地编写、调试和部署软件应用程序
    的头像 发表于 12-06 10:47 742次阅读
    介绍一款IDEA插件:Apipost-Helper-2.0

    开发java应用程序的基本步骤是

    ava是一种面向对象的编程语言,广泛用于开发各种类型的应用程序。在开发Java应用程序时,有一些基本步骤需要遵循,以确保应用程序的正确性和可
    的头像 发表于 11-28 16:52 1524次阅读