一种Android系统的完整性保护系统的制作方法

文档序号:6513530阅读:751来源:国知局
一种Android系统的完整性保护系统的制作方法
【专利摘要】本发明涉及一种Android系统的完整性保护系统,属于智能设备安全【技术领域】。该系统包括:用户接口模块,后台服务模块,数据签名模块,数据库模块。用户接口模块与后台服务模块、数据库模块双向通信;后台服务模块与数据签名模块与数据库模块双向通信。本发明专门针对Root过的系统,可以有效的对Android系统进行完整性保护;实施方便,该保护方法无需修改操作系统,Root过的Android手机只需安装一个应用程序,便可以对系统进行保护。
【专利说明】一种Android系统的完整性保护系统
【技术领域】
[0001]本发明属于智能设备安全【技术领域】,涉及一种Android系统的完整性保护系统,具体是针对Root过的Android系统的完整性保护系统。
【背景技术】
[0002]随着移动互联网的兴起,移动智能设备已经融入人们的日常生活。就2012年来说,依据IDC的统计数据,Android智能设备的出货量位居第一。将Android智能设备Root后,能获得更好的玩机体验,但同时也带来了新的安全问题,病毒木马获得Root权限后,可以肆意攻击系统。
[0003]在过去几年的研究里,Android系统的安全问题一直是一个吸引人的主题。目前已经提出的方法多数针对未Root的系统,例如:在Android系统安装杀毒软件等,虽然也取得了很多成果,但是没有一个方法能够完全解决Android的安全问题。此外,Root过的系统面临一些新的安全问题,其中非常重要的就是系统完整性问题,这是先前的方法所没有考虑到的。
[0004]Android系统的安全机制主要包括两个方面,一个是Iinux原有的的权限管理机制,通过UID来控制文件的访问;另一个是Android系统增加的Permission机制。这种安全机制存在着缺陷=Linux存在超级用户,该用户拥有完全的系统访问控制权限,恶意软件可以通过系统中应用软件的漏洞来获取超级用户权限,进而控制整个系统。
[0005]Root是Linux系统下的一个超级用户,它拥有整个系统的最闻权限。
[0006]本发明提出的Android系统的完整性保护系统基于Root过的Android系统,方案的实施需要系统获得Root权限,这样能读取系统文件,进而对系统进行完整性保护。

【发明内容】

