嵌入式设备的功能安全和信息安全?

在现代社会中,嵌入式设备已经无处不在,从我们日常生活中的智能家居,到工业控制、医疗设备等各个行业,嵌入式设备的应用层出不穷。

那么,嵌入式设备的功能安全和信息安全究竟有什么不同,又如何保证它们在实际应用中的实现呢?

什么是功能安全?

功能安全主要侧重于确保设备在遭遇故障或异常情况下仍能以安全的方式运行,防止对环境和人员造成危害。它注重的是系统的容错能力与安全防护,通常通过冗余设计、故障检测与自恢复机制来实现。

在一些关键领域,如汽车、工业控制和医疗设备,功能安全至关重要。例如,在汽车领域,如果车载嵌入式系统发生故障,可能会导致制动系统失效,造成严重的交通事故。

功能安全其实比较好理解,功能安全的核心在于确保系统在预期的运行环境中,即使遇到故障也能保持安全状态或进入安全的失效模式。这不仅涉及到硬件的设计,还包括软件的开发、测试和验证。为了实现功能安全,工程师们需要进行全面的风险评估,识别潜在的危险场景,并采取相应的措施来降低风险,确保系统的可靠性和安全性。

什么是信息安全

与功能安全关注设备在发生故障时如何确保系统的正确性不同,信息安全则侧重于保护设备在操作过程中处理的数据,防止数据泄露、篡改和非法访问。信息安全不仅关系到数据的保密性,还涉及数据的完整性和可用性。

在嵌入式设备中,信息安全是特别重要的,因为这些设备往往需要连接到网络,容易成为黑客攻击的目标。例如,智能家居设备可能会泄露用户的私人信息,工业控制设备可能被黑客入侵,导致生产线停运或设备损坏。

时事分享: 2015年,某款汽车发生了一起信息安全漏洞召回事件,标志着汽车信息安全的一个重要转折点。两名白帽黑客通过无线通信成功连接到该车的车联网系统,进而攻破了与车联网系统连接的CAN总线网络,获得了向该系统发送指令的权限。

这使他们能够控制汽车的发动机、变速箱、刹车和转向等关键系统。由于此次入侵并未通过OBD等物理接口进行,而是通过无线连接进行的,这一事件引发了社会对汽车信息安全的广泛关注。

心血漏洞事件还原

心血漏洞于 2014 年 4 月首次向公众披露,号称本世纪最严重的安全漏洞事件,涉及全球三分之二的网站。事情的起因在于被各大网站广泛使用的开源网络通信加密协议 OpenSSL。

其原理是当使用基于 OpenSSL 通信的双方建立安全连接后,客户端需要不断的发送心跳信息(如固定长度的字符串)到服务器,服务器接收后返回该固定长度的字符串, 从而确认服务器是可用的。

客户端向服务器发送的心跳信息包含了数据长度和待传输数据信息,理论上服务器端 OpenSSL 应该回传与该数据长度一致的信息。然而由于 OpenSSL 代码的缺陷(漏洞),客户端可以从服务器获取远超其权限内容的数据信息,其中有可能就包含如信用卡账号和密码等敏感信息。

我们用一段简化程序(注1)来模拟这个过程,在以下程序中代码 1 处构建了客户端发送的心跳信息,但是数据长度信息(100)大于实际有效数据(4,即‘data’),代码 2 处和 OpenSSL 协议类似使用 memcpy 函数将与数据长度信息一致的数据写入回传数据包中。


程序运行结果如下,我们看到回传的数据包含了心跳包数据之外的信息,成为安全漏洞的来源。

来源:MATLAB 版权归原作者所有,如有侵权,请联系删除。

常见的功能安全与信息安全规范

在现代工业和信息技术领域,功能安全与信息安全变得至关重要。为了确保系统和设备的安全性和可靠性,国际上制定了一系列规范和标准。

功能安全规范

功能安全主要关注系统或设备在发生故障时仍能保持安全状态的能力。常见的功能安全规范包括:

  • ISO 26262:针对汽车行业的功能安全标准,涵盖了从概念设计到生产、操作、服务和退役的整个生命周期。
  • IEC 61508:适用于电气/电子/可编程电子安全相关系统的国际标准,定义了安全完整性等级(SIL),并提供了系统生命周期内的安全要求。
  • EN 50126/8/9:针对铁路应用的功能安全标准,涵盖了铁路信号、控制和通信系统的设计、实施和验证。

