本发明涉及信息安全技术领域,尤其涉及一种保护Android adb数据传输安全的方法及装置。
背景技术:
当Android设备接入PC时,若PC端程序使用adb命令连接Android设备,则Android端会弹出授权窗口,提示PC程序正在尝试连接Android设备,若用户选择始终允许这台计算机连接Android设备,则意味着PC中的任何软件(包括恶意软件)都可通过adb命令连接到Android设备,并通过adb协议提供的接口访问Android设备中的数据。
目前,现有技术中公开了利用口令来核实权限,但其实现的权限控制粒度过于精细,不便于用户在Android设备上进行操作。也存在利用ID设置来认证权限的技术思想,但其ID为从移动终端厂商处申请获取,一旦该ID泄露,厂商将无法立即更新授权的ID。
技术实现要素:
本发明针对上述技术问题,提供了一种保护Android adb数据传输安全的方法及装置,通过在Android设备端预先配置授权用户名和密码,只有与授权用户名和密码相匹配的请求允许执行。从而有效禁止非法程序访问Android设备端的文件数据,提高了Android设备端数据的安全性。
本发明采用如下方法来实现:一种保护Android adb数据传输安全的方法,包括:
步骤1、在Android设备端预先配置授权用户名和密码,并在adbd程序中添加用户登录功能;
步骤2、若Android设备端发现存在PC端程序提交adb命令请求,则判断所述adb命令请求中是否携带会话ID,若是,则执行步骤3,否则执行步骤4;
步骤3、判断携带的会话ID是否与本地数据库中的会话ID相匹配,若匹配成功,则允许其执行操作,否则执行步骤4;
步骤4、弹出用户名和密码登录对话框;
步骤5、提取用户输入的用户名和密码与预先配置的授权用户名和密码进行匹配,若匹配成功,则生成会话ID并存储在本地数据库中,同时将生成的会话ID反馈给PC端程序;若匹配失败,则拒绝所述adb命令请求。
进一步地,还包括:为本地数据库中的会话ID设置有效期,当超过有效期后则将该会话ID标记为无效状态;
当判定携带的会话ID与本地数据库中的会话ID相匹配,则进一步查询该会话ID的状态,若被标记为无效状态,则返回一个错误标示,并执行步骤4,否则允许其执行操作。
进一步地,当所述携带的会话ID与本地数据库中的会话ID相匹配并处于有效期内,则从当前adb命令请求开始重新设置有效期。
本发明可以采用如下装置来实现:一种保护Android adb数据传输安全的装置,包括:
配置模块,用于在Android设备端预先配置授权用户名和密码,并在adbd程序中添加用户登录功能;
监控模块,用于若Android设备端发现存在PC端程序提交adb命令请求,则判断所述adb命令请求中是否携带会话ID,若是,则由第一匹配模块继续操作,否则由登录模块继续操作;
第一匹配模块,用于判断携带的会话ID是否与本地数据库中的会话ID相匹配,若匹配成功,则允许其执行操作,否则拒绝所述adb命令请求,并由登录模块继续操作;
登录模块,用于弹出用户名和密码登录对话框;
第二匹配模块,用于提取用户输入的用户名和密码与预先配置的授权用户名和密码进行匹配,若匹配成功,则生成会话ID并存储在本地数据库中,同时将生成的会话ID反馈给PC端程序;若匹配失败,则拒绝所述adb命令请求。
进一步地,还包括:为本地数据库中的会话ID设置有效期,当超过有效期后则将该会话ID标记为无效状态;
当判定携带的会话ID与本地数据库中的会话ID相匹配,则进一步查询该会话ID的状态,若被标记为无效状态,则返回一个错误标示,并由登录模块继续操作,否则允许其执行操作。
进一步地,当所述携带的会话ID与本地数据库中的会话ID相匹配并处于有效期内,则从当前adb命令请求开始重新设置有效期。
综上,本发明给出一种保护Android adb数据传输安全的方法及装置,通过在Android设备端预先配置授权用户名和密码,并在adbd程序中添加用户登录功能;当PC端通过adb命令请求访问Android设备端数据前,需要使用用户名和密码进行登录;若用户名和密码与预先配置的相匹配,则Android设备端会返回给PC端一个会话ID;若后期来自PC端的adb命令请求中携带该会话ID,则允许该adb命令请求执行相关操作。
有益效果为:只要存在adb命令请求访问Android设备,并且该adb命令请求没有携带会话ID,或者携带的会话ID处于无效状态,则弹出登录对话框,验证用户输入的用户名和密码是否正确。从而有效拦截来自PC端的恶意程序,提高Android设备端文件数据的安全性。
附图说明
为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种保护Android adb数据传输安全的方法实施例流程图;
图2为本发明提供的一种保护Android adb数据传输安全的装置实施例结构图。
具体实施方式
本发明给出了一种保护Android adb数据传输安全的方法及装置实施例,为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明:
本发明首先提供了一种保护Android adb数据传输安全的方法实施例,如图1所示,包括:
S101在Android设备端预先配置授权用户名和密码,并在adbd程序中添加用户登录功能;可以在Android设备端的系统设置的开发者选项中增加授权用户名和密码功能;
S102若Android设备端发现存在PC端程序提交adb命令请求,则判断所述adb命令请求中是否携带会话ID,若是,则执行S103,否则执行S104;
S103判断携带的会话ID是否与本地数据库中的会话ID相匹配,若是,则允许其执行操作,否则执行S104;
S104弹出用户名和密码登录对话框;
S105提取用户输入的用户名和密码与预先配置的授权用户名和密码进行匹配,若匹配成功,则生成会话ID并存储在本地数据库中,同时将生成的会话ID反馈给PC端程序;若匹配失败,则拒绝所述adb命令请求。
优选地,还包括:为本地数据库中的会话ID设置有效期,当超过有效期后则将该会话ID标记为无效状态;
当判定携带的会话ID与本地数据库中的会话ID相匹配,则进一步查询该会话ID的状态,若被标记为无效状态,则返回一个错误标示,并执行S104,否则允许其执行操作。
其中,若判断会话ID处于无效状态,则用户需要重新输入用户名和密码进行重新验证,并获取新的会话ID,以后该PC端程序访问Android设备端都需要携带新的会话ID。
优选地,当所述携带的会话ID与本地数据库中的会话ID相匹配并处于有效期内,则从当前adb命令请求开始重新设置有效期。
例如:设置会话ID的有效期为30分钟,则若存在PC端程序访问Android设备端,则判断其携带的会话ID的状态是否在有效期内,若是,则允许其执行操作,否则需要重新输入用户名和密码。若30分钟内该会话ID对应的adb命令请求在Android设备端执行了相关操作,则该会话ID的有效期从当前操作后30分钟后有效。
本发明还提供了一种保护Android adb数据传输安全的装置实施例,如图2所示,包括:
配置模块201,用于在Android设备端预先配置授权用户名和密码,并在adbd程序中添加用户登录功能;
监控模块202,用于若Android设备端发现存在PC端程序提交adb命令请求,则判断所述adb命令请求中是否携带会话ID,若是,则由第一匹配模块203继续操作,否则由登录模块204继续操作;
第一匹配模块203,用于判断携带的会话ID是否与本地数据库中的会话ID相匹配,若匹配成功,则允许其执行操作,否则拒绝所述adb命令请求,并由登录模块204继续操作;
登录模块204,用于弹出用户名和密码登录对话框;
第二匹配模块205,用于提取用户输入的用户名和密码与预先配置的授权用户名和密码进行匹配,若匹配成功,则生成会话ID并存储在本地数据库中,同时将生成的会话ID反馈给PC端程序;若匹配失败,则拒绝所述adb命令请求。
优选地,还包括:为本地数据库中的会话ID设置有效期,当超过有效期后则将该会话ID标记为无效状态;
当判定携带的会话ID与本地数据库中的会话ID相匹配,则进一步查询该会话ID的状态,若被标记为无效状态,则返回一个错误标示,并由登录模块继续操作,否则允许其执行操作。
优选地,当所述携带的会话ID与本地数据库中的会话ID相匹配并处于有效期内,则从当前adb命令请求开始重新设置有效期。
本说明书中方法的实施例采用递进的方式描述,对于系统的实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
如上所述,Android设备端将授权用户名和密码、生成的会话ID保存到Android设备本地数据库中,每次有adb命令请求出现,首先判断是否携带会话ID,若存在,则通过判断其会话ID是否与本地数据库中相匹配,决定是否允许该adb命令请求执行相关操作;若该adb命令请求没有携带会话ID,则通过弹出用户名和密码登录对话框,将用户填入的用户名和密码提取后与授权的用户名和密码进行比对,进而判断是否允许所述adb命令请求执行相关操作。本发明所述技术方案对于没有携带会话ID或者会话ID失效的adb命令请求需要重新登录才可以继续访问,可以有效拦截PC端的恶意程序通过adb命令对Android设备端的数据进行非法访问,进而提高Android系统的安全性。
以上实施例用以说明而非限制本发明的技术方案。不脱离本发明精神和范围的任何修改或局部替换,均应涵盖在本发明的权利要求范围当中。