CN103955649B - 一种安全启动终端设备的方法 - Google Patents

一种安全启动终端设备的方法 Download PDF

Info

Publication number
CN103955649B
CN103955649B CN201410222037.9A CN201410222037A CN103955649B CN 103955649 B CN103955649 B CN 103955649B CN 201410222037 A CN201410222037 A CN 201410222037A CN 103955649 B CN103955649 B CN 103955649B
Authority
CN
China
Prior art keywords
record
code
sector
hard disk
boot
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
Application number
CN201410222037.9A
Other languages
English (en)
Other versions
CN103955649A (zh
Inventor
张志彬
王庆红
申敏
窦如婷
张继钢
秦高原
冷祥彪
袁皓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China South Power Grid International Co ltd
Original Assignee
China South Power Grid International Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China South Power Grid International Co ltd filed Critical China South Power Grid International Co ltd
Priority to CN201410222037.9A priority Critical patent/CN103955649B/zh
Publication of CN103955649A publication Critical patent/CN103955649A/zh
Application granted granted Critical
Publication of CN103955649B publication Critical patent/CN103955649B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

提供了一种安全启动终端设备的方法,包括加电自检,硬件检测,启动操作系统,其特征在于,所述启动操作系统包括:读取硬盘第0个扇区的引导代码至内存;检查引导代码的正确性;根据所述引导代码获得硬盘分区记录;检查硬盘分区记录的正确性;如果硬盘分区记录正确,则根据硬盘分区记录获得操作系统引导记录;检查操作系统引导记录的正确性;如果操作系统引导记录正确,则根据操作系统引导记录启动操作系统并释放控制权给操作系统。本发明减少了终端设备启动异常风险的机率。

Description

一种安全启动终端设备的方法
技术领域
本发明涉及计算机领域,尤其涉及终端设备启动的方法,特别涉及一种安全启动终端设备的方法。
背景技术
随着计算机的普及和互联网的迅猛发展,世界各国的政治、军事、经济、文化和百姓的生活越来越离不开计算机和互联网。计算机信息系统己经逐步成为整个国家经济运行的命脉,围绕系统安全的研究也成为最热门的方向之一。后门技术也相应而生,这种技术可以很好的隐藏恶意代码,并且在系统最高的权限下实施一些恶意行为,因此严防死守这种后门技术就显得尤为重要了。随着后门技术的流行,时时刻刻威胁着计算机用户的安全,因此研究这种技术并且提出相应的检测方法就显现出意义的重大。
基于Windows启动过程的技术,把存放地由传统的操作系统磁盘文件扩展到了硬件BIOS芯片、硬盘主引导扇区等位置,同时将自身的启动提前到了Windows系统内核启动相同的级别,甚至还要更早的阶段。
Windows启动过程的预备阶段是指:Windows操作系统还没有加载和运行之前计算机最初的一个引导过程,这个过程是由BIOS的代码完成。按顺序可将Windows启动过程的预备阶段分为如下几个重要步骤:当按下电源开关时,电源就开始向主板和其他设备供电。芯片组检测到电源已经开始稳定供电时,CPU马上就从地址FFFFOH处开始执行指令,无论是Award的BIOS还是AMI的BIOS,此处存放的都是一条跳转指令,跳到系统的BIOS代码处执行。系统BIOS的启动代码首先进行加电自检(POST),这个阶段的主要任务是检测系统中一些关键设备是否存在及其能否正常工作。POST技术之后就调用其他代码进行更完整的硬件检测。接下来系统BIOS将查找显卡的BIOS之后就调用它的初始化代码,系统BIOS接着会查找其它设备的BIOS程序并进行初始化。系统BIOS的启动代码将进行它的最后一项工作。即根据用户指定的启动顺序从软盘、硬盘、或光驱启动。以C盘启动为例,系统将读取并执行硬盘上的主引导记录,主引导记录接下来从分区中找到第一个活动分区,然后读取并执行这个活动分区的引导记录,分区引导记录会将负责读取并执行I0.SYS,之后将把Windows操作系统的NTLDR文件读到内存并执行,NTLDR一之后的执行流程便是属于Windows操作系统的执行阶段。
尤其是随着环境保护意识的逐渐加强,水质治理与维护引起了更为广泛的重视,水质在线仪器随之发展,在线监测系统应运而生。由于在线监测的实时性,对在线监测计算机设备的硬件和软件要求也不断提高,尤其是需要通过网络实现整个监测系统内部的数据传输与共享。然而由于网络的接入,不可避免地会遭到计算机病毒的入侵,但是作为在线监测用计算机终端设备,一旦感染病毒,遭受的损失是巨大的,因此亟需在计算机终端设备启动时进行监测,防患于未然。
虽然现有技术中提出了大量的检测方法和防御方法,但是针对操作系统启动阶段的监测并不完善,特别是针对隐蔽性强破坏力大的恶意攻击现有技术并未提出很好的解决办法。
发明内容
为了解决现有技术中不能有效地针对终端设备启动阶段,尤其是操作系统启动阶段,防止病毒侵入造成破坏的技术问题,本发明提供了一种安全启动终端设备的方法,包括加电自检,硬件检测,启动操作系统,其特征在于,所述启动操作系统包括S1)读取硬盘第0个扇区的引导代码至内存;S2)检查引导代码的正确性;S3)根据所述引导代码获得硬盘分区记录;S4)检查硬盘分区记录的正确性;S5)如果硬盘分区正确,则根据硬盘分区记录获得操作系统引导记录;S6)检查操作系统引导记录的正确性;S7)如果操作系统引导记录正确,则根据操作系统引导记录启动操作系统并释放控制权给操作系统。
优选地,其中,所述检查引导代码的正确性包括:读取硬盘保留扇区中的保存的标记代码至内存;如果所述引导代码中的前四个字节与所述标记代码相同,则所述引导代码正确,否则所述引导代码不正确。
优选地,其中,如果所述引导代码不正确,则进行以下处理:读取硬盘第1至第63个扇区的代码至内存;逐一读取第1至第63个扇区的代码的前四个字节,直至找到代码的前四个字节与所述标记代码相同的第i个扇区,其中,1<=i<=63;读取硬盘第i个扇区的代码并覆盖硬盘第0个扇区的引导代码;将第1至第63个扇区的代码全部置零;清空内存,并返回步骤S1)。
优选地,其中,所述检查硬盘分区的正确性包括:读取硬盘保留扇区中的备份硬盘分区记录;如果所述硬盘分区记录与所述备份硬盘分区记录一致则硬盘分区记录正确,否则硬盘分区记录不正确。
优选地,,其中,如果硬盘分区记录不正确,则根据备份硬盘分区记录获得操作系统引导记录,继续执行步骤S6)。
优选地,其中,所述检查操作系统的引导记录的正确性包括:读取硬盘保留扇区中的备份操作系统引导记录;如果所述操作系统引导记录与所述备份操作系统引导记录一致则操作系统的引导记录正确,否则操作系统的引导记录不正确。
优选地,,其中,如果操作系统的引导记录不正确,则根据备份操作系统引导记录启动操作系统并释放控制权给操作系统。
本申请提供的安全启动终端设备的方法通过分析出病毒感染的主要特点,结合保留扇区的预备份处理,从而从根本上解决了操作系统启动阶段所产生的一系列安全问题。通过使用保留扇区的标记代码的使用,仅需比对四个字节的代码即可判断是否引导代码遭到病毒感染,使得病毒感染的判断变得更为快速,对磁盘前64个扇区的分析处理使得病毒处理的准确度更高,并且减少了对保留扇区的容量需求,减少了异常风险的机率。
附图说明
所包括的附图用于进一步理解本发明,其作为说明书的一个组成部分并与说明书一起解释本发明的原理,在附图中:
图1为本发明优选实施例的安全启动终端设备的流程图。
具体实施方式
图1是本发明优选实施例的安全启动终端设备的流程图。在步骤S1),首先BIOS通过中断指令读取硬盘0磁道0柱面0扇区(本申请统称为第0个扇区)的引导代码至内存,由于引导代码的固化设置,分析所有操作系统和病毒代码,如果引导代码感染病毒,那么引导代码的前四个字节必然发生改变,因此,本申请中通过将引导代码的前四个字节在操作系统安装时即保存在保留扇区中,使得判断引导代码是否感染病毒变得更为简单。另外,由于不必保留所有引导代码的备份,对保留扇区的容量要求也不高,避免保留扇区安全风险。根据本发明的优选实施例,首先,在步骤S2)检查引导代码的正确性。所述检查引导代码的正确性包括:读取硬盘保留扇区中的保存的标记代码至内存;如果所述引导代码中的前四个字节与所述标记代码相同,则所述引导代码正确,否则所述引导代码不正确。通过分析操作系统在磁盘中的存储方式以及病毒代码的内容,病毒代码感染的范围为磁盘的前64个扇区(第0至第63个扇区),因此将保留扇区设置为磁盘非前64个扇区的扇区,例如设置为磁盘的最后一个扇区或最后的两个扇区,由于现在磁盘的容量,磁盘的容量显然地明显多于64个扇区,因此足以保证足够的扇区设置为保留扇区,另外,通过软硬件设置保留扇区仅在操作系统安装时可被写入备份数据(包括标记代码、备份硬盘分区记录以及备份操作系统引导记录),其他时间不能被写入。在本发明中,如果所述引导代码不正确,则进行以下处理:读取硬盘第1至第63个扇区的代码至内存;逐一读取第1至第63个扇区的代码的前四个字节,直至找到代码的前四个字节与所述标记代码相同的第i个扇区,其中,1<=i<=63,i是整数;读取硬盘第i个扇区的代码并覆盖硬盘第0个扇区的引导代码;将第1至第63个扇区的代码全部置零;清空内存,并返回步骤S1)。
在步骤S3)根据所述引导代码获得硬盘分区记录;通过执行引导代码可以获得硬盘分区记录。在步骤S4)检查硬盘分区记录的正确性,其中,所述检查硬盘分区记录的正确性包括:读取硬盘保留扇区中保存的的备份硬盘分区记录;如果所述硬盘分区记录与所述备份硬盘分区记录一致则硬盘分区记录正确,否则硬盘分区记录不正确。在步骤S5)如果硬盘分区记录正确,则从硬盘分区中找到第一个活动分区,并在第一个活动分区中获得操作系统引导记录,即根据硬盘分区记录获得操作系统引导记录,其中,如果硬盘分区记录不正确,则根据备份硬盘分区记录获得操作系统引导记录,继续执行步骤S6)。在步骤S6)检查操作系统引导记录的正确性;其中,所述检查操作系统的引导记录的正确性包括:读取硬盘保留扇区中的备份操作系统引导记录;如果所述操作系统引导记录与所述备份操作系统引导记录一致则操作系统的引导记录正确,否则操作系统的引导记录不正确。
在步骤S7)如果操作系统引导记录正确,则根据操作系统引导记录启动操作系统并释放控制权给操作系统。其中,如果操作系统的引导记录不正确,则根据备份操作系统引导记录启动操作系统并释放控制权给操作系统。
本发明中根据操作系统引导记录启动操作系统并释放控制权给操作系统包括:执行操作系统的引导记录把操作系统装载文件读取至内容,然后执行所述操作系统装载文件,也即释放控制权给操作系统。根据备份操作系统的引导记录启动操作系统并释放控制权给操作系统包括:执行备份操作系统的引导记录把操作系统装载文件读取至内容,然后执行所述操作系统装载文件,也即释放控制权给操作系统。
本发明通过使用保留扇区的标记代码的使用,仅需比对四个字节的代码即可判断是否引导代码遭到病毒感染,使得病毒感染的判断变得更为快速,对磁盘前64个扇区的分析处理使得病毒处理的准确度更高,并且减少了对保留扇区的容量需求,减少了异常风险的机率。
以上关于本发明的描述仅仅是示例性的,并且主要针对本发明要解决的技术问题所涉及的必要技术特征进行详细描述,对于本领域技术人员应当清楚地知道或容易想到的关于本发明的其他相关细节不做赘述。
应该理解,上述实施例是针对特定实施例进行的详细描述,但是本发明并不局限于该实施例,在不脱离本发明精神和范围的情况下,可以对本发明做出各种各样的改进和变型。任何熟悉本技术领域的技术人员在本发明所披露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。