[0007]本发明的目的在于提出一种Android系统的完整性保护系统,解决了 Root过的Android系统的完整性保护等安全问题,防止病毒木马获得Root权限后,肆意攻击系统。本发明实现Iv能够在Android设备开机时自动启动的完整性保护系统,该系统能够跟Android系统双向通信,对Android系统的重要文件实施安全保护。
[0008]本发明的目的是通过下述技术方案实现的。
[0009]一种Android系统的完整性保护系统,包括:用户接口模块,后台服务模块,数据签名模块,数据库模块。
[0010]用户接口模块提供密码设置、用户登录时的密码验证、显示受保护的文件列表、系统运行日志、设置定期检测时间间隔、手动检测系统完整性、受保护文件被篡改时的用户消息推送等功能,其为系统的正常运行提供必要的操作参数。
[0011]用户接口模块与后台服务模块、数据库模块双向通信;后台服务模块与数据签名模块与数据库模块双向通信。
[0012]用户接口模块的功能是负责用户与应用系统的交互。[0013]密码设置功能是为了防止其他人的随意使用;系统在首次运行时要求用户设置登录密码。
[0014]登录密码需加密保存,以保证其安全性。
[0015]所述的用户登录时的密码验证功能是每次打开该应用时,要求用户输入密码,对用户的身份进行验证。
[0016]显示受保护的文件列表功能是在智能设备的显示屏上显示受保护的文件。
[0017]系统运行日志功能是详细记录受保护文件的修改情况。
[0018]设置定期检测时间间隔功能是设置自动检测的时间间隔。该时间间隔是进行自动检测的参数。
[0019]自动检测功能可设置为打开或关闭。
[0020]所述的手动检测系统完整性功能是实时接受用户提交的系统完整性检测请求。
[0021]所述的受保护文件被篡改时的用户消息推送功能是在当发现受保护文件被篡改时,在通知栏中对用户进行实时提醒。
[0022]用户接口模块的设计应符合Android人机界面设计规范。
[0023]所述的后台服务模块功能是在后台调用数据签名模块、数据库模块对系统完整性进行检测。当系统自动检测或用户手动检测系统完整性时,该服务被唤醒。
[0024]所述的后台服务模块是系统的核心,除提供受保护文件的完整性检测外,还提供了一些其他功能,例如:密码设置、用户登录时的密码验证、设置定期检测时间间隔、手动检测系统完整性等,它们需要使用用户接口模块提供的操作参数来操作。
[0025]优选的,后台服务模块在检测受保护文件的完整性时,有两种工作方式,一种是自动检测方式,一种是手动检测方式。用户可以通过设置时间间隔使后台系统每隔一定的时间自动对系统的完整性进行检测,也可以随时通过用户接口调用对系统的完整性检测。
[0026]所述的数据签名模块功能是保证信息传输的完整性,对发送者的身份认证,防止抵赖发生。
[0027]所述的数据签名模块包括Root权限提升模块,HMAC (Hash-based MessageAuthentication Code)模块。
[0028]所述的Root权限提升模块的进程由后台服务模块创建,通过执行su命令提升为Root权限,以执行需要Root权限的命令。
[0029]所述的HMAC模块功能是计算每个受保护文件的摘要值。HMAC模块需用到一个加密散列算法,可以使用MD5或SHA-1 (Secure Hash Algorithm)算法。
[0030]HMAC模块程序的具体处理过程如下:
[0031]步骤1:启动受保护文件的自动检测或手动检测;
[0032]步骤2:如果受保护文件列表中还有未检测的文件,从中取出一个文件,并将其内容作为HMAC算法中的message,密钥由用户设定,通过HMAC算法,计算受保护文件的摘要值;如果受保护文件列表的文件检测完毕,跳转至结束;
[0033]步骤3:将计算得到的摘要值与数据库中的值进行比较;
[0034]步骤4:若摘要值不同,说明受保护文件被修改,将消息推送给用户,修复被篡改的受保护文件,重新计算摘要值并更新数据表;若摘要值相同,跳转至步骤2 ;
[0035]步骤5:结束;[0036]所述的受保护文件列表由应用系统在后台维护。
[0037]所述受保护的文件不是指系统中所有的文件,判断标准为:
[0038]1.需要保护的文件指那些恶意软件企图篡改的文件。恶意软件一般会攻击与系统的运行和功能有关的文件,即可执行文件或一些动态链接库等,例如init文件,init.rc文件,system/bin/下的文件等。
[0039]2.需要保护的文件指那些不轻易改变的文件。若文件经常改变,应用系统无法分辨是来自于恶意软件的修改还是系统本身的修改。
[0040]所述数据库模块功能是维护文件摘要数据表和日志记录数据表。文件摘要数据表用于保存被监测的受保护文件的路径名及摘要值,日志记录数据表用于保存每次检测的结果,当发现某个文件被修改后,该文件的路径名、检测结果信息和检测时的时间保存到该数据库表中。
[0041]用户接口模块与后台服务模块、数据库模块双向通信;后台服务模块与数据签名模块与数据库模块双向通信。
[0042]有益效果:
[0043]本发明提出的Android系统的完整性保护系统具有如下优点:
[0044]1.专门针对Root过的系统,可以有效的对Android系统进行完整性保护。
[0045]2.实施方便。该保护方法无需修改操作系统,Root过的Android手机只需安装一个应用程序,便可以对系统进行保护。
【专利附图】

