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)。

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

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

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

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

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

    关注

    2939

    文章

    47315

    浏览量

    407630
  • 应用程序
    +关注

    关注

    38

    文章

    3342

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    嵌入式开发的关键点介绍

    嵌入式开发在现代科技中扮演着非常重要的角色。随着联网的发展,嵌入式系统的需求也越来越大。嵌入式开发不仅需要开发人员具备深入的硬件知识和编程
    发表于 11-13 08:12

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

    健康、智能制造等领域。以下是一些常见的职业方向: 联网工程师:从事物联网系统的设计、开发、测试、维护和升级等工作,包括传感器、无线通信、云计算、大数据等技术的应用。   嵌入式软件工
    发表于 10-11 16:40

    蓝牙技术如何成为工业联网领域的理想选择

    如果您是不熟悉工业联网(IIoT)的蓝牙™开发人员、营销人员或爱好者,本文将为您梳理一系列基础知识,带您快速了解工业
    的头像 发表于 07-31 10:31 748次阅读

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

    集成:蓝牙模块体积小巧,易于集成到各种设备中。同时,蓝牙模块也提供了丰富的API接口,使得开发人员能够更加容易地进行二次开发,从而缩短产品开发周期。支持多设备连接:蓝牙模块支持多设备连
    发表于 06-28 21:49

    联网未来发展趋势如何?

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

    Thingy:91 X 为开发人员提供了一个经过全球认证的、多传感器、电池供电的蜂窝联网原型平台

    Thingy:91 X 为开发人员提供了一个经过全球认证的、多传感器、电池供电的蜂窝联网原型平台 挪威奥斯陆 – 2024年12月10日 – 全球领先的低功耗无线连接解决方案提供商Nordic
    的头像 发表于 05-08 17:41 2202次阅读

    Java开发者必备的效率工具——Perforce JRebel是什么?为什么很多Java开发者在用?

    Perforce JRebel是一款Java开发效率工具,旨在帮助java开发人员更快地编写更好的应用程序。JRebel可即时重新加载对代码的修改,无需重启或重新部署应用程序,就能让
    的头像 发表于 04-27 13:44 638次阅读
    Java<b class='flag-5'>开发</b>者必备的效率工具——Perforce JRebel是什么?为什么很多Java<b class='flag-5'>开发</b>者在用?

    NanoEdge AI Studio 面向STM32开发人员机器学习(ML)技术

    NanoEdge™ AI Studio*(NanoEdgeAIStudio)是一种新型机器学习(ML)技术,可以让终端用户轻松享有真正的创新成果。只需几步,开发人员便可基于最少量的数据为其项目创建
    的头像 发表于 04-22 11:09 980次阅读
    NanoEdge AI Studio 面向STM32<b class='flag-5'>开发人员</b>机器学习(ML)技术

    基于RV1126开发板的人员检测算法开发

    在RV1126上开发人员检测AI算法组件
    的头像 发表于 04-14 13:56 626次阅读
    基于RV1126<b class='flag-5'>开发</b>板的<b class='flag-5'>人员</b>检测算法<b class='flag-5'>开发</b>

    如何在 Raspberry Pi AI Camera 上构建为开发人员提供实时的智能应用程序

    在这篇特邀文章中,我们的合作伙伴索尼公司的雷蒙娜-雷纳(RamonaRayner)将向您展示如何快速探索不同的模型和人工智能功能,以及如何在RaspberryPi人工智能相机的基础上轻松构建应用程序
    的头像 发表于 03-25 09:37 608次阅读
    如何在 Raspberry Pi AI Camera 上构建为<b class='flag-5'>开发人员</b>提供实时的智能<b class='flag-5'>应用程序</b>!

    Nordic NRF54无线SOC: 助力电动出行无限可能.

    或其他问题。通过消除潜在的技术问题可以提高充电插座的可用性,为消费者带来更多益处。 通过无缝集成低功耗蓝牙、Wi-Fi和蜂窝联网开发人员可以创建创新的充电解决方案,满足电动汽车行业不断发展的需求
    发表于 03-24 11:00

    MQTT联网平台有哪些?有哪些功能?

    (IoT)。关于MQTT联网平台及其功能,可以归纳如下: MQTT联网平台 MQTT联网
    的头像 发表于 03-15 14:23 1216次阅读
    MQTT<b class='flag-5'>物</b><b class='flag-5'>联网</b>平台有哪些?有哪些功能?

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

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

    Elektrobit推出EB corbos Link通信解决方案

    EB corbos Link将Android应用程序与汽车ECU连接,帮助开发人员专注于Android生态系统的开发,同时充分利用AUTOSAR提供的强大服务、方法和事件支持。
    的头像 发表于 12-16 09:56 973次阅读

    Nordic推出最新联网原型验证平台Thingy:91 X

    SSID定位、DECT NR+以及GNSS等多种应用而设计,旨在简化开发人员联网原型开发流程,加速蜂窝
    的头像 发表于 12-11 10:13 2505次阅读