IoT产品安全基线(二)通讯安全

2023-10-14 10:20

本文主要是介绍IoT产品安全基线(二)通讯安全,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

传送门

IoT产品安全基线
IoT产品安全基线(一)硬件安全

前言

IoT设备与嵌入式设备一个大的区别是IoT设备自有Internet属性,通常IoT设备分为云、管、端三部分。管道即为通讯。因此,通信是IoT系统架构的重要组成部分,是万物互联的基础。
在这里插入图片描述
如上图,IoT设备和设别、设备与网关、网关与云等通信技术的安全性是我们基线需要重点关注的,欢迎交流QQqun:205988195

1、通用通信安全

1.1 完整性校验

基线要求

通讯管道中的数据传输应进行完整性校验。对管理数据,鉴别信息,敏感信息,业务数据,控制命令等重要数据的传输做完整性保护,可综合使用校验码,消息摘要,数字签名等。防止攻击者对数据的篡改,进行非法越权与控制。

1.2 通信信道加密

基线要求

应对IoT系统中的通讯信道进行加密,并在会话结束时及时关闭会话。通信信道包括:设备与设备,设备与网关,设备与云服务,网关与云服务之间的连接管道。

1.3 密匙硬编码

基线要求

设备不应将用于传输加密或鉴权的密钥硬编码在程序代码中,应采用一机一密(PSK)或通过 PSK 密钥导出等方式生成密钥。

知识库

PSK(pre-shared key)即预共享密钥。参与通讯双方事先分享的(预共享密钥),也可能是在通讯过程中透过密钥合意协议(key-agreement protocol),由双方共同建立的,例如使用公开密钥加密或是用对称密钥加密。

1.4 通信双向认证

基线要求

通信时应在数据传输之前进行双向认证,验证设备与服务器双方真实身份是否合法,检查控制权限是否与身份匹配,以防止越权(水平越权和垂直越权)或非授权控制。

知识库

  • 水平越权
    获取同级别权限的用户的资源。
  • 垂直越权
    获取更高级别权限用户的资源。

1.5 重放攻击

基线要求

通讯方案中应防止攻击者通过嗅探或网络抓包等方式截获通信数据进行重放攻击,以达到攻击目的。防重放方案可使用滚动码、计数器或者时间戳校验等机制,当请求操作验证合法后,设备才执行该操作指令。

知识库

参考方案

  • 时间戳校验
    在通讯数据中加入时间戳,宜将时间戳和其他参数数据一起进行数字签名或对时间戳进行加密,设置时间戳的有效时间。当服务端收到通讯数据后,进行时间戳的有效性判断,校验通过则执行,否则拒绝通讯的请求。
  • nonce
    nonce表示仅一次有效的随机字符串,每次通讯请求时,该参数保证重复。服务端将每次通讯请求中的nonce参数保存在一个集合中。在收到请求时,首先判断nonce参数是否合法,其次判断nonce参数是否已经在集合中,如果存在则为非法重放通讯请求。
  • 计时器
    在通讯请求中加入一个计数器,为防止攻击模拟计数器,可对计数器进行加密处理。当服务端接收到通讯请求时,先对计数器进行研判。

1.6 非授权自定义通信协议

基线要求

设备使用的通信协议应经过安全评估,不应使用非授权通信协议,以防止非授权协议存在安全漏洞或后门影响设备通信安全。

2 以太网

2.1通讯信道加密

基线要求

应使用HTTPS通讯协议,避免使用HTTP,MQTT等明文传输协议而导致信息泄露或被篡改的风险。

知识库

2.2 敏感信息传输加密

基线要求

设备在传输敏感信息时在使用HTTPS传输协议之上,应使用安全的加密算法对敏感信息进行额外的加密。以避免抓包类工具截获敏感信息明文信息。

2.3 HTTPS证书校验

在使用HTTPS协议通讯时,应进行严格的双向证书校验,不能忽略检查。

  • linux
    应严格验证服务端证书合法性,不应使用参数跳过证书验证或忽略证书验证错误
命令参数
curl不应使用 -k 参数
wget不应使用 --no-check-certificate 参数
libcurl应将 CURLOPT_SSL_VERIFYPEER 和 CURLOPT_SSL_VERIFYHOST 设置为 True
  • Android
    应使用 SSL 加密通信服务应严格校验服务端和客户端证书,不应信任任意证书,不应忽略异常事件(如 return 空或者 null);如需自定义 SSLx509 TrustManager,重写 checkServerTrusted 方法,方法内必须严格判断服务端的证书校验,以防止通信内容被劫持导致通信数据泄漏或被篡改。

3 低功耗蓝牙(BLE)

BLE ( Bluetooth Low Energy )即低功耗蓝牙,也就是我们经常说的蓝牙4.0。和传统蓝牙类似,是一种近距离进行设备间无线连接和通讯的协议,传输距离达 100 米。Google在android 4.3(API Level 18)的android版本中引入了低功耗蓝牙BLE核心API。