Claims (6)

1.一种安全启动终端设备的方法,包括加电自检,硬件检测,启动操作系统,其特征在于,所述启动操作系统包括:
S1)读取硬盘第0个扇区的引导代码至内存;
S2)检查引导代码的正确性,包括:读取硬盘保留扇区中的保存的标记代码至内存;如果所述引导代码中的前四个字节与所述标记代码相同,则所述引导代码正确,否则所述引导代码不正确,其中,所述保留扇区设置为硬盘非前64个扇区的扇区,通过软硬件设置保留扇区仅在操作系统安装时可被写入备份数据,包括标记代码、备份硬盘分区记录以及备份操作系统引导记录,其他时间不能被写入;
S3)根据所述引导代码获得硬盘分区记录;
S4)检查硬盘分区记录的正确性;
S5)如果硬盘分区记录正确,则根据硬盘分区记录获得操作系统引导记录;
S6)检查操作系统引导记录的正确性;
S7)如果操作系统引导记录正确,则根据操作系统引导记录启动操作系统并释放控制权给操作系统。
2.根据权利要求1所述的安全启动终端设备的方法,其中,如果所述引导代码不正确,则进行以下处理:读取硬盘第1至第63个扇区的代码至内存;
逐一读取第1至第63个扇区的代码的前四个字节,直至找到代码的前四个字节与所述标记代码相同的第i个扇区,其中,1<=i<=63;
读取硬盘第i个扇区的代码并覆盖硬盘第0个扇区的引导代码;
将第1至第63个扇区的代码全部置零;
清空内存,并返回步骤S1)。
3.根据权利要求1所述的安全启动终端设备的方法,其中,所述检查硬盘分区记录的正确性包括:
读取硬盘保留扇区中保存的的备份硬盘分区记录;
如果所述硬盘分区记录与所述备份硬盘分区记录一致则硬盘分区记录正确,否则硬盘分区记录不正确。
4.根据权利要求3所述的安全启动终端设备的方法,其中,如果硬盘分区记录不正确,则根据备份硬盘分区记录获得操作系统引导记录,继续执行步骤S6)。
5.根据权利要求1所述的安全启动终端设备的方法,其中,所述检查操作系统的引导记录的正确性包括:
读取硬盘保留扇区中的备份操作系统引导记录;
如果所述操作系统引导记录与所述备份操作系统引导记录一致则操作系统的引导记录正确,否则操作系统的引导记录不正确。
6.根据权利要求5所述的安全启动终端设备的方法,其中,如果操作系统的引导记录不正确,则根据备份操作系统引导记录启动操作系统并释放控制权给操作系统。
CN201410222037.9A 2014-05-23 2014-05-23 一种安全启动终端设备的方法 Active CN103955649B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410222037.9A CN103955649B (zh) 2014-05-23 2014-05-23 一种安全启动终端设备的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410222037.9A CN103955649B (zh) 2014-05-23 2014-05-23 一种安全启动终端设备的方法