信息安全规范

信息安全则侧重于保护信息的机密性、完整性和可用性。常见的信息安全规范包括:

  • ISO/IEC 27001:国际信息安全管理体系标准,提供了建立、实施、维护和持续改进信息安全管理体系的要求。
  • ISO/IEC 27002:为ISO/IEC 27001提供了具体的信息安全控制措施和指南,帮助组织选择适当的安全控制措施。
  • GDPR(通用数据保护条例):欧盟制定的数据保护法规,旨在保护个人数据的隐私和安全,适用于所有处理欧盟居民个人数据的组织。
  • NIST SP 800系列:美国国家标准与技术研究院发布的安全标准和指南,涵盖了信息安全的多个方面,如风险管理、加密技术等。

这些规范和标准为不同行业的功能安全和信息安全提供了指导,确保系统和设备在设计、开发、部署和运行过程中能够满足相应的安全要求。

软件工程师必看

在嵌入式系统的开发中,功能安全和信息安全是密切相关的,需要从设计阶段就考虑到。应确保安全性融入系统的整体设计,遵循行业标准,进行全面的风险评估。

功能安全要求对系统进行冗余设计、故障检测和自恢复机制,而信息安全则需要加密、认证和身份验证等措施来保护数据的机密性和完整性。在开发过程中,要进行充分的安全性验证和测试,包括功能安全的验证和信息安全的渗透测试,及时发现和修复潜在的漏洞。

与此同时,安全设计需要平衡性能与安全性,避免因过度安全措施导致系统性能受损。此外,随着新技术和攻击方式的出现,保持对安全领域的关注并及时更新防护策略是至关重要的。团队成员也应定期接受培训,确保对安全设计有充分的理解,进行有效的协作,确保设计的安全性贯穿整个系统生命周期。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/31451.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

爬虫案例七Python协程爬取视频

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、Python协程爬取视频 前言 提示:这里可以添加本文要记录的大概内容: 爬虫案例七协程爬取视频 提示:以下是本篇文章正文…

【C++指南】一文总结C++类和对象【中】

🌟 各位看官好,我是egoist2023! 🌍 种一棵树最好是十年前,其次是现在! 🚀 今天来学习C类和对象的语法知识。注意:在本章节中,小编会以Date类举例 👍 如果觉得…

Python 入

Python 入侵交换机 随着网络安全威胁不断增加,对于网络设备的安全防护变得愈发重要。而交换机作为网络中重要的设备之一,也需要加强安全保护。本文将介绍如何利用Python来入侵交换机,并对其进行漏洞扫描和安全检测。 1. Python 入侵交换机原…

『PostgreSQL』PGSQL备份与还原实操指南

📣读完这篇文章里你能收获到 了解逻辑备份与物理备份的区别及适用场景🔍。掌握全库、指定库、指定表备份还原的命令及参数📝。学会如何根据业务需求选择合适的备份策略📊。熟悉常见备份还原问题的排查与解决方法🔧。 …

《Python实战进阶》No20: 网络爬虫开发:Scrapy框架详解

No20: 网络爬虫开发:Scrapy框架详解 摘要 本文深入解析Scrapy核心架构,通过中间件链式处理、布隆过滤器增量爬取、Splash动态渲染、分布式指纹策略四大核心技术,结合政府数据爬取与动态API逆向工程实战案例,构建企业级爬虫系统。…

Spring Boot整合WebSocket

目录 ?引言 1.WebSocket 基础知识 ?1.1 什么是 WebSocket? ?1.2 WebSocket 的应用场景 ?2.Spring Boot WebSocket 整合步骤 2.1 创建 Spring Boot 项目 2.2 添加 Maven 依赖 2.3 配置 WebSocket 2.4 创建 WebSocket 控制器 2.5 创建前端页面 引言 在…

《OkHttp:工作原理 拦截器链深度解析》

目录 一、OKHttp 的基本使用 1. 添加依赖 2. 发起 HTTP 请求 3. 拦截器(Interceptor) 4. 高级配置 二、OKHttp 核心原理 1. 责任链模式(Interceptor Chain) 2. 连接池(ConnectionPool) 3. 请求调度…

【前端】BOM DOM

两天更新完毕,建议关注收藏点赞 友情链接: HTML&CSS&LESS&Bootstrap&Emmet Axios & AJAX & Fetch BOM DOM 待整理 js2 Web API 是浏览器提供的一套操作浏览器功能和页面元素的 API ( BOM 和 DOM)。官方文档点击跳转 目录 BOMDOM…

