跳至主要内容

什么是IoT Firmware?

软件安全分析与测试,顾名思义,即通过分析(静态分析)与测试(动态测试)的手段发现软件系统中存在的安全问题。
我们的研究对象是软件系统,软件系统多种多样,今天我们重点关注一类特殊的软件,俗称固件,又叫IoT firmware。
那么(1) 什么是IoT? (2)什么又是IoT firmware?
IoT,即Internet of Thing, 中文名叫物联网。顾名思义很简单,就是一个物(Thing)连了网(Internet)。实际上呢?也就是这个简单!
概念层面, 我们可以用个等式说明什么是IoT 设备:
IoT Device 
= Embedded Device + Network
= Hardware Device + Computation Intelligence + Network
实际的,当然是要举个🌰:


  1. 智能冰箱 = 冰箱硬件 (提供低温保存)+ 计算智能(记录监控冰箱内的食物,自动联网采购)+ WIFI。
  2. 智能洗衣机 = 传统洗衣机硬件(提供洗衣)+ 计算智能(接受网络付款开始洗衣,基于网络设定洗衣时间)+ WiFI。
  3. 智能门锁 = 传统门锁硬件 + 计算智能(接受网络命令,进行网络身份认证进行开关)+ WIFI.
至此,我们来给IoT设备下个非学术化的定义:IoT 设备是一类特殊的嵌入式设备,基于智能单元与网络提升了传统硬件功能的设备。

现在我们对IoT设备有了一定的理解,那么什么是固件(IoT Firmware)呢?
我们先来了解下固件一般是怎么开发的:


首先,我们需要一个开发版(如上图);然后,用笔记本(或台式机)连上开发版,在笔记本本上写好一段程序,经过编译链接程可执行文件;最后,将生成的可执行文件迁移到开发版中微处理器(Microcontroller)的内存(RAM)中(如下图红箭头所示)。


至此,我们知道IoT Firmware就是一段程序,是最终存储运行在微处理器内存中的一段可执行的软件程序。

评论