【附图说明】
[0046]图1Android系统的完整性保护系统示意图;
[0047]图2安装有杀毒软件的Android系统的完整性保护系统示意图;
[0048]图3为本发明【具体实施方式】中Android系统的完整性保护系统的软件模块示意图;
[0049]图4为检测受保护文件的工作流程图。
【具体实施方式】
[0050]为了更好的说明本发明的技术方案,下面结合附图,通过2个实施例,对本发明做
进一步说明。
[0051]实施例1为无杀毒软件的Android系统的完整性保护系统,如图1所示。
[0052]该完整性保护系统包括:用户接口模块,后台服务模块,数据签名模块,数据库模块,见图3。
[0053]用户接口模块与后台服务模块、数据库模块双向通信;后台服务模块与数据签名模块与数据库模块双向通信。
[0054]用户接口模块的功能是负责用户与应用系统的交互。
[0055]所述的用户接口模块提供密码设置、用户登录时的密码验证、显示被保护的文件列表、系统运行日志、设置定期检测时间间隔、手动检测系统完整性、受保护文件被篡改时的用户消息推送功能等,其为系统的正常运行提供必要的操作参数。
[0056]所述的后台服务模块功能是在后台调用数据签名模块、数据库模块对系统完整性进行检测。当系统自动检测或用户手动检测系统完整性时,该服务被唤醒。
[0057]所述的后台服务模块是系统的核心,除提供受保护文件的完整性检测外,还提供了一些其他功能,例如:密码设置、用户登录时的密码验证、设置定期检测时间间隔、手动检测系统完整性等,它们需要使用用户接口模块提供的操作参数来操作。
[0058]所述的数据签名模块功能是保证信息传输的完整性,对发送者的身份认证,防止抵赖发生。
[0059]所述的数据签名模块包括Root权限提升模块,HMAC (Hash-based MessageAuthentication Code)模块。
[0060]所述的Root权限提升模块通过在Android应用程序中启动一个Shell进程,在该进程中执行su命令,将该进程提升为Root权限。
[0061]所述数据库模块功能是维护文件摘要数据表和日志记录数据表。文件摘要数据表用于保存被监测的受保护文件的路径名及摘要值,日志记录数据表用于保存每次检测的结果,当发现某个文件被修改后,该文件的路径名、检测结果信息和检测时的时间保存到该数据库表中。
[0062]所述Android系统的完整性保护系统安装在安装了 Android系统的智能设备上,在设备开机时自动启动。
[0063]当应用系统自动检测系统完整性或用户手动检测系统完整性时,后台服务程序被唤醒,见图4,具体操作步骤为:
[0064]步骤1:将受保护的文件列表添加入栈;
[0065]步骤2:如果栈为空,程序结束;
[0066]步骤3:从栈S中取出一个文件,将其内容作为HMAC算法中的message,结合用户设定的密钥,由HMAC算法计算该文件的摘要值;
[0067]步骤4:将摘要值与数据库中值进行比较;
[0068]步骤5:若摘要值不同,说明该受保护文件被修改,将消息推送给用户;若摘要值相同,不做任何操作,跳转至步骤2 ;
[0069]步骤6:修复被篡改的受保护文件,重新计算摘要值并更新数据表跳转至步骤2 ;
[0070]步骤7:结束;
[0071]经过上述步骤,即完成系统完整性检测。
[0072]实施例2为安装有杀毒软件的Android系统的完整性保护系统,如图2所示。Android系统分别与完整性保护系统、杀毒软件连接。完整性保护系统独立于杀毒软件存在,二者配合使用能使系统的安全性更高。
【权利要求】
1.一种Android系统的完整性保护系统,其特征在于,包括:用户接口模块,后台服务模块,数据签名模块,数据库模块;其中, 用户接口模块的功能是负责用户与系统的交互; 后台服务模块功能是在后台调用数据签名模块、数据库模块对Android系统完整性进行检测;当系统自动检测或用户手动检测系统完整性时,该服务被唤醒; 数据签名模块功能是保证信息传输的完整性,对发送者的身份认证,防止抵赖发生; 数据库模块功能是维护文件摘要数据表和日志记录数据表;文件摘要数据表用于保存被监测的受保护文件的路径名及摘要值,日志记录数据表用于保存每次检测的结果,当发现某个文件被修改后,该文件的路径名、检测结果信息和检测时的时间保存到该数据库表中; 用户接口模块与后台服务模块、数据库模块双向通信;后台服务模块与数据签名模块与数据库模块双向通信。
2.如权利要求1所述一种Android系统的完整性保护系统,其特征在于:所述保护系统是在设备开机时自动启动的Android应用程序。
3.如权利要求1所述的一种Android系统的完整性保护系统,其特征在于: 所述数据签名模块包括Root权限提升模块,HMAC模块; HMAC模块具体处理过程如下: 步骤1:启动受保护文件的自动检测或手动检测; 步骤2:如果受保护文件列表中还有未检测的文件,从中取出一个文件,并将其内容作为HMAC算法中的message,密钥由用户设定,通过HMAC算法,计算受保护文件的摘要值;如果受保护文件列表的文件检测完毕,跳至步骤5 ; 步骤3:将计算得到的摘要值与数据库中的值进行比较; 步骤4:若摘要值不同,说明受保护文件被修改,将消息推送给用户,修复被篡改的受保护文件,重新计算摘要值并更新数据表;若摘要值相同,跳转至步骤2 ; 步骤5:结束。
4.如权利要求3所述的一种Android系统的完整性保护系统,其特征在于:Root权限提升模块通过执行su命令提升为Root权限。
5.如权利要求3所述的一种Android系统的完整性保护系统,其特征在于:受保护文件判断标准为:①需要保护的文件指那些恶意软件企图篡改的文件;恶意软件一般会攻击与系统的运行和功能有关的文件,即可执行文件或一些动态链接库等,例如init文件,init.rc文件,system/bin/下的文件等需要保护的文件指那些不轻易改变的文件;若文件经常改变,系统无法分辨是来自于恶意软件的修改还是系统本身的修改。
6.如权利要求3所述的一种Android系统的完整性保护系统,其特征在于:如果受保护文件被修改,系统将把消息推送给用户。
7.如权利要求1所述的一种Android系统的完整性保护系统,其特征在于:用户接口模块提供了一个Android应用程序的操作界面,该界面的设计为符合Android人机界面设计规范。
【文档编号】G06F21/56GK103530559SQ201310449571
【公开日】2014年1月22日 申请日期:2013年9月27日 优先权日:2013年9月27日
【发明者】刘增良, 于潇, 谭毓安, 张全新, 刘懿昊, 左伟欢, 孙宗文 申请人:北京理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1