APP下载

移动设备智能管理平台的设计与实现

2021-07-20刘歆宁

软件工程 2021年6期

摘  要:针对移动智能设备在移动办公等方面遇到的管控难题,基于移动设备管理平台和移动安全门户提出了一种多维一体化的管控方案,实现对智能终端进行统一管理和安全管控。方案通过Openfire(即时通讯框架)传输管控命令,并结合token(令牌)动态验证方式及Redis(远程字典服务)消息队列技术,在管理平台和移动门户之间建立管控命令和安全策略的传输机制,并实现对移动数据进行区域隔离和分片加密存储。方案不仅能精准地发送管控信息,而且能根据管控策略灵活管理移动设备的软硬件能力,同时对移动数据的加密处理也有效降低了移动数据被窃取的风险。

关键词:移动管理;消息队列;Openfire框架;分片加密

中图分类号:TP311     文献标识码:A

Abstract: Aiming at management and control problems of smart mobile devices in mobile office, this paper proposes a multi-dimensional integrated management and control solution to realize unified management and security control of smart terminals based on mobile device management platforms and mobile security portals. In this solution, Openfire (instant messaging framework) is used to transmit control commands; token dynamic verification method and Redis (Remote Dictionary Service) message queue technology are used to establish transmission mechanism of control commands and security policies between management platform and mobile portal, so to realize regional isolation and fragmented encrypted storage of mobile data. This solution can not only accurately send management and control information, but also flexibly manage software and hardware capabilities of mobile devices according to the management and control strategies. At the same time, encryption processing of mobile data also effectively reduces the risk of mobile data's being stolen.

Keywords: mobile management; message queue; Openfire framework; fragment encryption

1   引言(Introduction)

移動网络的全球覆盖使得人们无论是在日常生活、内部办公、客户服务中还是在外执勤,都可以在任何时间、任何地点使用移动设备处理工作。但是随着工作区域的变动和工作节奏的加快,移动设备管理越来越多地陷入时间限制、地域限制、管理效率下降等困境。同时移动设备和操作系统繁杂多样、应用种类层出不穷、软件病毒快速传播等状况进一步加剧了企业移动管理的复杂性,使得信息越来越敏感,风险与日俱增,导致移动化进程面临着诸多挑战[1-3]。因此,针对在移动管理过程中遇到的种种难题,本文提出了一整套移动设备管理方案,以简化移动管理并保障移动安全,对接入信息系统的移动资源进行统一管理和安全管控。

2  整体架构及技术方案(Overall architecture and technical solutions)

本方案通过移动管理平台对移动资源进行统一管理和安全管控,如图1所示。整体方案由移动管理平台和移动安全门户构成,在移动管理平台和移动安全门户之间使用Redis消息服务器建立消息传输队列[4],移动管理平台能够通过消息队列向移动门户发送管控消息和安全策略。移动管理平台包括移动设备管理、移动应用管理和移动数据管理三个主要功能模块:移动设备管理能够对移动设备进行远程控制,如锁屏、禁用摄像头、设置时间地理围栏等操作,并采集设备的使用情况和地理位置信息;移动应用管理对移动应用进行授权管控;移动数据管理保障数据安全传输。移动安全门户负责对移动应用进行全生命周期的安全管理,如应用黑白名单设置、应用数据安全存储等,并在策略管理、日志管理、告警管理等基础服务之上完成对移动设备的一体化安全管控。

3   关键技术实现(Implementation of key technologies)

本方案的移动管理平台包括前端页面和后台服务,如图2所示。前端页面主要是Mobile Client(移动客户端)和Web Console(Web控制台)。Mobile Client是一个移动客户端,主要包括UI、与服务端交互的Service、安全容器以及持久化等;Web Console是图形化界面,通过调用服务端接口完成管控。管理平台的后台服务主要包含两大服务:Message Process Service(消息处理服务)负责向移动门户发送管控命令和策略;Business Process Service(业务处理服务)负责处理移动设备管控的业务,包括策略服务、命令服务等业务组件,以及SocketIO、WebService等基础组件。

3.1   移动管控技术

移动管理平台通过发送消息对移动设备进行管控,本方案使用高效的即时通信服务器Openfire完成管控消息的传输[5]。移动管理平台与移动门户间互相发送访问请求时,需要用Token进行身份有效性认证,只有在有效时间内并且验证合法后,管理平台才能与移动设备进行管控交互。在实际的管控过程中,移动设备经常不在线,导致管控消息无法发送,所以为了进一步保障管控命令及策略能够安全、及时精准地发送到移动设备,本文提出了一套消息防丢失机制,实现方案如图3所示。具体的方案步骤如下:

(1)建立一个消息队列用于缓存所有管控消息,本方案所使用的系统是可作为消息队列的Redis存储系统。

(2)Web Console通过Token Service的有效性验证后,将管控消息发送到Business Process Service;Business Process Service在Redis消息队列中插入此条管控消息,Openfire通过发送唤醒信号判断移动设备是否在线,当设备在线时,Message Process Service按顺序读取Redis中的消息。

(3)Message Process Service通过Openfire将读取的消息发送给移动门户,并将已取走的消息从Redis消息队列中删除。

(4)移动门户经过Token Service的有效认证后,通过Openfire将return消息返回给Message Process Service。

3.2   地理围栏策略技术