3.1 蓝牙匹对与绑定

基线要求

有物理按键的蓝牙设备应通过物理按键进行绑定确认或开启绑定窗口,以避免设备重复绑定或在用户不知情的情况下被他人非法绑定的风险。

知识库

  • 配对
    配对是用来与连接设备,创建加密连接的过程。在蓝牙低功耗中,有两种主要的配对模型:LE Legacy和LE Secure Connection。
    其过程包括:配对能力交换、设备认证、密钥(固定128bit)生成、连接加密以及机密信息分布等。配对的目的有三个:加密连接、认证设备、生成密钥。
  • 绑定
    绑定是存储密钥的过程,这里说的密钥是在配对过程生成的。绑定的目的是在以后的连接过程能迅速恢复加密。

3.2 蓝牙的广播安全

基线要求

蓝牙广播协(Beacon)议应做客制化的定义和加密。广播内容的接收方解析协议的代码需进行代码保护,防止协议逻辑被破解。

知识库

  • Beacon
    1、是建立在低功耗蓝牙协议基础上的一种广播协议,其工作方式是,配备有低功耗蓝牙(BLE)通信功能的设备使用BLE技术向周围发送自己特有的ID,接收到该ID的应用软件会根据该ID采取一些行动。
    2、Beacon 会每隔一定的时间广播一个数据包到周围,作为独立的蓝牙主机(比如手机等)在执行扫描动作时,会间隔地接收到 Beacon 广播出来的数据包。
  • Android Beancon协议保护
    1、协议解密、解析程序放到natie层
    2、java层代码混淆
    3、Native层代码混淆加固。

3.3 蓝牙广播防追踪机制

基线要求

设备宜使用随机蓝牙 MAC 地址,并对蓝牙广播内容进行加密;
如需通过 beacon 信标广播可识别身份的信息,应定时变换设备蓝牙 MAC 地址,以防止他人通过部署足够多的探测设备对广播内容进行析,并跟踪设备的移动轨迹

3.4 蓝牙控制指令合法性校验

基线要求

对于支持蓝牙的设备,应每次登录协商会话密钥,设备与控制应用间应使用会话密钥加密传输控制指令。

3.5 蓝牙 mesh 协议安全

基线要求

蓝牙 mesh 设备应使用安全的通信协议与 mesh 设备、网关及手机进行双向认证,对传输的敏感数据使用会话密钥加密。

知识库

Mesh网状网络是一项独立研发的网络技术,它能够将蓝牙设备作为信号中继站,将数据覆盖到非常大的物理区域,兼容蓝牙4和5系列的协议。传统的蓝牙连接是通过一台设备到另一台设备的「配对」实现的,建立「一对一」或「一对多」的微型网络关系。而Mesh网络能够使设备实现「多对多」的关系。

3.6 蓝牙协议版本安全

基线要求

低功耗蓝牙 BLE 设备(如鼠标、音箱)采用蓝牙链接层加密时应使用4.2 及以上低功耗蓝牙协议版本,以防止设备在绑定阶段泄露蓝牙连接层密钥 (LTK),从而导致隐私泄露或设备伪造的风险。

知识库

自1999年第一个蓝牙版本诞生,蓝牙技术已经发展了20余年,版本从蓝牙V1.0到蓝牙V5.3。
在这里插入图片描述
与安全相关版本:

  • 蓝牙4.0
    4.0以后的蓝牙版本属于低功耗蓝牙。
    实现极致的低功耗;低成本、低时延,可实现3ms的低延迟,还有AES-128加密,在保证性能的前提下实现较高的安全性。设备可多连,理论上能够实现100米的距离传输。
  • 蓝牙4.1
    实现通过IPV6协议连接到网络,提升用户入网便捷性和使用体验;
    AES加密技术:通过硬件加密技术让我们获得更加安全的连接。
  • 蓝牙4.2
    通过6LoWPAN接入互联网,提升数据传输速率;传输速率提升,安全性加强。
    蓝牙4.2的安全性较4.0有所提升,如果没有得到用户许可,蓝牙信号将无法尝试连接和追踪用户设备,并且无法进行智能定位。

3.7 蓝牙敏感信息通信

基线要求

设备在使用 BLE 与控制应用(安卓)通信时,应对敏感信息内容本身进行应用层加密,以防止用户使用 BLE 将手机与其他智能设备配对进行数据传输时,手机上的所有应用都可以访问这两个设备间传输的数据。

这篇关于IoT产品安全基线(二)通讯安全的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/209876

相关文章

客户案例:安全海外中继助力知名家电企业化解海外通邮困境

1、客户背景 广东格兰仕集团有限公司(以下简称“格兰仕”),成立于1978年,是中国家电行业的领军企业之一。作为全球最大的微波炉生产基地,格兰仕拥有多项国际领先的家电制造技术,连续多年位列中国家电出口前列。格兰仕不仅注重业务的全球拓展,更重视业务流程的高效与顺畅,以确保在国际舞台上的竞争力。 2、需求痛点 随着格兰仕全球化战略的深入实施,其海外业务快速增长,电子邮件成为了关键的沟通工具。

