CN113515457A - 一种物联网设备固件安全性检测方法及装置 - Google Patents
一种物联网设备固件安全性检测方法及装置 Download PDFInfo
- Publication number
- CN113515457A CN113515457A CN202110832821.1A CN202110832821A CN113515457A CN 113515457 A CN113515457 A CN 113515457A CN 202110832821 A CN202110832821 A CN 202110832821A CN 113515457 A CN113515457 A CN 113515457A
- Authority
- CN
- China
- Prior art keywords
- information
- vulnerability
- firmware
- simulation
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3612—Software analysis for verifying properties of programs by runtime analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3604—Software analysis for verifying properties of programs
- G06F11/3616—Software analysis for verifying properties of programs using software metrics
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Computing Systems (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种物联网设备固件安全性检测方法,包括:获取待检测物联网设备的固件信息,所述固件信息包括固件ID,版本号;根据固件信息查找与其对应的启动文件、Web组件和漏洞信息;仿真模块根据查找到的启动文件和Web组件,进行web页面仿真,得到待检测Web页面;漏洞验证模块根据查找到的漏洞信息,按照漏洞信息中的漏洞编号和exp代码,来对仿真模块得到的待检测Web页面进行模拟攻击;获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,如果确定存在漏洞,将所述固件信息、漏洞信息和结果信息进行显示。
Description
技术领域
本发明涉及信息安全技术领域,尤其涉及一种物联网设备固件安全性检测方法及装置。
背景技术
固件是一种写入硬件设备的软件,其作用是对应用和各项系统功能实施控制。固件中包含底层代码,这些代码能够帮助软件实现对硬件的操作。运行固件的设备一般为物联网设备,其运行嵌入式系统,嵌入式系统的硬件资源在存储能力以及内存等方面往往具有诸多限制。
现有技术中针对物联网设备固件分析的技术中,通常的做法就是对固件解包提取文件系统后,对其进行静态检测。在这类静态检测中,检测后输出的安全检测报告中的存在的相关如密钥问题、组件漏洞等并没有被验证过,期检测结果缺乏可信度。
发明内容
本发明的主要目的在于提出一种物联网设备固件安全性检测方法及装置,旨在解决如何提高物联网设备固件安全性验证准确性的问题。
为实现上述目的,本发明提供的一种物联网设备固件安全性检测方法,包括:
步骤1,获取待检测物联网设备的固件信息,所述固件信息包括固件ID,版本号;
步骤2,根据固件信息查找与其对应的启动文件、Web组件和漏洞信息;
步骤3,仿真模块根据查找到的启动文件和Web组件,进行web页面仿真,得到待检测Web页面;
步骤4,漏洞验证模块根据查找到的漏洞信息,按照漏洞信息中的漏洞编号和exp代码,来对仿真模块得到的待检测Web页面进行模拟攻击;
步骤5,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,如果确定存在漏洞,将所述固件信息、漏洞信息和结果信息进行显示。
其中,步骤1具体包括:获取用户上传的待检测物联网设备的固件文件,将固件文件中提取的文件系统解压到工作目录中,提取其中的固件信息;
其中,漏洞数据库中包括漏洞编号、exp代码和对应的固件ID和版本号:
其中,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,具体包括:获取模拟攻击后的仿真模块中的文件系统信息,在所述文件系统信息中查找到漏洞编号对应的文件夹名,如果查找到,则证明漏洞确定存在。
其中,如果验证漏洞不存在,则不对该漏洞信息进行显示。
本发明还提供了一种物联网设备固件安全性检测装置,包括:
获取模块,用于获取待检测物联网设备的固件信息,所述固件信息包括固件ID,版本号,并根据固件信息查找与其对应的启动文件、Web组件和漏洞信息;
仿真模块,用于根据查找到的启动文件和Web组件,进行web页面仿真,得到待检测Web页面;
漏洞验证模块,用于根据查找到的漏洞信息,按照漏洞信息中的漏洞编号和exp代码,来对仿真模块得到的待检测Web页面进行模拟攻击,并获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,如果确定存在漏洞,将所述固件信息、漏洞信息和结果信息进行显示。
其中,所述获取模块具体包括:获取用户上传的待检测物联网设备的固件文件,将固件文件中提取的文件系统解压到工作目录中,提取其中的固件信息;
其中,漏洞数据库中包括漏洞编号、exp代码和对应的固件ID和版本号:
其中,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,具体包括:获取模拟攻击后的仿真模块中的文件系统信息,在所述文件系统信息中查找到漏洞编号对应的文件夹名,如果查找到,则证明漏洞确定存在。
其中,漏洞验证模块还包括:如果验证漏洞不存在,则不对该漏洞信息进行显示。
本发明的有益效果包括:本发明解决了物联网设备固件分析技术中,无法对固件进行动态分析验证的问题,具体的,本发明通过仿真模块构建待检测web页面,并使用漏洞验证模块与其进行模拟攻击验证,获取模拟攻击后的仿真模块中的文件系统信息,在所述文件系统信息中查找到漏洞编号对应的文件夹名,如果查找到,则证明漏洞确定存在,将所述固件信息、漏洞信息和结果信息进行显示,如果验证漏洞不存在,则不对该漏洞信息进行显示,能够准确提高物联网设备固件安全性检测的准确度。
附图说明
图1为本发明的方法流程图。
具体实施方式
本发明提供的本发明提供的物联网设备固件安全性检测方法,包括:
步骤1,获取待检测物联网设备的固件信息,所述固件信息包括固件ID,版本号;
步骤2,根据固件信息查找与其对应的启动文件、Web组件和漏洞信息;
步骤3,仿真模块根据查找到的启动文件和Web组件,进行web页面仿真,得到待检测Web页面;
1. 配置网络
对其网络进行配置,使得之后qemu模拟的系统可以对虚拟机的网络进行联通,以便于观察模拟设备的web是否已经开启,并为后续漏洞验证作准备。
2. 挂载镜像
建立qemu专用镜像文件,并设置循环设备把文件虚拟成区块设备,籍以模拟整个文件系统,让用户得以将其视为硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。
3. 挂载文件系统
为循环设备创建ext2文件系统,并创建一个工作目录挂载到循环设备中。
4. 解压提取固件
将固件中提取的文件系统解压到工作目录中,查找其启动文件及其web组件。
在漏洞数据库中根据固件ID和版本号查找漏洞编号、exp代码;
5. 修复Nvram
6. 构建启动文件
将配置网络、启动服务的脚本启动命令写入启动文件中。
7. 初次运行qemu仿真
运行一次qemu并指定时间,通过产生的日志获取其网络默认IP。
修复文件系统,如创建常见的文件夹、创建时区文件、创建hosts文件、修复密码文件、创建设备文件、删除重启和复位组件。
8. 建立网卡
新建一个虚拟网卡指定为获取的默认IP,将其连接到网桥上。
9. 二次运行qemu仿真
步骤4,漏洞验证模块根据查找到的漏洞信息,按照漏洞信息中的漏洞编号和exp代码,来对仿真模块得到的待检测Web页面进行模拟攻击;
撰写exp
通过测试,不同设备支持的命令不同,为高效查看攻击效果,使用创建对应漏洞编号文件夹方式来显示。所有exp被编写并验证后放入漏洞库中。
= '`mkdir CVE-2019-11399`'
attack(cmd, ip)
步骤5,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,如果确定存在漏洞,将所述固件信息、漏洞信息和结果信息进行显示。
其中,步骤1具体包括:获取用户上传的待检测物联网设备的固件文件,将固件文件中提取的文件系统解压到工作目录中,提取其中的固件信息;
其中,漏洞数据库中包括漏洞编号、exp代码和对应的固件ID和版本号:
其中,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,具体包括:获取模拟攻击后的仿真模块中的文件系统信息,在所述文件系统信息中查找到漏洞编号对应的文件夹名,如果查找到,则证明漏洞确定存在。
其中,如果验证漏洞不存在,则不对该漏洞信息进行显示。
本发明还提供了一种物联网设备固件安全性检测装置,包括:
获取模块,用于获取待检测物联网设备的固件信息,所述固件信息包括固件ID,版本号,并根据固件信息查找与其对应的启动文件、Web组件和漏洞信息;
仿真模块,用于根据查找到的启动文件和Web组件,进行web页面仿真,得到待检测Web页面;
漏洞验证模块,用于根据查找到的漏洞信息,按照漏洞信息中的漏洞编号和exp代码,来对仿真模块得到的待检测Web页面进行模拟攻击,并获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,如果确定存在漏洞,将所述固件信息、漏洞信息和结果信息进行显示。
其中,所述获取模块具体包括:获取用户上传的待检测物联网设备的固件文件,将固件文件中提取的文件系统解压到工作目录中,提取其中的固件信息;
其中,漏洞数据库中包括漏洞编号、exp代码和对应的固件ID和版本号:
其中,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,具体包括:获取模拟攻击后的仿真模块中的文件系统信息,在所述文件系统信息中查找到漏洞编号对应的文件夹名,如果查找到,则证明漏洞确定存在。
其中,漏洞验证模块还包括:如果验证漏洞不存在,则不对该漏洞信息进行显示。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (10)
1.一种物联网设备固件安全性检测方法,其特征在于,包括:
步骤1,获取待检测物联网设备的固件信息,所述固件信息包括固件ID,版本号;
步骤2,根据固件信息查找与其对应的启动文件、Web组件和漏洞信息;
步骤3,仿真模块根据查找到的启动文件和Web组件,进行web页面仿真,得到待检测Web页面;
步骤4,漏洞验证模块根据查找到的漏洞信息,按照漏洞信息中的漏洞编号和exp代码,来对仿真模块得到的待检测Web页面进行模拟攻击;
步骤5,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,如果确定存在漏洞,将所述固件信息、漏洞信息和结果信息进行显示。
2.如权利要求1所述的方法,其特征在于,其中,步骤1具体包括:获取用户上传的待检测物联网设备的固件文件,将固件文件中提取的文件系统解压到工作目录中,提取其中的固件信息。
3.如权利要求1所述的方法,其特征在于,其中,漏洞数据库中包括漏洞编号、exp代码和对应的固件ID和版本号。
4.如权利要求1所述的方法,其特征在于,其中,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,具体包括:获取模拟攻击后的仿真模块中的文件系统信息,在所述文件系统信息中查找到漏洞编号对应的文件夹名,如果查找到,则证明漏洞确定存在。
5.如权利要求1所述的方法,其特征在于,其中,如果验证漏洞不存在,则不对该漏洞信息进行显示。
6.一种物联网设备固件安全性检测装置,其特征在于,包括:
获取模块,用于获取待检测物联网设备的固件信息,所述固件信息包括固件ID,版本号,并根据固件信息查找与其对应的启动文件、Web组件和漏洞信息;
仿真模块,用于根据查找到的启动文件和Web组件,进行web页面仿真,得到待检测Web页面;
漏洞验证模块,用于根据查找到的漏洞信息,按照漏洞信息中的漏洞编号和exp代码,来对仿真模块得到的待检测Web页面进行模拟攻击,并获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,如果确定存在漏洞,将所述固件信息、漏洞信息和结果信息进行显示。
7.如权利要求6所述的装置,其特征在于,其中,所述获取模块具体包括:获取用户上传的待检测物联网设备的固件文件,将固件文件中提取的文件系统解压到工作目录中,提取其中的固件信息。
8.如权利要求6所述的装置,其特征在于,其中,漏洞数据库中包括漏洞编号、exp代码和对应的固件ID和版本号。
9.如权利要求6所述的装置,其特征在于,其中,获取模拟攻击后的结果信息,在所述结果信息中验证漏洞是否存在,具体包括:获取模拟攻击后的仿真模块中的文件系统信息,在所述文件系统信息中查找到漏洞编号对应的文件夹名,如果查找到,则证明漏洞确定存在。
10.如权利要求6所述的装置,其特征在于,其中,漏洞验证模块还包括:如果验证漏洞不存在,则不对该漏洞信息进行显示。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110832821.1A CN113515457B (zh) | 2021-07-22 | 2021-07-22 | 一种物联网设备固件安全性检测方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110832821.1A CN113515457B (zh) | 2021-07-22 | 2021-07-22 | 一种物联网设备固件安全性检测方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113515457A true CN113515457A (zh) | 2021-10-19 |
CN113515457B CN113515457B (zh) | 2022-08-12 |
Family
ID=78068634
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110832821.1A Active CN113515457B (zh) | 2021-07-22 | 2021-07-22 | 一种物联网设备固件安全性检测方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113515457B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116561768A (zh) * | 2023-05-19 | 2023-08-08 | 国家计算机网络与信息安全管理中心 | 设备固件漏洞检测方法、装置、设备及存储介质 |
WO2023241529A1 (zh) * | 2022-06-17 | 2023-12-21 | 阿里云计算有限公司 | 漏洞信息处理方法、服务装置和漏洞检测模块 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611591A (zh) * | 2020-05-22 | 2020-09-01 | 中国电力科学研究院有限公司 | 一种固件漏洞的检测方法、装置、存储介质及电子设备 |
CN112134761A (zh) * | 2020-09-23 | 2020-12-25 | 国网四川省电力公司电力科学研究院 | 基于固件分析的电力物联网终端脆弱性检测方法及系统 |
CN112287342A (zh) * | 2020-09-23 | 2021-01-29 | 北京沃东天骏信息技术有限公司 | 物联网固件动态检测方法、装置、电子设备以及存储介质 |
CN112685746A (zh) * | 2021-01-08 | 2021-04-20 | 中国科学技术大学 | 一种面向物联网设备固件的漏洞检测方法及系统 |
-
2021
- 2021-07-22 CN CN202110832821.1A patent/CN113515457B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111611591A (zh) * | 2020-05-22 | 2020-09-01 | 中国电力科学研究院有限公司 | 一种固件漏洞的检测方法、装置、存储介质及电子设备 |
CN112134761A (zh) * | 2020-09-23 | 2020-12-25 | 国网四川省电力公司电力科学研究院 | 基于固件分析的电力物联网终端脆弱性检测方法及系统 |
CN112287342A (zh) * | 2020-09-23 | 2021-01-29 | 北京沃东天骏信息技术有限公司 | 物联网固件动态检测方法、装置、电子设备以及存储介质 |
CN112685746A (zh) * | 2021-01-08 | 2021-04-20 | 中国科学技术大学 | 一种面向物联网设备固件的漏洞检测方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023241529A1 (zh) * | 2022-06-17 | 2023-12-21 | 阿里云计算有限公司 | 漏洞信息处理方法、服务装置和漏洞检测模块 |
CN116561768A (zh) * | 2023-05-19 | 2023-08-08 | 国家计算机网络与信息安全管理中心 | 设备固件漏洞检测方法、装置、设备及存储介质 |
CN116561768B (zh) * | 2023-05-19 | 2024-05-28 | 国家计算机网络与信息安全管理中心 | 设备固件漏洞检测方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113515457B (zh) | 2022-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109375945B (zh) | 物联网设备的固件版本探测方法及漏洞修复率评估方法 | |
WO2018010552A1 (zh) | 测试方法和装置 | |
CN113515457B (zh) | 一种物联网设备固件安全性检测方法及装置 | |
US8171406B1 (en) | Automating user interface navigation | |
CN103136471B (zh) | 一种恶意Android应用程序检测方法和系统 | |
CN105069355A (zh) | webshell变形的静态检测方法和装置 | |
KR20170068814A (ko) | 악성 모바일 앱 감지 장치 및 방법 | |
KR100968126B1 (ko) | 웹쉘 탐지 시스템 및 웹쉘 탐지 방법 | |
CN109614203B (zh) | 一种基于应用数据仿真的安卓应用云数据取证分析系统及方法 | |
CN101593249A (zh) | 一种可疑文件分析方法及系统 | |
CN107133165B (zh) | 浏览器兼容性检测方法及装置 | |
CN103294951B (zh) | 一种基于文档型漏洞的恶意代码样本提取方法及系统 | |
RU2611961C2 (ru) | Способ и система регрессионного тестирования функциональности веб-страницы, машиночитаемый носитель информации | |
CN112422581B (zh) | JVM中的Webshell网页检测方法、装置及设备 | |
CN106407054B (zh) | 一种bmc自动测试系统及方法 | |
CN115062309B (zh) | 一种新型电力系统下基于设备固件仿真的漏洞挖掘方法及存储介质 | |
CN110427757A (zh) | 一种Android漏洞检测方法、系统及相关装置 | |
KR101431192B1 (ko) | 모바일 단말의 루팅 공격 이벤트 검출 방법 | |
CN104346570A (zh) | 一种基于动态代码序列跟踪分析的木马判定系统 | |
CN107392033B (zh) | 一种安卓设备渗透测试系统及其自动化渗透测试方法 | |
US9946853B1 (en) | Techniques for application code obfuscation | |
CN105068902B (zh) | 一种类Unix操作系统计算机硬件检测方法 | |
CN103971052A (zh) | 磁盘引导区病毒识别方法及装置 | |
CN107798244A (zh) | 一种检测远程代码执行漏洞的方法及装置 | |
CN111176964A (zh) | 一种虚拟化平台硬件兼容性测试方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP01 | Change in the name or title of a patent holder |
Address after: Room 907-1, dantaihu building (Wuluo Science Park), No.9, Taihu East Road, Wuzhong District, Suzhou City, Jiangsu Province, 215000 Patentee after: Dunhe Everything Information Technology (Suzhou) Co.,Ltd. Address before: Room 907-1, dantaihu building (Wuluo Science Park), No.9, Taihu East Road, Wuzhong District, Suzhou City, Jiangsu Province, 215000 Patentee before: Suzhou Zhiwei Security Technology Co.,Ltd. |
|
CP01 | Change in the name or title of a patent holder |