产品需求分析-概览

产品需求分析-概览 产品需求分析(上)-理论流程 需求产生(来源) 公司内部(老板、其他部门同事)产品经理自己(策划、挖掘)外部(用户、客户、伙伴) 需求分类 功能类数据类运营类体验类设计类 需求决策 战略定位产品定位用户需求 需求分位:四象限定位法 重要又…

小程序事件系统 —— 32 事件系统 - 事件分类以及阻止事件冒泡

在微信小程序中,事件分为 冒泡事件 和 非冒泡事件 : 冒泡事件:当一个组件的事件被触发后,该事件会向父节点传递;(如果父节点中也绑定了一个事件,父节点事件也会被触发,也就是说子组…

spring6概述

spring6 1、概述 1.1、Spring是什么?1.2、Spring 的狭义和广义1.3、Spring Framework特点1.4、Spring模块组成1.5、Spring6特点 1.5.1、版本要求 2.2、构建模块2.3、程序开发 2.3.1、引入依赖2.3.3、创建配置文件2.3.4、创建测试类测试2.3.5、运行测试程序 2.4、程序…

【Linux docker】关于docker启动出错的解决方法。

无论遇到什么docker启动不了的问题 就是 查看docker状态sytemctl status docker查看docker日志sudo journalctl -u docker.service查看docker三个配置文件(可能是配置的时候格式错误):/etc/docker/daemon.json(如果存在&#xf…

CTF网络安全题库 CTF网络安全大赛答案

此题解仅为部分题解,包括: 【RE】:①Reverse_Checkin ②SimplePE ③EzGame 【Web】①f12 ②ezrunner 【Crypto】①MD5 ②password ③看我回旋踢 ④摩丝 【Misc】①爆爆爆爆 ②凯撒大帝的三个秘密 ③你才是职业选手 一、 Re ① Reverse Chec…

1.1 双指针专题:移动零(easy)

一、题目链接 283. 移动零 二、题目描述 给定⼀个数组 nums ,编写⼀个函数将所有 0 移动到数组的末尾,同时保持⾮零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进⾏操作。 ⽰例 1: 输⼊: nums [0,1,0,3,12] 输出: […

STM32如何精准控制步进电机?

在工业自动化、机器人控制等场合,步进电机以其高精度、开环控制的特性得到了广泛应用。而在嵌入式系统中,使用STM32进行步进电机的精确控制,已成为开发者的首选方案之一。 本文将从嵌入式开发者的角度,深入探讨如何基于STM32 MCU…

Android Studio右上角Gradle 的Task展示不全

Android Studio 版本如下:Android Studio lguana|2023.21, 发现Gradle 的Tasks阉割严重,如下图,只显示一个other 解决方法如下:**Setting>Experimental>勾选Configure all gradle tasks during Gradle Sync(this can make…

华为hcia——Datacom实验指南——三层交换和ARP的工作原理

什么是三层交换 三层交换是指连接在同一台三层交换机上,不同vlan用户,不同网段ip,通过vlanif接口进行数据交换。 什么是ARP协议 通过网络层的ip地址解析成数据链路层的mac地址。 说白了就是通过目标ip地址去问他对应的mac地址是多少。 A…

【互联网性能指标】QPS/TPS/PV/UV/IP/GMV/DAU/MAU/RPS

📕我是廖志伟,一名Java开发工程师、《Java项目实战——深入理解大型互联网企业通用技术》(基础篇)、(进阶篇)、(架构篇)清华大学出版社签约作家、Java领域优质创作者、CSDN博客专家、…

Spring(七)AOP-代理模式

目录 代理模式 一 静态代理 一、核心作用 二、使用场景 二 动态代理 一、核心作用 二、使用场景 具体实现:(初始) 具体实现:(改进) 一、核心业务逻辑 1. 接口 MathCalculator 2. 实现类 MathCa…

AI革命编程学习:Python语法速通与高阶突破全实战(第二部分:AI辅助调试与高阶编程)

只要编程,代码错误和有问题肯定是难免,更何况还是全AI生成代码,是否符合我们的要求与预期,以及代码是否有逻辑错误,是否有代码错误。下面我们继续这一部分,代码调试、代码修复等基本过程。 一、代码调试 …