APP下载

基于微信公众平台的网安课程资源服务研究

2015-11-02北京警察学院刘铭

信息安全与通信保密 2015年9期
关键词:网络安全公众微信

■文/北京警察学院 刘铭

基于微信公众平台的网安课程资源服务研究

■文/北京警察学院 刘铭

引言

基于微信公众平台提供在线网络安全课程信息资源服务的模式已经广泛开展,由于网络安全课程信息资源本身具有针对性、专业性、实用性、可操作性等特点,因此在提供网络安全在线的知识服务同时,必须对服务的安全性进行深入的研究。

1.网安课程信息资源服务的轻应用时代已经到来

基于微信公众平台开发接口的系统提供了通过微信客户端与用户进行消息交互、自定义菜单交互的能力,如图1所示。当用户发出请求消息给微信公众号,微信公众平台服务器接收请求信息,基于XML对信息进行封装,使用http请求对部署在第三方服务器上的业务应用平台进行消息转发,第三方服务器可通过响应包回复特定结构,从而达到回复消息的目的。用户只需通过手机微信客户端关注基于公众平台开发接口的公众账号,即可实现对所需信息的查询、订阅等信息服务。通过轻应用模式提供课程信息服务已成为学生课下获取课程信息重要的主要模式。

网络安全课程自身具有很强的实用性特点,特别是面向实战、实训的课程,目标性明确、可操作性强,因此网络安全课程信息的自身安全是提供网络安全课程信息资源在线服务时首先需要考虑的问题,特别是在基于微信公众平台轻应用模式下的信息安全问题,是建设网络安全课程信息在线知识服务的重点问题。

2.基于微信公众平台的公安课程资源服务安全性分析

2.1. 系统架构层面安全

根据图1所示系统架构,微信服务器在架构中对基于微信公众平台开发接口的应用系统来说,主要作用是对消息进行转发,是整个系统能够运行的信息交换核心,其可靠性是安全关注重点,特别是微信公众平台的接入安全性。微信公众平台分为接入和使用两步。在提交接入申请后,微信公众平台将会向应用服务器发起一个接口认证的请求到接口地址,使用GET方式请求,并携带如表1所示参数。

微信公众平台的接入要求微信公众平台启动开发模式,约定一个与应用服务器一致的token。应用服务器按照字曲顺序对接收到的timestamp、nonce和约定好的token三个参数进行排序,并将这三个参数字符串拼接成一个字符串进行sha1加密,应用服务器上的验证程序将加密后的字符串与signature进行对比,标识该请求来源于微信公众平台,通过对比则完成了微信公众平台的接入过程。然而,在微信公众平台的使用过程中,并不是任何一次用户对微信公众平台的信息请求都必须要求上述校验签名,因此存在着签名重用的安全风险。通过截获微信服务器和应用服务器间的请求,使得某次的请求参数泄露,按照上面的办法验证签名,则意味着任何一次请求的参数在将来的任何时候,都是有效的。针对签名重用风险,考虑到服务器之间存在时间差,所以只要保证timestamp在一个窗口时间范围内有效,可以防范签名重用风险。另外,由于连续两次请求产生相同签名的几率非常小,所以考虑将使用过的签名暂时屏蔽,屏蔽时间稍大于上面的timestamp窗口时间,也可以实现防范签名重用风险。

因此,基于微信公众平台的网络安全课程信息资源服务建设须考虑上述风险,加强对课程信息资源的风险评估。

2.2. 数据安全

在实际应用中,采用私有服务器和云平台相结合的部署方式,根据数据分类分级的数据保护机制,将数据按照类型、大小、使用频率、更新频率进行划分,分别部署在私有服务器和云平台上。大块、更新频率低、使用频率高的音视频数据存储在云平台上,小块、更新频率高的文本数据存储在私有服务器上。对分类分级后的数据根据部署环境特点分别增加数据的私密性保护,既保证数据的隐私性,又能实现数据的隔离和安全存储。同时加入数据访问权限控制,对数据进行操作前,通过来源认证、资源认证、不同安全域之间的认证或者多种认证方式相结合的形式,严格审查用户身份。另外,合理分配、规划和管理权限,必要时引入对数据访问的监视和日志审计机制,特别是对敏感信息的访问,可以追溯到来源。

图1 系统架构

