freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式
2023-04-14 15:41:58
所属地 浙江省

随着智能硬件进入到人们的生活,人们的生活质量开始有逐步的提高,人们与智能硬件之间的联系更加紧密。同时,智能硬件的安全问题也必须引起高度重视,因为其直接影响到人身安全、社会安全和国家安全。

大家是否有想过,自己身边的硬件设备有可能已经被植入了恶意代码?最近有媒体揭露某公司的水滴摄像头直播侵犯用户隐私引发关注。甚至有其他文章爆出大量成人视频出现该公司的水印,酒店室内一些不可描述的画面被录制上传,造成极其恶劣的影响。

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式

图片来源网络

无独有偶,CCTV此前报道了扫地机器人如何变成“间谍”,黑客利用漏洞伪装成用户登录,然后对扫地机器人进行远程遥控,通过摄像头和手机的连接实时监控家中的环境 。家用摄像头的安全风险,除了公开出售IP,甚至还有破解软件在QQ群中传播叫卖。

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式

图片来源网络

美国国土安全部DHS也发布了《保障物联网安全战略原则》。并且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亮;

硬件如图所示:

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式

图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 运行结果

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式

图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的对比如下图:

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式

图3 对TI-TXT文件处理后的对比:左侧为原始固件内容,右侧为加入Hook代码后的固件内容

将改后的TI-TXT文件推回到开发板的芯片中。

2.3 运行结果

注意:按S1的图中,请无视LED灯(D1~D8),因为这些灯是上次操作S4遗留下来的。S1的操作对LED灯没有任何影响。

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式

图4 按S1键,在液晶屏上显示"FC"的加密过程

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式

图5 在按S1键后再按S4键,则点亮D1和D2灯,并在液晶屏上显示"FC"的解密过程

三、IoT安全防护方案

随着各种IoT(物联网)设备的不断出现,对这些智能设备的攻击也随之而来。而由于IoT设备功能的特殊性,这些攻击带来的后果更为多样和严重。例如智能摄像头被攻破可能带来家庭或工作隐私视频的泄露,智能手表被攻击可能带来行动轨迹的泄露,智能汽车被入侵更是可能直接带来生命安全的威胁。

顶象技术专家马涛给智能硬件购买者一些建议

1、首先,尽量从正规渠道购买信誉较高的产品。

2、其次,设备出现故障尽量选择官方指定维修点。

3、再次,自己的有可能涉及到隐私、敏感内容的智能硬件设备,如果可能,建议不要让它单独经他人之手。

4、最后,建议选择使用了强度较高安全解决方案的智能硬件设备。因为这种设备的修改固件的难度极大,安全性更好。

针对IoT固件的防护,顶象技术从源头入手通过对IoT设备上运行的程序进行深入保护,使得攻击者无法破解其内部工作逻辑,从而保证了这些IoT设备在复杂、不安全的环境中,仍能按照预设的功能正常、安全的运行。

使用顶象IoT安全编译器和顶象IoT安全SDK可以使hook无法进行,同时逆向破解难度更高,可以做为固件内容被提取后的最后一道防线。

典型使用场景 

物联网设备是如何被破解的?分析一种篡改IoT固件内容的攻击方式


# 物联网 # IoT固件 # 内容篡改
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者