地理围栏服务划分出的区域是被网格化的,本方案采用移动定位技术LBS通过WIFI和GPS获取设备的纬度和经度[6]。地理围栏采用“离线+在线”相结合的地理围栏服务,基于位置的提醒和离在线结合的方式,实现了功耗的大幅降低。当移动设备离敏感区域较远时,会进行距离判断,在设备到达围栏周围时,再请求在线定位,根据配置的安全策略判断是否触发地理围栏,具体的算法策略如下:

(1)划定一个圆形的区域,得到圆心的坐标。

(2)通过圆形区域获得半径,设有两点赤道坐标分别为和,则根据Haversine公式计算两点之间的球面角距离[7],如下面公式所示:

(3)根据距离设定管控策略:当时,即移动设备进入了地理围栏,则可对移动设备执行锁定、禁用网络及移动应用等动作;当时,即移动设备离开地理围栏,则可对移动设备执行解除锁定、开启网络及移动應用等动作,具体的动作可根据具体的业务逻辑设定。

3.3   移动应用安全技术

移动安全门户提供了统一的应用访问入口,个人应用数据与隔离应用数据保存在不同的区域以保护数据安全,个人应用数据保存在普通存储区,隔离应用数据保存在隔离存储区。为此,在移动安全门户采用了Hook技术进行映射,Hook函数可以替换文件系统函数的行为,即把文件系统程序替换成要修改的代码片段[8],具体的步骤为:

(1)对系统文件的操作函数进行Hook操作,修改文件保存的路径,即映射到隔离区,重新生成文件保存路径;根据文件路径创建数据文件,完成应用数据文件的安全存储。

(2)为了进一步地保证移动数据的安全,本方案对移动数据采用了分片加密存储技术,在隔离存储区域读取移动数据文件,判断文件头是否有加密标志,若有加密标志,则表示此数据文件已加密完成,若没有则需要对此文件进行加密处理。

(3)将未加密的数据文件分片,每个小文件都对应一个索引,每个索引进一步组成索引文件,通过读取索引文件即可反向获得完成的移动数据文件,对每个小文件和索引文件分别使用AES加密算法进行加密[9],建立一个双保险的机制以保证移动数据的安全可靠。

(4)采用复合混沌序列-AES加密算法对各个文件进行加密[7],主要算法思想是将混沌系统与AES算法框架相结合,构建Logistic混沌系统映射产生的混沌序列组合成的复合混沌序列R1;再对混沌序列R1依次进行字节替换、行移位和列混合,继而形成混沌序列R2;最后将R2作为明文分组AES块加密算法的初始动态密钥。算法的基本流程如图4所示。

4   实验结果与分析(Experimental results and analysis)

移动管理平台和移动门户均采用Java语言并以Eclipse为开发工具。移动设备的操作系统采用Android 8.0版本,开发平台为Windows 10。移动设备管理平台部署在Tomcat的Web服务器上,测试网络为移动网络。Web服务启动后,移动设备通过移动门户安全登录,接入移动管理平台中,平台显示所有接入的设备信息,并对设备进行安全管控,如图5所示。移动门户管控两种类型的应用:管理平台发布的移动应用和移动设备通过其他途径安装的移动应用。

为了进一步保障系统的管控命令顺利发送,本方案使用专用软件模拟50,000 个客户端与服务器同时建立连接,选取其中2,500 个客户端进行唤醒,通过观察服务器控制台确认50,000 个连接建立情况。表1为接收消息(模拟并发)的情况,显示了服务器消息推送效率和成功率。

对性能测试的结果进行分析可以得出:50,000 个并发的响应速度能够满足绝大多数场景的管控需求,在测试过程中没有丢包的现象,能较好地保障系统的实时性和可靠性。

5   结论(Conclusion)

采用本文的管理方案后,无论是企事业单位还是个人,都可以通过移动设备管理平台对设备进行定期信息采集、实时远程控制等,实现对设备进行全生命周期管理;通过配置不同安全策略,能够对在不同时间空间所发生的违规行为实现多维多角度的安全管理;通过企业应用与个人应用的完全隔离、安全接口的实现和非法访问的限制以实现移动应用的安全隔离;通过一站式移动应用部署、应用升级与推送、图表式统计分析等为移动IT管理提供支持,真正做到了移动可管可控。

参考文献(References)

[1] 李江华,邱晨.Android恶意软件检测方法研究综述[J].计算机应用研究,2019,36(01):1-7.

[2] 卜同同,曹天杰.基于权限的Android应用风险评估方法[J].计算机应用,2019,39(01):131-135.

[3] THOMPSON N, MCGILL T J, XUEQUN W. "Security begins at home": Determinants of home computer and mobile device security behavior[J]. Computers & Security, 2017, 70(01):376-391.

[4] 朱栽绍.基于XMPP的安全通信应用设计与实现[D].西安:西安电子科技大学,2019.

[5] 彭飞.基于XMPP协议的Android消息推送的分析与设计[J].长沙大学学报,2018,32(05):41-43.

[6] 樊东卫,何勃亮,李长华,等.球面距离计算方法及精度比较[J].天文研究与技术,2019,16(01):69-76.

[7] 欧国成,刘小园.超混沌与AES的混合加密算法[J].江西理工大学学报,2020,41(05):80-87.

[8] 秦中元,张峻瑞,张群芳,等.基于Inject和Hook的安卓终端管控技术[J].信息网络安全,2018(09):66-73.

[9] 王璇.Android移动终端数据安全防护技术的研究及其实      现[D].北京:北京邮电大学,2019.

作者简介:

刘歆宁(1986-),女,硕士,工程师.研究领域:软件开发,算法设计与分析,移动安全.