一种基于UEFI的终端实时控制系统和方法
技术领域
本发明属于计算机安全技术领域,涉及一种基UEFI固件,在开机引导过程中和操作系统启动后,对终端进行实时控制的系统和方法。
背景技术
目前,在计算机安全和通信领域,对计算机终端的控制主要通过服务器远程发布控制指令,由运行于客户端操作系统上的特定程序进行接收和执行,也有直接通过简单控制电路对终端进行控制。在操作系统层对应用程序进行实时保护,特别是对关键终端控制程序进行保护,有着以下的不足,主要包括:
在计算机终端更换硬盘、Flash等存储被保护程序的装置后,将不能自动地恢复终端控制程序,对终端进行监控。
在对硬盘、Flash等被保护程序的存储空间进行重新分区后,计算机终端将不能自动地恢复终端控制程序,对终端进行监控。
在对硬盘、Flash等被保护程序的存储空间进行格式化后,计算机终端将不能自动地恢复终端控制程序,对终端进行监控。
当被保护可执行程序文件不属于操作系统自带软件的情况下,在计算机终端重新安装操作系统后,将不能自动地恢复终端控制程序,对计算机终端进行监控。
当终端的操作系统中的特定终端控制软件被病毒或木马篡改和删除后,将不能自动地进行恢复,此外,在操作系统中运行的终端控制软件有可能被终端用户非授权地中止。
发明内容
有本发明的目的是为了克服已有技术的缺陷,为了解决在开机引导过程中和操作系统启动后,无法在固件层对终端进行实时控制的问题,提出一种基于UEFI的终端实时控制系统和方法。
一种基于UEFI的终端实时控制系统,包括终端实时控制驱动模块、终端控制主程序和终端实时控制系统服务端;
所述终端实时控制系统的终端实时控制驱动模块是在固件层控制终端的驱动模块,主要包括自我恢复子模块、控制指令解析子模块、控制指令执行子模块、操作系统及网络接口子模块四个部分;其中,自动恢复子模块用于对实时终端控制驱动模块和终端控制主程序进行恢复,控制策略解析用于对接收到的控制指令进行辨析,明确需要执行哪些终端控制指令;控制指令执行模块用于执行相应的控制指令;操作系统及网络接口子模块用于提供终端实时控制系统驱动模块与操作系统中终端控制主程序的数据交互接口,以及终端控制主程序与服务端的数据交互接口;终端实时控制驱动模块可以通过操作系统中的终端控制主程序进行控制,也可以通过系统中断自动调用;
所述终端实时控制系统的终端控制主程序,终端控制主程序运行于操作系统,接收和执行服务端指令;终端控制主程序包括运行状态交互接口子模块、终端控制策略执行子模块、通信接口子模块、定时子模块;运行状态交互接口子模块用于终端控制主程序与终端实时控制驱动模块进行状态交互;通信接口子模块用于终端控制主程序与服务器进行网络通信;终端控制策略执行子模块用于执行从服务器接收到的指令;定时子模块用于在指定的时间间隔内,调用终端实时控制系统驱动模块;
所述终端实时控制系统的终端实时控制系统服务端包括终端控制服务、策略管理服务和终端信息展示服务;其中,终端控制服务用于向客户端发送相应的控制指令;策略管理服务用于制定终端控制策略;终端信息展示用于展示当前接入终端的状态。
所述一种基于UEFI的终端实时控制系统的实现过程如下:
步骤一、计算机终端开机上电后,开始进入UEFI的开机引导过程,操作系统启动;
步骤二、在固件层加载所需的驱动;
步骤三、在固件层检测实时驱动模块是否正常;如果正常则进入步骤四;如果驱动模块出现异常,则自动进行恢复和重启;
步骤四、检测是否已有对终端进行控制的策略;如果已有既定控制策略,则转入步骤五;否则直接启动操作系统;
步骤五、执行既定的终端控制策略;
步骤六、启动操作系统;
步骤七、终端控制主程序自动运行;
步骤八、检测终端控制主程序运行状态是否正确;如果正常转入步骤九,否则自动恢复并重启;
步骤九、如果未检测到停止标识,则继续执行;如果检测到停止标识,则终端实时控制流程结束。
有益效果:
1、本发明在计算机终端更换硬盘、Flash等存储被保护程序的装置后,能够自动地重新恢复终端控制程序,对终端进行实时监控。
2、在对硬盘、Flash等被保护程序的存储空间进行重新分区后,计算机终端将能够自动地恢复终端控制程序,对终端进行实时监控。
3、在对硬盘、Flash等被保护程序的存储空间进行格式化后,计算机终端将能够自动地重新恢复终端控制程序,对终端进行实时监控。
4、在计算机终端重新安装操作系统后,能够自动地重新恢复终端控制程序,对终端进行实时监控。当终端控制软件被病毒或木马篡改和删除后,能够自动地进行恢复。在用户卸载终端控制软件后,将能够自动恢复终端控制软件,并对终端进行实时监控。
附图说明
图1为基于UEFI的终端实时控制总体框架图。
图2为终端实时控制系统框架图。
图3为终端实时控制流程图。
具体实施方式
下面结合附图并举实施例,对本发明进行详细描述。
如附图1所示,本发明的一种基于UEFI的终端实时控制系统,包括终端实时控制驱动模块、终端控制主程序和终端实时控制系统服务端;
如附图2所示,所述终端实时控制系统的终端实时控制驱动模块是在固件层控制终端的驱动模块,主要包括自我恢复子模块、控制指令解析子模块、控制指令执行子模块、操作系统及网络接口子模块四个部分;其中,自动恢复子模块用于对实时终端控制驱动模块和终端控制主程序进行恢复,控制策略解析用于对接收到的控制指令进行辨析,明确需要执行哪些终端控制指令;控制指令执行模块用于执行相应的控制指令;操作系统及网络接口子模块用于提供终端实时控制系统驱动模块与操作系统中终端控制主程序的数据交互接口,以及终端控制主程序与服务端的数据交互接口;终端实时控制驱动模块可以通过操作系统中的终端控制主程序进行控制,也可以通过系统中断自动调用;
所述终端实时控制系统的终端控制主程序,终端控制主程序运行于操作系统,接收和执行服务端指令;终端控制主程序包括运行状态交互接口子模块、终端控制策略执行子模块、通信接口子模块、定时子模块;运行状态交互接口子模块用于终端控制主程序与终端实时控制驱动模块进行状态交互;通信接口子模块用于终端控制主程序与服务器进行网络通信;终端控制策略执行子模块用于执行从服务器接收到的指令;定时子模块用于在指定的时间间隔内,调用终端实时控制系统驱动模块;
所述终端实时控制系统的终端实时控制系统服务端包括终端控制服务、策略管理服务和终端信息展示服务;其中,终端控制服务用于向客户端发送相应的控制指令;策略管理服务用于制定终端控制策略;终端信息展示用于展示当前接入终端的状态。
本发明在应用前,需要在计算机终端先行部署,可以选用的方法包括:
(1)在UEFI核心镜像中添加驱动模块。
(2)在UEFI核心镜像中挂载Option ROM模块。
(3)在可信卡等其他外围设备中挂载驱动模块。
如附图3所示,本发明的一种基于UEFI的终端实时控制系统的实现过程如下:
步骤一、计算机终端开机上电后,开始进入UEFI的开机引导过程,操作系统启动;
步骤二、在固件层加载所需的驱动;
步骤三、在固件层检测实时驱动模块是否正常;如果正常则进入步骤四;如果驱动模块出现异常,则自动进行恢复和重启;
步骤四、检测是否已有对终端进行控制的策略;如果已有既定控制策略,则转入步骤五;否则直接启动操作系统;
步骤五、执行既定的终端控制策略;
步骤六、启动操作系统;
步骤七、终端控制主程序自动运行;
步骤八、检测终端控制主程序运行状态是否正确;如果正常转入步骤九,否则自动恢复并重启;
步骤九、如果未检测到停止标识,则继续执行;如果检测到停止标识,则终端实时控制流程结束。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。