安全管理体系化的智慧油站开源了。

AI视频监控平台简介 AI视频监控平台是一款功能强大且简单易用的实时算法视频监控系统。它的愿景是最底层打通各大芯片厂商相互间的壁垒,省去繁琐重复的适配流程,实现芯片、算法、应用的全流程组合,从而大大减少企业级应用约95%的开发成本。用户只需在界面上进行简单的操作,就可以实现全视频的接入及布控。摄像头管理模块用于多种终端设备、智能设备的接入及管理。平台支持包括摄像头等终端感知设备接入,为整个平台提

2024网安周今日开幕,亚信安全亮相30城

2024年国家网络安全宣传周今天在广州拉开帷幕。今年网安周继续以“网络安全为人民,网络安全靠人民”为主题。2024年国家网络安全宣传周涵盖了1场开幕式、1场高峰论坛、5个重要活动、15场分论坛/座谈会/闭门会、6个主题日活动和网络安全“六进”活动。亚信安全出席2024年国家网络安全宣传周开幕式和主论坛,并将通过线下宣讲、创意科普、成果展示等多种形式,让广大民众看得懂、记得住安全知识,同时还

【Kubernetes】K8s 的安全框架和用户认证

K8s 的安全框架和用户认证 1.Kubernetes 的安全框架1.1 认证:Authentication1.2 鉴权:Authorization1.3 准入控制:Admission Control 2.Kubernetes 的用户认证2.1 Kubernetes 的用户认证方式2.2 配置 Kubernetes 集群使用密码认证 Kubernetes 作为一个分布式的虚拟

Java Websocket实例【服务端与客户端实现全双工通讯】

Java Websocket实例【服务端与客户端实现全双工通讯】 现很多网站为了实现即时通讯,所用的技术都是轮询(polling)。轮询是在特定的的时间间隔(如每1秒),由浏览器对服务器发 出HTTP request,然后由服务器返回最新的数据给客服端的浏览器。这种传统的HTTP request 的模式带来很明显的缺点 – 浏 览器需要不断的向服务器发出请求,然而HTTP

企业安全之WiFi篇

很多的公司都没有安全团队,只有运维来负责整个公司的安全,从而安全问题也大打折扣。我最近一直在给各个公司做安全检测,就把自己的心得写下来,有什么不足之处还望补充。 0×01  无线安全 很多的公司都有不怎么注重公司的无线电安全,有钱的公司买设备,没钱的公司搞人力。但是人的技术在好,没有设备的辅助,人力在牛逼也没有个卵用。一个好的路由器、交换机、IDS就像你装备了 无尽、狂徒、杀人书一

Linux 安全弹出外接磁盘

命令行操作 首先,需要卸载硬盘上的所有分区,可以使用umount来卸载分区 清空系统缓存,将所有的数据写入磁盘 sync 列出已挂载的文件系统 使用lsblk或者df命令来查找要卸载的分区 lsblk or df -h 确保没有文件正在使用 使用lsof 命令来检查 sudo lsof |grep /dev/sdc 卸载分区 假设硬盘的分区是 /dev/sdc1,使用u

3.比 HTTP 更安全的 HTTPS(工作原理理解、非对称加密理解、证书理解)

所谓的协议 协议只是一种规则,你不按规则来就无法和目标方进行你的工作 协议说白了只是人定的规则,任何人都可以定协议 我们不需要太了解细节,这些制定和完善协议的人去做的,我们只需要知道协议的一个大概 HTTPS 协议 1、概述 HTTPS(Hypertext Transfer Protocol Secure)是一种安全的超文本传输协议,主要用于在客户端和服务器之间安全地传输数据

【小迪安全笔记 V2022 】信息打点9~11

第9天 信息打点-CDN绕过篇&漏洞回链8接口探针&全网扫指&反向件 知识点: 0、CDN知识-工作原理及阻碍 1、CDN配置-域名&区域&类型 2、CDN绕过-靠谱十余种技战法 3、CDN绑定-HOSTS绑定指向访问 CDN 是构建在数据网络上的一种分布式的内容分发网。 CDN的作用是采用流媒体服务器集群技术,克服单机系统输出带宽及并发能力不足的缺点,可极大提升系统支持的并发流数目,减少或避

OpenStack中加固VNC访问安全

OpenStack中加固VNC访问安全 目录 OpenStack中加固VNC访问安全1.问题发现2.流程分析3.潜在后果4.解决方案④配置IPtables⑤VNC添加访问密码 5.参考链接 1.问题发现 很多同学使用noVNC之后都没有退出终端的习惯,往往都是用完了就直接关闭网页窗口。说这样隐患很大,如果内网里面有一些script kiddie随时都能将我们线上的虚拟