表1 接口认证请求参数

3. 课程信息安全防范策略

3.1. 建立合理的课程信息资源服务安全保障制度

建立健全课程信息资源发布、审计制度是提供网络安全在线知识服务的重要保障。制定课程信息风险评估指标和方法,识别课程信息资源服务中可能存在的各类风险,通过对风险的发生概率和潜在影响确定风险优先级,量化分析风险对课程信息安全的影响,在这一过程中通常采用专家判断法、假设分析、风险优先级矩阵和概率影响矩阵等风险管理技术,确定发布的课程信息安全风险和等级,针对不同等级采取不同的信息发布和审计流程,并生成对应的系统用户管理权限。同时还应允许用户在使用过程中具有反馈权限,自主发现潜在风险。

3.2. 完整性和一致性保障

课程信息资源目录编制对信息资源共享和提升课程建设水平具有十分重要的意义,同时依据课程信息资源目录也可以减少因系统迁移、更新所产生的数据冗余和数据残留,进而保障数据的完整性和一致性。课程信息资源目录是通过课程信息资源描述项记录课程信息资源结构、属性以及获取调用方式的数据体系。建设课程信息资源目录的过程是按知识点梳理课程脉络、整理和挖掘课程信息资源、规范数据表示、突出课程知识点的过程。它是课程信息资源整合与共享一项重要基础工作,提供课程信息资源的全面索引与说明,以便教师在使用、建设课程资源时,对已有课程信息资源有准确的了解。

目前,课程信息资源目录建设有三种模式,即目录建设与课程信息资源建设同时进行、目录建设先于课程信息资源建设进行、目录建设后于课程信息资源建设进行。第一种模式适用于课程信息资源梳理准备充分,而且课程信息资源数字化积累丰富,能够保证元数据与数据的对应关系,建设周期由发布内容量决定;第二种模式课程信息资源梳理先行,根据目录建设课程信息资源,是避免重复建设的最好方式,但建设先期无法提供在线、即时的课程信息资源服务,且元数据会随着课程信息资源数据的加入发生重新定义和调整;第三种模式会在短期内使用户使用到在线的课程信息资源服务,但由于缺少目录支撑,很容易造成后期的课程信息资源重复建设。因此,在课程信息资源的目录建设模式选择时,需要根据课程信息资源服务实际情况进行选择。

3.3. 课程信息资源加密存储

对发布到公众平台的课程信息进行加密是保护数据的安全性和隐私性的常用方法。针对本文中数据存储的模式,重点考虑存储在云平台上的课程信息资源数据加密技术。根据参考文献研究表明,云安全存储技术通常有同态加密技术、基于的数据保护技术、基于加解密的数据安全存储技术、支持查询的数据加密技术和面向可信平台的数据安全存储技术。对于同一个部署在云平台上的应用,同时运用上述加密技术,必然会降低系统响应效率。在本文的研究中,采用基于加解密的数据安全存储技术结合微信公众平台的接入时约定的token,共同完成数据保护的技术思路。

传统基于加解密的数据安全存储技术是与系统的软硬件无关的,即不依赖于应用环境的,这种方法使得应用具有很大的灵活性,而这种灵活性无法追溯数据来源、信息传输路径,造成了敏感数据在使用过程中的安全隐患。因此,对云平台上存储的课程信息数据,采用按功能分块处理的模式,分为数据处理模块、数据校验模块和凭证模块。数据处理模块完成在数据存储到云平台时对数据进行加密、编码等操作;数据校验模块依据课程信息资源目录中记录的元数据对提交的课程信息资源数据进行一致性和完整性检查;凭证模块根据微信公众平台接入时的token,对加密后的数据生成信息摘要,因为该token是微信公众平台与第三方应用服务器事先约定好的,是运行环境接入的标识,因此使得课程信息资源数据具有了特定运行环境的特征,可以防止外界恶意篡改信息内容。当用户访问数据时,根据用户权限和提供的绑定token,实现信息访问来源验证,通过认证的用户对数据进行解密处理,获取到课程信息数据。X

猜你喜欢

网络安全公众微信
公众号3月热榜
公众号9月热榜
公众号8月热榜
公众号5月热榜
网络安全
网络安全人才培养应“实战化”
上网时如何注意网络安全?
微信
微信
微信