智能家居安全防护之固件脆弱性风险分析
时间:2023-06-26 07:33:03来源:清一色财经

本文主要从路由器固件入手,对物联网固件分析方式及脆弱性风险评估方式进行说明。

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年天津各高校开放日时间+详情
  • 下一篇文章: 最后一页
  • 最新
  • 智能家居安全防护之固件脆弱性风险分析

    本文主要从路由器固件入手,对物联网固件分析方式及脆弱性风险评估方式

  • 2023年天津各高校开放日时间+详情

    ➤➤天津理工大学校园开放日一、“启航·昂扬青春”招生政策解读招生政

  • 韩国市民团体敦促日本政府在陆地保管核污染水

    新华社首尔6月24日电(记者陆睿 周思雨)韩国市民团体“阻止日本放射

  • 【天天报资讯】市委副书记、市长刘洁到省经济和信息化厅对接工作

    黄冈日报讯(记者汪欢通讯员何述锋陈珂)6月21日,市委副书记、市长刘

  • 我市真金白银鼓励企业增资扩产 世界新视野

    厦门网讯(厦门日报记者李晓平)我市工业企业工业固定资产投资补助资金

  • 杭州之江城投完成发行9亿元超短期融资券 利率2.35% 天天消息

    本期债券发行总额为人民币9亿元,于2023年06月16日起息,2024年03月12

  • 身“穿”白玉兰,十足岭南风!“佛山号”彩绘飞机今日首航

    6月16日8时16分,北京大兴国际机场。伴随着引擎的阵阵轰鸣,一架充满岭

  • 荣盛发展为张家口、邯郸、廊坊等5家下属公司融资提供担保|快报

    截至本公告披露日,荣盛发展实际担保总额为450 93亿元,占公司最近一期

  • 6月16日基金净值:兴业收益增强债券A最新净值1.402,涨0.07%

    6月16日,兴业收益增强债券A最新单位净值为1 402元,累计净值为1 587元

  • * 港股科网板块午后拉升,阿里巴巴涨近3%

    *港股科网板块午后拉升,阿里巴巴涨近3%

  • 每日视讯:2023石家庄高考志愿填报方式和流程是怎样的?

    考生填报志愿采取远程网上填报方式进行。考生在规定时间,使用计算机(

  • 【世界聚看点】湖人试训一名大五熟男控卫,他可能是双向合同的绝佳选择?

    戴维斯出生于1999年5月,之前刚刚年满24岁,身高183cm,体重82kg,是一

  • 二手房卖不动了?房产中介“只快乐了45天”

    “只快乐了45天”的房产中介,感叹着不少城市二手房“越卖越多”,这只

  • 【“粤”升湾区阔 潮涌看中国】朝“南”看!高质量发展在湾区良港扬帆起航

    【环球网报道记者舒乙桁】珠江口岸,伶仃洋畔。6月13日下午,中央及地

  • 魅族20周年直播活动来袭!总裁亲自亮相还有多重好礼送_世界速看料

    为了纪念魅族和京东走过了20个年头,特此准备于6月16日20点举办魅族京

  • 与张本美和生日隔了一天,球迷给陈梦送祝福,王楚钦更换了新鞋

    很多球迷是记得陈梦的真实生日,也在这一天祝福陈梦生日快乐!除了给陈