Publications (2)

Publication Number Publication Date
CN103955649A CN103955649A (zh) 2014-07-30
CN103955649B true CN103955649B (zh) 2017-03-08

Family

ID=51332924

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410222037.9A Active CN103955649B (zh) 2014-05-23 2014-05-23 一种安全启动终端设备的方法

Country Status (1)

Country Link
CN (1) CN103955649B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105787311A (zh) * 2014-12-22 2016-07-20 联想(上海)信息技术有限公司 存储设备管理方法、装置及电子设备
CN105988831B (zh) * 2015-02-09 2020-01-31 联想(上海)信息技术有限公司 系统启动方法、装置及电子设备
CN106127029B (zh) * 2016-06-22 2019-03-22 珠海豹趣科技有限公司 一种安全应用程序的启动方法、装置及电子设备
CN107766196B (zh) * 2016-08-19 2021-01-29 阿里巴巴集团控股有限公司 对计算设备进行启动检查的方法与设备
CN109582370B (zh) * 2018-11-01 2022-07-19 浙江大华技术股份有限公司 一种nor flash嵌入式设备的启动方法及装置
CN112562217A (zh) * 2020-12-16 2021-03-26 恒银金融科技股份有限公司 自助终端控制系统的流程引擎设计、通讯方式、工作方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884026A (en) * 1995-07-28 1999-03-16 Samsung Electronics Co., Ltd. Personal computer having a security function, a method of implementing the security function, and methods of installing and detaching a security device to/from a computer
CN1731355A (zh) * 2005-08-16 2006-02-08 中国船舶重工集团公司第七○九研究所 硬盘主引导区程序病毒的防御方法
CN101334827A (zh) * 2008-07-10 2008-12-31 上海罗斯通讯技术发展有限公司 磁盘加密方法及实现该方法的磁盘加密系统
CN102830990A (zh) * 2012-07-20 2012-12-19 大唐移动通信设备有限公司 一种计算机系统启动方法及计算机终端
CN102867141A (zh) * 2012-09-29 2013-01-09 北京奇虎科技有限公司 对主引导记录恶意程序进行处理的方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884026A (en) * 1995-07-28 1999-03-16 Samsung Electronics Co., Ltd. Personal computer having a security function, a method of implementing the security function, and methods of installing and detaching a security device to/from a computer
CN1731355A (zh) * 2005-08-16 2006-02-08 中国船舶重工集团公司第七○九研究所 硬盘主引导区程序病毒的防御方法
CN101334827A (zh) * 2008-07-10 2008-12-31 上海罗斯通讯技术发展有限公司 磁盘加密方法及实现该方法的磁盘加密系统
CN102830990A (zh) * 2012-07-20 2012-12-19 大唐移动通信设备有限公司 一种计算机系统启动方法及计算机终端
CN102867141A (zh) * 2012-09-29 2013-01-09 北京奇虎科技有限公司 对主引导记录恶意程序进行处理的方法及装置

