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