随着智能硬件进入到人们的生活,人们的生活质量开始有逐步的提高,人们与智能硬件之间的联系更加紧密。同时,智能硬件的安全问题也必须引起高度重视,因为其直接影响到人身安全、社会安全和国家安全。
大家是否有想过,自己身边的硬件设备有可能已经被植入了恶意代码?最近有媒体揭露某公司的水滴摄像头直播侵犯用户隐私引发关注。甚至有其他文章爆出大量成人视频出现该公司的水印,酒店室内一些不可描述的画面被录制上传,造成极其恶劣的影响。
图片来源网络
无独有偶,CCTV 在 11 月份报道了扫地机器人如何变成 "间谍",黑客利用漏洞伪装成用户登录,然后对扫地机器人进行远程遥控,通过摄像头和手机的连接实时监控家中的环境 。家用摄像头的安全风险,除了公开出售 IP,甚至还有破解软件在 QQ 群中传播叫卖。
图片来源网络
美国国土安全部 DHS 在去年 10 月就发布了《保障物联网安全战略原则》。今年 10 月 ARM 向 IETF 提交了 A Firmware Update Architecture for Internet of Things Devices 的草案,如果通过就会成为标准,可以推进 IoT 安全的发展。同年 1 月,工信部也在发布的《物联网发展规划(2016-2020 年)》提出了物联网产业未来五年发展的主要任务。 各国都在逐步完善物联网的政策法规,进一步指导物联网行业的健康发展,加强物联网设备的安全性。
物联网设备在哪些场景及环节可能被植入恶意代码:
1、物联网设备出厂前留有后门或由内鬼批量植入恶意代码。这些案例并不新鲜,媒体报道也并不少见。
2、第三方销售渠道(包括代购)在销售前篡改软硬件内容。比如把 iPhone5 套上 iPhone6 外壳销售,又或是在里面加入后门代码等等,对于专业人士,这些并无太大难度。
3、经他人(维修点维修人员、同事朋友、侦探)手后,固件内容被篡改,待日后获取用户隐私,追踪用户位置等。
面对层出不穷的物联网设备安全事件,顶象技术的安全工程师用 msp430 开发板来演示一种篡改 IoT 固件内容的攻击方式。
一、模拟通讯场景
1.1 涉及到的硬件
a、实验所采用的开发板使用的是 TI 公司的 msp430f149 芯片。
b、开发板有 4 个自定义按键:S1~S4。
c、开发板有 8 个 LED 指示灯:D1~D8。
d、有一个开发板可扩展 1602LCD 液晶显示屏。
根据开发板硬件原理图,P6OUT 的第 0~ 第 7 位分析表示 D1~D8 号 LED 灯,置 0 亮灯,置 1 灭灯。因此,0xFC 对应 D1 和 D2 亮;
硬件如图所示:
图 1 开发板以及本实验中涉及到的硬件部分
1.2 通讯模拟原理
假设有 A 和 B 两个端。当按 S1/S2/S3 时,从 A 发送特定加密数据给 B;当按 S4 时,B 接收信息并解密使用。
由于三组操作的步骤是相似的,这里只展示先按 S1,再按 S4 这组操作的效果展示:
a、按 S1 键。A 端将字符串 "FC" 加密发送给 B。
b、按 S4 键。B 端读取数据,然后解密并转换成整数,赋值给 P6OUT。
1.3 具体实现
按 S1 键。A 端将字符串 "FC" 加密发送给 B。
- int envLen = 0;
- char src[10] = {"FC"};
- char env[10] = {0};
- ENCRYPT(src, strlen(src) + 1, env);
- envLen = strlen(env);
- SendMsg(env, envLen);
按 S4 键。B 端读取数据,并解密并转换成整数,赋值给 P6OUT,来点亮 LED 灯。
- char* res = NULL;
- void* src = NULL;
- int32_t srcLen = 0;
- char plain[100] = {0};
- src = ReceiveMsg(&srcLen);
- Decrypt(src, srcLen, plain);
- P6OUT = strtol(plain, &res, 16);
1.4 运行结果
图 2 先按 S1 键,再按 S4 键,则点亮 D1 和 D2 灯
二、Hook 攻击测试
2.1 Hook 原理
拦截 Encrypt, 按 S1/S2/S3 键时将加密前后信息显示到液晶屏上。
拦截 Decrypt, 按 S4 键时将解密前后信息显示到液晶屏上。
2.2 Hook 实现
对于 msp430 芯片, 一般厂商在出厂时会烧断熔丝来防止固件提取。但事实上 msp430 芯片只需要支付几百块 RMB,就可以将熔丝修复,并提取出固件内容。由于本测试是基于开发板,所以有关于提取固件的内容就不在这里详述了。
首先用工具将固件内容以 TI-TXT 的方式 dump 下来, 然后将用于 Hook 的 opcode 植入进去, 然后对 TI-TXT 文件完成修改操作。Hook 完成后用 Beyond Compare 查看 TI-TXT 的对比如下图:
图 3 对 TI-TXT 文件处理后的对比:左侧为原始固件内容,右侧为加入 Hook 代码后的固件内容
将改后的 TI-TXT 文件推回到开发板的芯片中。
2.3 运行结果
注意:按 S1 的图中,请无视 LED 灯(D1~D8),因为这些灯是上次操作 S4 遗留下来的。S1 的操作对 LED 灯没有任何影响。
图 4 按 S1 键,在液晶屏上显示 "FC" 的加密过程
图 5 在按 S1 键后再按 S4 键,则点亮 D1 和 D2 灯,并在液晶屏上显示 "FC" 的解密过程
三、IoT 安全防护方案
随着各种 IoT(物联网)设备的不断出现,对这些智能设备的攻击也随之而来。而由于 IoT 设备功能的特殊性,这些攻击带来的后果更为多样和严重。例如智能摄像头被攻破可能带来家庭或工作隐私视频的泄露,智能手表被攻击可能带来行动轨迹的泄露,智能汽车被入侵更是可能直接带来生命安全的威胁。
顶象技术专家马涛给智能硬件购买者一些建议
1、首先,尽量从正规渠道购买信誉较高的产品。
2、其次,设备出现故障尽量选择官方指定维修点。
3、再次,自己的有可能涉及到隐私、敏感内容的智能硬件设备,如果可能,建议不要让它单独经他人之手。
4、最后,建议选择使用了强度较高安全解决方案的智能硬件设备。因为这种设备的修改固件的难度极大,安全性更好。
针对 IoT 固件的防护,顶象技术从源头入手通过对 IoT 设备上运行的程序进行深入保护,使得攻击者无法破解其内部工作逻辑,从而保证了这些 IoT 设备在复杂、不安全的环境中,仍能按照预设的功能正常、安全的运行。
使用顶象 IoT 安全编译器和顶象 IoT 安全 SDK 可以使 hook 无法进行,同时逆向破解难度更高,可以做为固件内容被提取后的最后一道防线。
典型使用场景
为了更好了解物联网设备的威胁隐患,保障物联网的安全运行,12 月 22 日,顶象技术携手浙江省物联网产业协会在杭州举办第一届《物联网智能设备安全防护》研讨会。
来自政府和企业的物联网专家将现场与嘉宾共同分享未来物联网安全的市场趋势,探讨最热门的物联网安全技术;通过实际应用案例分享,使到场嘉宾及客户充分了解顶象技术在 IOT 行业顶尖的安全防护方案,诚邀您的参加!
参会时间:2017 年 12 月 22 日下午
参会地点:杭州市余杭区文一西路未来科技城海创园会议中心