Also Published As

Publication number Publication date
CN103955649A (zh) 2014-07-30

Similar Documents

Publication Publication Date Title
CN103955649B (zh) 一种安全启动终端设备的方法
CN102663312B (zh) 一种基于虚拟机的rop攻击检测方法及系统
CN108090346B (zh) 一种基于数据流监控的代码复用攻击防御方法及系统
Graziano et al. Hypervisor memory forensics
KR101835250B1 (ko) 트랜잭셔널 메모리를 사용한 비인가 메모리 수정 및 액세스의 검출
US20180068115A1 (en) System and method of detecting malicious code in files
CN106030512B (zh) 计算装置的初始化跟踪
US20190042730A1 (en) Systems, Methods, And Apparatus For Detecting Control Flow Attacks
RU2628921C1 (ru) Система и способ выполнения антивирусной проверки файла на виртуальной машине
US10776491B2 (en) Apparatus and method for collecting audit trail in virtual machine boot process
US7555592B1 (en) Kernel acceleration technology for virtual machine optimization
US10380336B2 (en) Information-processing device, information-processing method, and recording medium that block intrusion of malicious program to kernel
US10089474B2 (en) Virtual machine introspection
CN108920253B (zh) 一种无代理的虚拟机监控系统和监控方法
CN103793651A (zh) 基于Xen虚拟化的内核完整性检测方法
CN101499016B (zh) 虚拟机监视器、虚拟机系统及客户操作系统进程处理方法
CN107506638B (zh) 一种基于硬件机制的内核控制流异常检测方法
US9176821B2 (en) Watchpoint support system for functional simulator
US20130185602A1 (en) Heap dump occurrence detection
CN103996004B (zh) 一种基于虚拟化的高可用系统设计方法
CN111444504A (zh) 一种用于软件运行时自动识别恶意代码的方法及装置
US11886589B2 (en) Process wrapping method for evading anti-analysis of native codes, recording medium and device for performing the method
CN106095631B (zh) 一种基于有限状态机实现的多周期非流水线cpu动态调试方法
CN113010885B (zh) 一种检测伪装起始地址的内核线程的方法及装置
KR102183649B1 (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
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Zhang Zhibin

Inventor after: Wang Qinghong

Inventor after: Shen Min

Inventor after: Dou Ruting

Inventor after: Zhang Jigang

Inventor after: Qin Gaoyuan

Inventor after: Leng Xiangbiao

Inventor after: Yuan Hao

Inventor before: Mao Li

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20170208

Address after: 510062 Dongfeng East Road, Dongfeng, Guangdong, Guangzhou, Zhejiang Province, No. 6

Applicant after: China South Power Grid International Co.,Ltd.

Address before: 610041 A, building, No. two, Science Park, high tech Zone, Sichuan, Chengdu, China 103B

Applicant before: SICHUAN JIUCHENG INFORMATION TECHNOLOGY Co.,Ltd.

C14 Grant of patent or utility model
GR01 Patent grant