CN104715191B - 一种嵌入式主程序的启动检测与保护的方法及系统 - Google Patents
一种嵌入式主程序的启动检测与保护的方法及系统 Download PDFInfo
- Publication number
- CN104715191B CN104715191B CN201510136632.5A CN201510136632A CN104715191B CN 104715191 B CN104715191 B CN 104715191B CN 201510136632 A CN201510136632 A CN 201510136632A CN 104715191 B CN104715191 B CN 104715191B
- Authority
- CN
- China
- Prior art keywords
- program
- startup
- embedded
- detected
- safety
- 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.)
- Active
Links
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种嵌入式主程序的启动检测与保护的方法及系统,该方法及系统对嵌入式系统中运行的程序进行监测,若需要系统安全启动的程序未启动或者所启动的程序不是需要系统安全启动的程序时,会关闭系统并报警;还会对启动的程序文件进行MD5信息检验,若程序被恶意修改或者替换,计算得到的所检测的进程的程序文件的MD5值与注册表中定义需要系统安全启动的程序的MD5值会不相匹配,此时关闭系统并发出报警信号,进而可防止程序的恶意修改或者替换。本发明可实现对嵌入式主程序的监测及保护,可避免需要系统安全启动的程序未正常启动,也可避免不属于需要系统安全启动的程序被启动,还可防止程序的恶意修改或者替换,保证嵌入式系统的安全。
Description
技术领域
本发明主要涉及嵌入式系统技术领域,尤其是指一种嵌入式主程序的启动检测与保护的方法及系统。
背景技术
随着硬件处理器技术的发展,嵌入式设备及系统有性能和应用范围上都获得了极大的发展,可通过固定电缆和移动网络将嵌入式系统连接到外部通信装置,进而可实现对嵌入式系统的远程操控,更方便及智能,但嵌入式系统控制程序容易被恶意替换修改,系统的安全性能得不到保障,特别是涉及会引起人身财产安全的装置程序对系统的安全性能要求较高,例如基于linux的无人机嵌入式系统控制程序若受到外部信号的侵入而使得嵌入式主程序被更改甚至替换,会引发无人机安全事故,后果严重。
发明内容
为克服上述现有技术中存有的缺陷,本发明的目的在于提供一种嵌入式主程序的启动检测与保护的方法,该方法可实现对嵌入式主程序的监测及保护,避免嵌入式系统程序被恶意替换或修改,保证嵌入式系统的安全。
为达到上述目的,本发明所采用的技术方案为:
一种嵌入式主程序的启动检测与保护的方法,所述方法包括以下步骤:
A、遍历访问嵌入式系统中所有运行中的进程;
B、判断所检测的进程的名字是否与注册表中定义需要系统安全启动的程序的文件名相匹配,若是,进入步骤C,若否,进入步骤F;
C、判断注册表中定义需要系统安全启动的程序的文件名是否被均包含在所检测到的进程的名字内,若是,进入步骤D,若否,进入步骤F;
D、获取所检测的进程的程序文件路径,并从所检测的进程的程序文件路径中读取所检测的进程的程序文件,计算所检测的进程的程序文件的MD5(Message-DigestAlgorithm 5,消息摘要算法第五版)值;
E、判断计算得到的所检测的进程的程序文件的MD5值与注册表中定义需要系统安全启动的程序的MD5值是否匹配,若是,进入步骤G,若否,进入步骤F;
F、关闭嵌入式系统并发出报警信号;
G、维持嵌入式系统的进程正常运行。
由上述可知,该方法可对嵌入式系统中运行的程序进行监测,若需要系统安全启动的程序未启动或者所启动的程序不是需要系统安全启动的程序时,会关闭系统并报警;另外,还会对启动的程序文件进行MD5信息检验,若程序被恶意修改或者替换,计算得到的所检测的进程的程序文件的MD5值与注册表中定义需要系统安全启动的程序的MD5值会不相匹配,此时关闭系统并发出报警信号,进而可防止程序的恶意修改或者替换。因而,可实现对嵌入式主程序的监测及保护,保证嵌入式系统的安全。
该方法还包括:对所述注册表的储存位置信息进行加密,该注册表的储存位置信息的密钥仅存储在内核中。因而仅仅允许存储有密钥的内核对注册表进行修改,使得嵌入式系统的安全性能更高。
一种嵌入式主程序的启动检测与保护的系统,该系统包括:
检测单元,用于遍历访问嵌入式系统中所有运行中的进程;
注册表单元,用于储存该嵌入式系统中定义需要系统安全启动的程序的文件名和MD5值;
判断单元,用于判断所检测的进程的名字是否与注册表单元中定义需要系统安全启动的程序的文件名相匹配、注册表单元中定义需要系统安全启动的程序的文件名是否被均包含在所检测到的进程的名字内、计算得到的所检测的进程的程序文件的MD5值与注册表单元中定义需要系统安全启动的程序的MD5值是否匹配;
控制单元,用于控制关闭嵌入式系统、发出报警信号、维持嵌入式系统中的进程正常运行。
利用该系统可对嵌入式系统中运行的程序进行监测,检测单元遍历访问嵌入式系统中所有运行中的进程,判断单元判断检测到的进程的名字是不是注册表单元中需要系统安全启动的程序的文件名,若不是,控制单元控制关闭嵌入式系统并发出报警信号,若是,判断单元进一步判断注册表单元中定义需要系统安全启动的程序的文件名是否被均包含在所检测到的进程的名字内,若不是,控制单元控制关闭嵌入式系统并发出报警信号,若是,判断单元进一步判断计算得到的检测单元所检测的进程的程序文件的MD5值与注册表单元中定义需要系统安全启动的程序的MD5值是否匹配,若是,控制单元控制维持嵌入式系统的进程正常运行,若否,控制单元控制关闭嵌入式系统并发出报警信号。因而,可实现对嵌入式主程序的监测及保护,防止程序的恶意修改或者替换,保证嵌入式系统的安全。
该系统还包括指定内核单元,用于存储注册表单元的储存位置信息的密钥。仅仅允许指定内核单元对注册表进行修改,保证嵌入式系统的安全性能。
与以往技术相比,本发明所带来的有益效果为:
可实现对嵌入式主程序的监测及保护,可避免需要系统安全启动的程序未正常启动,也可避免不属于需要系统安全启动的程序被启动,还可防止程序的恶意修改或者替换,保证嵌入式系统的安全。
附图说明
图1为本发明方法的流程图;
图2为本发明实施例中嵌入式系统的分区示意框图;
图3为本发明实施例中启动进程监测注册表示意框图;
图4为本发明实施例在系统中应用本方法的流程图。
具体实施方式
如图1所示,一种嵌入式主程序的启动检测与保护的方法,所述方法包括以下步骤:
A、遍历访问嵌入式系统中所有运行中的进程;
B、判断所检测的进程的名字是否与注册表中定义需要系统安全启动的程序的文件名相匹配,若是,进入步骤C,若否,进入步骤F;
C、判断注册表中定义需要系统安全启动的程序的文件名是否被均包含在所检测到的进程的名字内,若是,进入步骤D,若否,进入步骤F;
D、获取所检测的进程的程序文件路径,并从所检测的进程的程序文件路径中读取所检测的进程的程序文件,计算所检测的进程的程序文件的MD5(Message-DigestAlgorithm 5,消息摘要算法第五版)值;
E、判断计算得到的所检测的进程的程序文件的MD5值与注册表中定义需要系统安全启动的程序的MD5值是否匹配,若是,进入步骤G,若否,进入步骤F;
F、关闭嵌入式系统并发出报警信号;
G、维持嵌入式系统的进程正常运行。
由上述可知,该方法可对嵌入式系统中运行的程序进行监测,若需要系统安全启动的程序未启动或者所启动的程序不是需要系统安全启动的程序时,会关闭系统并报警;另外,还会对启动的程序文件进行MD5信息检验,若程序被恶意修改或者替换,计算得到的所检测的进程的程序文件的MD5值与注册表中定义需要系统安全启动的程序的MD5值会不相匹配,此时关闭嵌入式系统并发出报警信号,进而可防止程序的恶意修改或者替换。因而,可实现对嵌入式主程序的监测及保护,保证嵌入式系统的安全。
该方法还包括,对注册表的储存位置信息进行加密,该注册表的储存位置信息的密钥仅存储在内核中。因而仅仅允许存储有密钥的内核对注册表进行修改,使得嵌入式系统的安全性能更高。
在本发明的一个实施例中,在嵌入式系统中,该方法具体表现为在kernel内核中的内核启动(rest_init)阶段创建的一个主程序检验线程,图2为嵌入式系统的分区示意框图,图3为启动进程监测注册表(即为上述方法中的注册表)示意框图,启动进程监测注册表存放在bootloader中的boot enviroment子分区中,主程序检验线程用于监测bootenvironment中的启动进程监测注册表中定义需要系统安全启动的程序是否被正常启动,或者所启动的程序是否为启动进程监测注册表中定义需要系统安全启动的程序。具体实现过程如图4所示,系统上电后,引导程序(uboot)读取环境变量分区boot environment中的数据,监测启动进程监测注册表中所有启动项是否存在异常标示,若否,启动只读最小内核(readonly mini kernel),进而启动只读最小文件系统(readonly mini roots),若存在异常标示,在kernel内核中创建主程序检验线程,主程序检验线程所监控的系统后台进程是否异常,若否,启动只读最小文件系统(readonly mini roots),若主程序检验线程所监控的系统后台进程异常,则实时维护启动进程监测注册表,将异常写入环境变量分区bootenvironment中的启动进程监测注册表中,然后进入重启系统(emergency_restart)。
一种嵌入式主程序的启动检测与保护的系统,该系统包括:
检测单元,用于遍历访问嵌入式系统中所有运行中的进程;
注册表单元,用于储存该嵌入式系统中定义需要系统安全启动的程序的文件名和MD5值;
判断单元,用于判断所检测的进程的名字是否与注册表单元中定义需要系统安全启动的程序的文件名相匹配、注册表单元中定义需要系统安全启动的程序的文件名是否被均包含在所检测到的进程的名字内、计算得到的所检测的进程的程序文件的MD5值与注册表单元中定义需要系统安全启动的程序的MD5值是否匹配;
控制单元,用于控制关闭嵌入式系统、发出报警信号、维持嵌入式系统中的进程正常运行。
利用该系统可对嵌入式系统中运行的程序进行监测,检测单元遍历访问嵌入式系统中所有运行中的进程,判断单元判断检测到的进程的名字是不是注册表单元中需要系统安全启动的程序的文件名,若不是,控制单元控制关闭嵌入式系统并发出报警信号,若是,判断单元进一步判断注册表单元中定义需要系统安全启动的程序的文件名是否被均包含在所检测到的进程的名字内,若不是,控制单元控制关闭嵌入式系统并发出报警信号,若是,判断单元进一步判断计算得到的检测单元所检测的进程的程序文件的MD5值与注册表单元中定义需要系统安全启动的程序的MD5值是否匹配,若是,控制单元控制维持嵌入式系统的进程正常运行,若否,控制单元控制关闭嵌入式系统并发出报警信号。因而,可实现对嵌入式主程序的监测及保护,防止程序的恶意修改或者替换,保证嵌入式系统的安全。
该系统还包括指定内核单元,用于存储注册表单元的储存位置信息的密钥。仅仅允许指定内核单元对注册表进行修改,保证嵌入式系统的安全性能。
上列详细说明是针对本发明之一可行实施例的具体说明,该实施例并非用以限制本发明的专利范围,凡未脱离本发明所为的等效实施或变更,均应包含于本案的专利范围中。
Claims (3)
1.一种嵌入式主程序的启动检测与保护的方法,其特征在于:所述方法包括以下步骤:
A、遍历访问嵌入式系统中所有运行中的进程;
B、判断所检测的进程的名字是否与注册表中定义需要系统安全启动的程序的文件名相匹配,若是,进入步骤C,若否,进入步骤F;
C、判断注册表中定义需要系统安全启动的程序的文件名是否被均包含在所检测到的进程的名字内,若是,进入步骤D,若否,进入步骤F;
D、获取所检测的进程的程序文件路径,并从所检测的进程的程序文件路径中读取所检测的进程的程序文件,计算所检测的进程的程序文件的MD5值;
E、判断计算得到的所检测的进程的程序文件的MD5值与注册表中定义需要系统安全启动的程序的MD5值是否匹配,若是,进入步骤G,若否,进入步骤F;
F、关闭嵌入式系统并发出报警信号;
G、维持嵌入式系统的进程正常运行;
对所述注册表的储存位置信息进行加密,该注册表的储存位置信息的密钥仅存储在内核中。
2.一种嵌入式主程序的启动检测与保护的系统,其特征在于:该系统包括:
检测单元,用于遍历访问嵌入式系统中所有运行中的进程;
注册表单元,用于储存该嵌入式系统中定义需要系统安全启动的程序的文件名和MD5值;
判断单元,用于判断所检测的进程的名字是否与注册表单元中定义需要系统安全启动的程序的文件名相匹配、注册表单元中定义需要系统安全启动的程序的文件名是否被均包含在所检测到的进程的名字内、计算得到的所检测的进程的程序文件的MD5值与注册表单元中定义需要系统安全启动的程序的MD5值是否匹配;
控制单元,用于控制关闭嵌入式系统、发出报警信号、维持嵌入式系统中的进程正常运行。
3.根据权利要求2所述的一种嵌入式主程序的启动检测与保护的系统,其特征在于:还包括指定内核单元,用于存储注册表单元的储存位置信息的密钥。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510136632.5A CN104715191B (zh) | 2015-03-26 | 2015-03-26 | 一种嵌入式主程序的启动检测与保护的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510136632.5A CN104715191B (zh) | 2015-03-26 | 2015-03-26 | 一种嵌入式主程序的启动检测与保护的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104715191A CN104715191A (zh) | 2015-06-17 |
CN104715191B true CN104715191B (zh) | 2017-09-29 |
Family
ID=53414511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510136632.5A Active CN104715191B (zh) | 2015-03-26 | 2015-03-26 | 一种嵌入式主程序的启动检测与保护的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104715191B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109858276B (zh) * | 2018-12-28 | 2022-03-04 | 航天信息股份有限公司 | 一种用于对嵌入式设备进行多级加锁的方法及系统 |
CN109918907B (zh) * | 2019-01-30 | 2021-05-25 | 国家计算机网络与信息安全管理中心 | Linux平台进程内存恶意代码取证方法、控制器及介质 |
CN111309408A (zh) * | 2020-02-24 | 2020-06-19 | 深圳震有科技股份有限公司 | 一种程序嵌入方法、系统及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499114A (zh) * | 2008-02-03 | 2009-08-05 | 汪家祥 | 建立用户程序运行许可和安全校验机制的计算机防护方法 |
CN101901313A (zh) * | 2010-06-10 | 2010-12-01 | 中科方德软件有限公司 | 一种Linux文件保护系统及方法 |
CN102262573A (zh) * | 2011-06-20 | 2011-11-30 | 奇智软件(北京)有限公司 | 操作系统启动保护方法和装置 |
CN102855274A (zh) * | 2012-07-17 | 2013-01-02 | 北京奇虎科技有限公司 | 一种可疑进程检测的方法和装置 |
CN103019778A (zh) * | 2012-11-30 | 2013-04-03 | 北京奇虎科技有限公司 | 开机启动项的清理方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2007252841B2 (en) * | 2006-05-24 | 2012-06-28 | Safend Ltd. | Method and system for defending security application in a user's computer |
-
2015
- 2015-03-26 CN CN201510136632.5A patent/CN104715191B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499114A (zh) * | 2008-02-03 | 2009-08-05 | 汪家祥 | 建立用户程序运行许可和安全校验机制的计算机防护方法 |
CN101901313A (zh) * | 2010-06-10 | 2010-12-01 | 中科方德软件有限公司 | 一种Linux文件保护系统及方法 |
CN102262573A (zh) * | 2011-06-20 | 2011-11-30 | 奇智软件(北京)有限公司 | 操作系统启动保护方法和装置 |
CN102855274A (zh) * | 2012-07-17 | 2013-01-02 | 北京奇虎科技有限公司 | 一种可疑进程检测的方法和装置 |
CN103019778A (zh) * | 2012-11-30 | 2013-04-03 | 北京奇虎科技有限公司 | 开机启动项的清理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104715191A (zh) | 2015-06-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3834401B1 (en) | Industrial system event detection and corresponding response | |
US9781144B1 (en) | Determining duplicate objects for malware analysis using environmental/context information | |
US11995182B2 (en) | Baseboard management controller to perform security action based on digital signature comparison in response to trigger | |
CN109164780B (zh) | 一种基于边缘计算的工业现场设备控制方法、装置及系统 | |
US11120127B2 (en) | Reconstruction-based anomaly detection | |
CN103748853B (zh) | 用于对数据通信网络中的协议消息进行分类的方法和系统 | |
US9438613B1 (en) | Dynamic content activation for automated analysis of embedded objects | |
US11689544B2 (en) | Intrusion detection via semantic fuzzing and message provenance | |
US20150381645A1 (en) | Method, Device And System For Intercepting Web Address | |
CN104715191B (zh) | 一种嵌入式主程序的启动检测与保护的方法及系统 | |
CN108351827A (zh) | 日志信息生成设备与存储介质以及日志信息抽取设备与存储介质 | |
US11546295B2 (en) | Industrial control system firewall module | |
US10529152B2 (en) | Detecting unauthorized physical access via wireless electronic device identifiers | |
JP2018519604A5 (zh) | ||
CN109862003A (zh) | 本地威胁情报库的生成方法、装置、系统及存储介质 | |
US20210075816A1 (en) | Method and system for managing security vulnerability in host system using artificial neural network | |
WO2020205974A1 (en) | User behavorial analytics for security anomaly detection in industrial control systems | |
US20200389474A1 (en) | System and method for connected vehicle security incident integration based on aggregate events | |
CN113282928A (zh) | 恶意文件的处理方法、装置、系统、电子装置和存储介质 | |
WO2021121382A1 (en) | Security management of an autonomous vehicle | |
CN110826058A (zh) | 基于用户交互的恶意软件检测 | |
WO2017117964A1 (zh) | 一种告警监控方法及装置 | |
US20210377289A1 (en) | Information processing apparatus, log analysis method and program | |
Allison et al. | PLC-based cyber-attack detection: A last line of defence | |
KR20210132545A (ko) | 이상행위 탐지 장치, 방법 및 이를 포함하는 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |