智能家居安全防护之固件脆弱性风险分析
2023-06-26 03:50:48 来源:清一色财经
本文主要从路由器固件入手,对物联网固件分析方式及脆弱性风险评估方式进行说明。
(相关资料图)
Part 01
固件获取
对固件进行研究的整个流程图大致如图1所示,包括固件提取、固件分析、固件解析和程序提取、固件逆向、固件仿真/硬件调试、漏洞挖掘等几部分。
图1 固件安全研究流程
进行固件分析的前提条件就是固件的获取,常用的固件提取方式有:
1、从相关品牌的厂商网站进行下载;
2、在设备进行固件更新时进行截获;
3、直接使用串口调试读取芯片的方式进行固件读取。
固件中包含了很多研究人员感兴趣的内容,研究人员使用各种方式来对固件进行研究,比如查看厂家对固件的保护,是否封闭了UART及JTAG等引脚,是否从硬件物理上进行了固件内容防护;固件是否加密;固件文件系统是怎么组织的,是否存在直接提取敏感信息的可能性,固件中的各个组件使用的某些通用库是否存在漏洞;固件所支持的某些协议库,例如物联网的一些协议,是否存在漏洞;固件所支持的web服务,密码是否可窃取,是否存在漏洞,例如远程执行,信息泄露等。研究人员对这部分信息进行研究,获取基本的固件信息,对之后的固件安全分析工作来说很有必要,多数情况下,通过对固件分析的前期操作,能获得许多重要的息甚至是发现漏洞。
Part 02
固件脆弱性风险分析
2.1 蓝牙mesh固件自动化分析风险评估
因为不同品牌、不同架构的厂商,为了设备安全,会对自己出厂的固件进行不同的设置,那么在分析时获取到的固件信息也不同,但总体差别不是很大。
在对固件初步分析时可以使用自动化平台进行固件分析,自动化的固件平台能够很好的对固件组件、固件架构、文件系统等进行深层次分析,包含此系列产品的历史漏洞,漏洞时间、漏洞类型、补丁信息、文件目录、组件信息等,查看固件存在哪些组件(通用组件包括u-boot、busybox、ntp、lighttpd、openssl、json-c、
libgcrypt、hostapd等),分析开源组件是否存在已知漏洞,进行组件层面的脆弱性分析。通过使用固件自动化安全分析平台,得到包含以下信息的固件分析报告:
① 设备web代码漏洞。基于通用web技术如PHP、Javascript等开发web应用导致了潜在的web漏洞风险。
② 软件供应链漏洞。开源基础软件包不及时更新,具有相似软件供应链,不同厂商的固件存在高度重合的产品厂商、型号。
③ 证书与秘钥泄露
④ 不安全配置
⑤ Nday漏洞
开发人员在固件开发过程中会引用第三方软件和库提供功能开发的基础,比如busybox组件为固件系统中提供Linux命令操作基础;lighttpd组件为一款轻量级WebServer组件,为负责提供固件中的Web服务;openssl组件为固件提供安全及数据完整的安全协议。但它们也被爆出过影响深远的历史漏洞如busybox中的权限许可和访问控制漏洞,lighttpd中目录遍历漏洞,openssl中的心脏滴血漏洞等。
对固件进行分析,能够获取整个固件的风险感知。图二是使用固件自动化安全分析平台对某品牌路由器固件进行分析时,得到的固件分析结果。在获取这部分固件信息后,结合手工分析时关注的重点信息可以建立此固件的风险分析信息库。
图2 某路由器固件自动化安全分析结果-图片来源于某品牌固件分析平台
图3 某品牌路由器固件分析风险信息库-图片来源于某品牌固件分析平台
2.2 建立固件脆弱性风险分析方式
本文从常见的家用路由器品牌入手,总结了物联网固件脆弱性分析方式,主要从产品基本配置信息和基础组件脆弱性分析两种方式入手。
(1)产品基本配置信息主要包括表1所包括的部分。
表1 产品基本配置信息
(2)基础组件脆弱性分析主要从硬件风险分析和软件风险分析入手。
硬件风险分析包括:
① 探测路由器的telnet,ssh,ftp等服务的相应端口是否开放;
② 利用UART调试口访问设备,使用OpenWrt调试运行程序;
③ 尝试破解shadow文件密码,查看运行进程和服务;
④ 开放服务攻击面。是否存在不安全配置,例如ssh配置允许root远程登录等。
软件风险分析主要重点关注口令,API Token,API Endpoint(URL),存在漏洞的服务,后门账户,配置文件,源代码,私钥,数据的存储方式等敏感性内容。
对于固件的软件风险分析,首先需要进行固件文件系统提取,通常使用binwalk/firmware-mod-kit等固件分析工具查看固件的架构类型,并提取对应的固件文件系统。在此基础上可以使用手工分析和自动化分析两种方式对固件进行软件风险分析。
手工分析主要是遍历文件系统中不同的目录,所有配置文件,查看Web目录及开源软件信息。明确web子目录下确定开发语言和特征,关注http,tddp,upnp等网络协议,尤其是自定义协议相关的二进制文件,设备厂商自己开发的特定服务往往是被发现问题最多的地方。还可以运行busybox二进制文件,获取运行程序和symlink等固件信息。
对于自动化分析,主要使用自动化分析工具进行辅助分析,比如使用Firmwalker在固件文件系统中搜索敏感的文件,进行已知脆弱性组件识别。对与SSL相关的文件,配置文件,脚本文件,二进制文件,admin,password和remote 等关键字,常用的web服务等进行已知脆弱性组件识别检查是否使用弱口令或者已被公开的默认账号等;
通过固件自动化分析风险评估结合固件脆弱性风险分析,可以针对固件进行综合性风险评估,形成风险评估规范性模板,建立当前固件的风险信息表,输出风险报告,从而对当前所分析固件有更清楚更直观的了解。
Part 03
总结
本文从物联网(路由器)固件入手,将研究重点放在固件分析及脆弱性风险评估方式上。固件分析使用自动化固件平台分析结合手工分析关注的重点信息,建立包含固件常用组件、固件组件历史漏洞、固件版本号、固件文件系统、固件敏感信息等信息的固件分析风险信息库。与此同时,本文从产品基本配置信息分析和基础组件脆弱性分析两种分析方式入手,总结形成了物联网固件脆弱性分析方式,可以对固件的总体风险情况形成直观感受。本文总结的固件脆弱性风险分析方式对于物联网设备的安全研究来说具备实际意义。
关键词:
[责任编辑:]
相关阅读
- (2023-06-26)智能家居安全防护之固件脆弱性风险分析
- (2023-06-26)焦点热文:切忌让“指尖”代替 “脚尖”
- (2023-06-26)可领 1200 元券:小米平板 5 Pro 2999 元到手,12GB+512GB 配置 天天快看
- (2023-06-26)中工漫评丨为酷暑中的职工送去更多“工会凉”_每日快播
- (2023-06-26)世界实时:原来刘江峰也去造车了,集结一帮华为旧部
- (2023-06-26)天天热消息:“村超”教练员:带着平均年龄32岁的球队“摧城拔寨”
- (2023-06-26)施秉县独木龙舟赛开赛 36支独木龙舟队展开激烈角逐|今日看点
- (2023-06-26)天天快讯:端午假期 高速客运安全有序顺畅
- (2023-06-26)世界热头条丨“龙舟水”发威,北江流域有3个水文站超警戒
- (2023-06-26)推流量是什么意思(推他她流量是真实的)|焦点精选
- (2023-06-26)全球新动态:速约!厦门宫颈癌疫苗接种专场来了!
- (2023-06-26)晋江市自然资源局开展2023年“廉洁讲堂”活动|世界即时
- (2023-06-26)中央气象台继续发布高温黄色预警 内蒙古局地最高气温可达40 最资讯
- (2023-06-26)天天看点:什么药膏可以祛斑?
- (2023-06-26)预制装配式建筑预制装配式建筑施工 世界热消息
- (2023-06-26)西藏自治区就业服务中心安排部署文明单位创建工作
- (2023-06-26)全球快看点丨亚马逊投入1亿美元成立AI创新中心,助力AWS业务发展
- (2023-06-26)存款10万,到底是个什么水平?
- (2023-06-26)被性侵,被家暴,被封杀,37岁童瑶更多“丑闻”曝光:张国立坐不住了!_当前速递
- (2023-06-26)成都到达古冰川自驾游攻略;周末想去达古冰川游玩,自己开车,两个人。希望能给点有效的建议。
- (2023-06-26)人工智能如何应对气候变化 世界球精选
- (2023-06-26)各种借款合同利息如何确定_环球今日报
- (2023-06-26)数据平庸,如今抢手!溢价合同成香饽饽,76人漫天要价,不愿交易_环球时讯
- (2023-06-26)最新!郑州市市长:希望特斯拉加大在郑投资
- (2023-06-26)惊心24小时!俄罗斯瓦格纳“叛乱”始末_世界看点
- (2023-06-26)姿态:这样子被一波了?真的再一次证明风龙魂就是一坨!_当前独家
- (2023-06-26)安徽最高的山是哪一座山(安徽最高的山峰是哪座)
- (2023-06-26)全球速讯:反制日本!普京签令把这一纪念日名字改了……
- (2023-06-26)热点评!电脑打开网页网速很慢(我的电脑最近打开网页很慢 怎么办)
- (2023-06-26)电脑鼠标右键没反应怎么解决(电脑鼠标右键没反应)-世界信息