CN106295259B - 一种利用不可屏蔽中断提高物联网产品安全性的方法 - Google Patents
一种利用不可屏蔽中断提高物联网产品安全性的方法 Download PDFInfo
- Publication number
- CN106295259B CN106295259B CN201610638410.8A CN201610638410A CN106295259B CN 106295259 B CN106295259 B CN 106295259B CN 201610638410 A CN201610638410 A CN 201610638410A CN 106295259 B CN106295259 B CN 106295259B
- Authority
- CN
- China
- Prior art keywords
- security application
- code
- nmi
- internet
- data
- 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
- 238000000034 method Methods 0.000 title claims abstract description 14
- 238000012545 processing Methods 0.000 claims abstract description 10
- 230000002093 peripheral effect Effects 0.000 claims description 14
- 238000004458 analytical method Methods 0.000 claims description 3
- 230000001960 triggered effect Effects 0.000 abstract description 3
- 230000006399 behavior Effects 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 238000011161 development Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000002955 isolation Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000001737 promoting effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 241001391944 Commicarpus scandens Species 0.000 description 1
- 241000196324 Embryophyta Species 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003449 preventive effect Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
- 239000011800 void material Substances 0.000 description 1
Classifications
-
- 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/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/128—Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
Abstract
一种利用不可屏蔽中断提高物联网产品安全性的方法,所有安全应用/操作在NMI中执行,步骤如下:(1)系统调用安全应用/操作N;(2)配置安全应用/操作N的调用标志;(3)触发NMI,NMI处理函数判断步骤(2)中设置的标志获知被调用的安全应用/操作以及获取参数;(4)从OTP中获取安全应用/操作N所需的各类秘钥,存放于申请到的资源中;(5)使用秘钥解密获得明文数据和代码;(6)执行安全应用/操作N的逻辑,包括数据的处理以及结果的加密和签名;(7)删除解密得到的数据和代码明文;(8)清除和释放申请到的资源,退出NMI;(9)发送安全应用/操作N的结果数据;(10)结束安全应用/操作N的调用。
Description
技术领域
本发明涉及一种利用不可屏蔽中断提高物联网产品安全性的方法。
背景技术
物联网将是下一个推动世界高速发展的“重要生产力”,是继通信网之后的另一个万亿级市场。业内专家认为,物联网一方面可以提高经济效益,大大节约成本;另一方面可以为全球经济的复苏提供技术动力。美国、欧盟等都在投入巨资深入研究探索物联网。我国也正在高度关注、重视物联网的研究,工业和信息化部会同有关部门,在新一代信息技术方面正在开展研究,以形成支持新一代信息技术发展的政策措施。
此外,普及以后,用于动物、植物和机器、物品的传感器与电子标签及配套的接口装置的数量将大大超过手机的数量。物联网的推广将会成为推进经济发展的又一个驱动器,为产业开拓了又一个潜力无穷的发展机会。按照对物联网的需求,需要按亿计的传感器和电子标签,这将大大推进信息技术元件的生产。
然而随着物联网的高速发展,物联网产品的安全问题也越来越受到重视。根据物联网自身的特点,物联网除了面对移动通信网络的传统网络安全问题之外,还存在着一些与已有移动网络安全不同的特殊安全问题。这是由于物联网是由大量的机器构成,缺少人对设备的有效监控,并且数量庞大,设备集群等相关特点造成的,这些特殊的安全问题主要有以下几个方面。
物联网机器/感知节点的本地安全问题。由于物联网的应用可以取代人来完成一些复杂、危险和机械的工作。所以物联网机器/感知节点多数部署在无人监控的场景中。那么攻击者就可以轻易地接触到这些设备,从而对他们造成破坏,甚至通过本地操作更换机器的软硬件。
物联网业务的安全问题。由于物联网设备可能是先部署后连接网络,而物联网节点又无人看守,所以如何对物联网设备进行远程签约信息和业务信息配置就成了难题。另外,庞大且多样化的物联网平台必然需要一个强大而统一的安全管理平台,否则独立的平台会被各式各样的物联网应用所淹没,但如此一来,如何对物联网机器的日志等安全信息进行管理成为新的问题,并且可能割裂网络与业务平台之间的信任关系,导致新一轮安全问题的产生。
普通的物联网机器/感知节点的结构如图1所示,其系统调用应用/操作N的流程图如图2所示,具体步骤如下:
1、系统调用应用/操作N;
2、从OTP(One Time Programable,是MCU的一种存储器类型,意思是一次性可编程:程序烧入IC后,将不可再次更改和清除)中获取应用/操作N所需的各类秘钥,存放于申请到的资源(堆/栈)中;
3、使用秘钥解密获得明文数据和代码;
4、执行应用/操作N的逻辑,包括数据的处理以及结果的加密和签名;
5、删除解密得到的数据和代码明文;
6、发送应用/操作N的结果数据;
7、结束应用/操作N的调用。
其中,步骤2到步骤7之间,内存中存在明文操作代码;步骤3到步骤6之间,内存中存在明文秘钥、明文敏感数据;因此,攻击者通过操作系统漏洞或者其他方式突破应用之间的隔离后,可以在A1-A5这5个攻击点获取应用/操作N的明文代码,可以在A2-A4这3个攻击点获取明文秘钥和敏感信息。当攻击者从A2-A4间获取明文秘钥后,一切防护手段都形同虚设,而即使没有获得秘钥,攻击者也可以在A1-A5之间获取操作/应用的明文代码,从而侵害开发者的知识产权。由于操作系统的漏洞是普遍存在的,因此目前方案的安全性无法得到保障。
目前大多数的物联网产品方案,安全性上已经做了一定的设计,其方法的主要是对数据的交互进行加密,端上仍然以明文存在,设备的安全性依然存在不小的缺陷。具体如下:
1、加解密操作本身暴露在攻击者面前,攻击者可以很轻易的侵入加解密操作;
2、当攻击者侵入加解密操作时,敏感信息和代码可以被很轻易的获取;
3、应用和应用之间采用软件或操作系统隔离,由于操作系统的漏洞普遍存在,因此攻击者很容易突破隔离,获取或控制应用。
发明内容
本发明提供了一种提高数据和代码安全性、通用性高、不易被入侵的利用不可屏蔽中断提高物联网产品安全性的方法,其中不可屏蔽中断简称NMI。
本发明采用的技术方案是:
一种利用不可屏蔽中断提高物联网产品安全性的方法,包括一般应用/操作和安全应用/操作,其特征在于:所有安全应用/操作在NMI中执行,具体步骤如下:
(1)系统调用安全应用/操作N;
(2)配置安全应用/操作N的调用标志;
(3)触发NMI,NMI处理函数判断步骤(2)中设置的标志获知被调用的安全应用/操作以及获取参数;
(4)从OTP中获取安全应用/操作N所需的各类秘钥,存放于申请到的资源(堆/栈)中;
(5)使用秘钥解密获得明文数据和代码;
(6)执行安全应用/操作N的逻辑,包括数据的处理以及结果的加密和签名;
(7)删除解密得到的数据和代码明文;
(8)清除和释放申请到的资源,退出NMI;
(9)发送安全应用/操作N的结果数据;
(10)结束安全应用/操作N的调用。
本发明所有安全应用/操作所需的敏感数据/秘钥/代码都只在步骤(4)到步骤(8)之间存在于内存中,在其余步骤中只以密文形式存在;同时,由于步骤(4)到步骤(8)不可被中断、嵌套、屏蔽,因此可以视作一个原子操作,攻击者无法通过任何软件或漏洞来攻击,而其余步骤,虽然攻击者能够攻击,但并不存在任何明文敏感数据/代码,因此攻击者无法获取任何有意义的敏感数据/代码。此外,攻击者在一般状态下虽然可以通过攻击来修改NMI响应函数指针,但由于攻击者无法获得敏感信息/操作/代码因此无法操作敏感外设或获取敏感信息,只能操作一般外设或者获取一般信息,从而提高数据和代码的安全性。
进一步,所述NMI初步解析和调度函数能以只执行方式存在于OTP中,保证NMI响应无法被修改和获取。
进一步,所述安全应用/操作能调用一般外设驱动,此时一般外设驱动的行为也享有高安全性,但由于本身代码存在于非安全区,外设行为本身可能事先被攻击者篡改。
进一步,所述一般应用能使用安全操作控制敏感外设,改操作本身享有高安全性。
本发明的有益效果:
1、通用性很高,基本上使用任何MCU设计的产品都能实现;
2、能大幅提高安全性,基本杜绝任何非硬件方式的攻击;
3、不需要修改现有产品的任何硬件设计,方便目前设备的安全升级;
4、可以以操作为单元而并非以应用为单元进行保护,从而实现保持高性能下系统的安全;
5、可以实现软件层面的定制,高度灵活,可以按照实际需求实现性能和安全的协调;
6、保护数据安全的同时可以保护开发者代码安全,防止抄袭,复制等知识产权侵权;
7、在物联网产品等应用处理相对简单,对实时性要求相对较低,因此采用本发明完全可以按需优化和满足其对实时性的需求。
附图说明
图1是现有物联网机器/感知节点的结构示意图。
图2是现有物联网机器/感知节点的系统调用应用/操作N的流程示意图。
图3是本发明物联网机器/感知节点的结构示意图。
图4是本发明物联网机器/感知节点的系统调用应用/操作N的流程示意图。
具体实施方式
下面结合具体实施例来对本发明进行进一步说明,但并不将本发明局限于这些具体实施方式。本领域技术人员应该认识到,本发明涵盖了权利要求书范围内所可能包括的所有备选方案、改进方案和等效方案。
参照图3、图4,一种利用不可屏蔽中断提高物联网产品安全性的方法,包括一般应用/操作和安全应用/操作,其特征在于:所有安全应用/操作在NMI中执行,具体步骤如下:
(1)系统调用安全应用/操作N;
(2)配置安全应用/操作N的调用标志;
(3)触发NMI,NMI处理函数判断步骤(2)中设置的标志获知被调用的安全应用/操作以及获取参数;
(4)从OTP中获取安全应用/操作N所需的各类秘钥,存放于申请到的资源(堆/栈)中;
(5)使用秘钥解密获得明文数据和代码;
(6)执行安全应用/操作N的逻辑,包括数据的处理以及结果的加密和签名;
(7)删除解密得到的数据和代码明文;
(8)清除和释放申请到的资源,退出NMI;
(9)发送安全应用/操作N的结果数据;
(10)结束安全应用/操作N的调用。
本发明所有安全应用/操作所需的敏感数据/秘钥/代码都只在步骤(4)到步骤(8)之间存在于内存中,在其余步骤中只以密文形式存在;同时,由于步骤(4)到步骤(8)不可被中断、嵌套、屏蔽,因此可以视作一个原子操作,攻击者无法通过任何软件或漏洞来攻击,而其余步骤,虽然攻击者能够攻击,但并不存在任何明文敏感数据/代码,因此攻击者无法获取任何有意义的敏感数据/代码。此外,攻击者在一般状态下虽然可以通过攻击来修改NMI响应函数指针,但由于攻击者无法获得敏感信息/操作/代码因此无法操作敏感外设或获取敏感信息,只能操作一般外设或者获取一般信息,从而提高数据和代码的安全性。本发明一般操作安全要求不高,可以存在明文信息/代码/配置等。
本实施例所述NMI初步解析和调度函数能以只执行方式存在于OTP中,保证NMI响应无法被修改和获取。
本实施例所述安全应用/操作能调用一般外设驱动,此时一般外设驱动的行为也享有高安全性,但由于本身代码存在于非安全区,外设行为本身可能事先被攻击者篡改。
本实施例所述一般应用能使用安全操作控制敏感外设,改操作本身享有高安全性。
本发明在普通状态下,系统本身不存在任何敏感的代码/数据/秘钥,因此攻击者没有数据可以探测;在真正敏感操作执行的流程中,通过NMI的特性保证攻击者无法采取中断/嵌套/注入应用实现攻击,无法获取任何信息;从而实现通用芯片中开发物联网应用的数据和代码安全性大幅提高。由于完全利用绝大部分内核普遍存在的特性,不需要修改硬件或影响芯片选型,不需要选用带有自带安全单元的MCU或外挂SE芯片,不提高生产和设计成本;可以很好的和硬件保护方案形成互补;同时能很好的保护开发者代码的安全,保护代码知识产权;能够按照需求实现以操作为单位的保护,根据实际应用场景,开发者可以实现性能和安全之间的平衡,从而灵活的调整安全和性能间的平衡,以适应各种应用。
Claims (4)
1.一种利用不可屏蔽中断提高物联网产品安全性的方法,包括一般应用/操作和安全应用/操作,其特征在于:所有安全应用/操作在NMI中执行,具体步骤如下:
(1)系统调用安全应用/操作N;
(2)配置安全应用/操作N的调用标志;
(3)触发NMI,NMI处理函数判断步骤(2)中设置的标志获知被调用的安全应用/操作以及获取参数;
(4)从OTP中获取安全应用/操作N所需的各类秘钥,存放于申请到的资源中;
(5)使用秘钥解密获得明文数据和代码;
(6)执行安全应用/操作N的逻辑,包括数据的处理以及结果的加密和签名;
(7)删除解密得到的数据和代码明文;
(8)清除和释放申请到的资源,退出NMI;
(9)发送安全应用/操作N的结果数据;
(10)结束安全应用/操作N的调用。
2.根据权利要求1所述的一种利用不可屏蔽中断提高物联网产品安全性的方法,其特征在于:所述NMI初步解析和调度函数能以只执行方式存在于OTP中。
3.根据权利要求1或2所述的一种利用不可屏蔽中断提高物联网产品安全性的方法,其特征在于:所述安全应用/操作能调用一般外设驱动。
4.根据权利要求3所述的一种利用不可屏蔽中断提高物联网产品安全性的方法,其特征在于:所述一般应用能使用安全操作控制敏感外设。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610638410.8A CN106295259B (zh) | 2016-08-03 | 2016-08-03 | 一种利用不可屏蔽中断提高物联网产品安全性的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610638410.8A CN106295259B (zh) | 2016-08-03 | 2016-08-03 | 一种利用不可屏蔽中断提高物联网产品安全性的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106295259A CN106295259A (zh) | 2017-01-04 |
CN106295259B true CN106295259B (zh) | 2019-02-12 |
Family
ID=57665576
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610638410.8A Active CN106295259B (zh) | 2016-08-03 | 2016-08-03 | 一种利用不可屏蔽中断提高物联网产品安全性的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106295259B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169737A (zh) * | 2006-10-25 | 2008-04-30 | 松下电器产业株式会社 | 任务切换控制方法以及计算机系统 |
CN103108323A (zh) * | 2011-11-11 | 2013-05-15 | 中兴通讯股份有限公司 | 安全性操作执行系统及执行方法 |
CN104156642A (zh) * | 2014-07-22 | 2014-11-19 | 杭州晟元芯片技术有限公司 | 一种基于安全触控屏控制芯片的安全密码输入系统和方法 |
CN204833402U (zh) * | 2015-07-21 | 2015-12-02 | 杭州晟元数据安全技术股份有限公司 | 二维码动态密码锁 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090204823A1 (en) * | 2008-02-07 | 2009-08-13 | Analog Devices, Inc. | Method and apparatus for controlling system access during protected modes of operation |
-
2016
- 2016-08-03 CN CN201610638410.8A patent/CN106295259B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101169737A (zh) * | 2006-10-25 | 2008-04-30 | 松下电器产业株式会社 | 任务切换控制方法以及计算机系统 |
CN103108323A (zh) * | 2011-11-11 | 2013-05-15 | 中兴通讯股份有限公司 | 安全性操作执行系统及执行方法 |
CN104156642A (zh) * | 2014-07-22 | 2014-11-19 | 杭州晟元芯片技术有限公司 | 一种基于安全触控屏控制芯片的安全密码输入系统和方法 |
CN204833402U (zh) * | 2015-07-21 | 2015-12-02 | 杭州晟元数据安全技术股份有限公司 | 二维码动态密码锁 |
Also Published As
Publication number | Publication date |
---|---|
CN106295259A (zh) | 2017-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106796639B (zh) | 用于可信执行环境的数据挖掘算法 | |
US20220201042A1 (en) | Ai-driven defensive penetration test analysis and recommendation system | |
CN104463569A (zh) | 安全连接支付方法及其装置 | |
WO2015060832A1 (en) | Control flow graph representation and classification | |
CN1869927B (zh) | 设备控制器、控制设备的方法及其程序 | |
CN105224862A (zh) | 一种office剪切板的拦截方法及装置 | |
CN101261664A (zh) | 一种使用软件保护装置存储程序代码实现软件保护的方法 | |
Tabrizi et al. | A model-based intrusion detection system for smart meters | |
CN102136052A (zh) | 一种软件的保护方法 | |
CN105184119B (zh) | 一种软件的安全保护方法 | |
CN113591096A (zh) | 综合检测大数据漏洞和不安全配置的脆弱性扫描系统 | |
Skovoroda et al. | Review of the mobile malware detection approaches | |
CN106295259B (zh) | 一种利用不可屏蔽中断提高物联网产品安全性的方法 | |
CN105229658A (zh) | 数据处理系统的安全装置和安全方法 | |
CN105740709A (zh) | 一种基于权限组合的安卓恶意软件检测方法 | |
US20170041329A1 (en) | Method and device for detecting autonomous, self-propagating software | |
CN114662111B (zh) | 一种恶意代码软件基因同源性分析方法 | |
US11876788B2 (en) | Mobile device system and method for preventing network signal interception and hacking | |
CN105162765A (zh) | 一种基于断尾求生的云数据安全实现方法 | |
CN106411816B (zh) | 一种工业控制系统、安全互联系统及其处理方法 | |
Meshram et al. | Security in embedded systems: Vulnerabilities pigeonholing of attacks and countermeasures | |
CN202720652U (zh) | 一种用于信息安全防护的双机计算机系统 | |
CN105975860A (zh) | 一种信任文件管理方法、装置及设备 | |
CN107368712B (zh) | 软件的保护方法和系统 | |
CN106127080B (zh) | 一种大数据资源的保护方法 |
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 |