一种多平台账户的安全防御方法及装置与流程

文档序号:18106478发布日期:2019-07-06 11:41阅读:169来源:国知局
一种多平台账户的安全防御方法及装置与流程

本发明实施例涉及网络安全技术领域,具体涉及一种多平台账户的安全防御方法及装置。



背景技术:

随着互联网的风靡和发展,人人都需要在互联网中留下自己的账户凭证以轻松地管理自己的信息,财务等资产。而每一家公司的产品,最重要的部分之一也一定是账户系统。与此同时,账户逐渐变得十分有价值,网络黑客有利可图,则使用各种技术尝试攻破账户系统以获取利益。国家也将互联网安全作为互联网发展的第一要务。

常见的账号窃取,攻破方式有:xss(crosssitescripting,跨站脚本攻击),sql(structuredquerylanguage,结构化查询语言)注入攻击,撞库、强破等等。xss攻击全称跨站脚本攻击,为了不和层叠样式表(cascadingstylesheets,css)的缩写混淆,故将跨站脚本攻击缩写为xss,xss是一种在web应用中的计算机安全漏洞,它允许恶意web用户将代码植入到提供给其它用户使用的页面中。而该代码具备获取加密的登录标识,由此则可以不获取用户明文信息的情况下伪装该用户使用网站服务,甚至直接攻破使用该账号系统的所有平台。sql注入攻击是黑客对数据库进行攻击的常用手段之一,随着b/s模式应用开发的发展,使用这种模式编写应用程序的程序员也越来越多,但是由于程序员的水平及经验也参差不齐,相当大一部分程序员在编写代码的时候,没有对用户输入数据的合法性进行判断,使应用程序存在安全隐患。用户可以提交一段数据库查询代码,根据程序返回的结果,获得某些他想得知的数据,这就是所谓的sqlinjection,即sql注入。如:某个网站的登录验证的sql查询代码为:strsql=″select*fromuserswhere(name=″′+username+″′)and(pw=″″+password+″′);″恶意填入username=″1′or′1′=′1″;与password=″1′or′1′=′1″;时,将导致原本的sql语句被填为strsql=″select*fromuserswhere(name=′1′or′1′=′1′)and(pw=′1′or′1′=′1′);″也就是实际上运行的sql命令会变成下面这样的strsql=″select*fromusers;″因此达到无账号密码,亦可登录网站。所以sql注入攻击被俗称为黑客的填空游戏;在获取到了用户登录信息后,则可以进行撞库,大部分人在使用互联网账户时,使用的密码都近乎一致,对此则有机可乘,在获取到一定量账户信息时,则可以对更多的网站进行尝试,这就是撞库攻击;而强破是使用机器对一个已知用户名的账户进行无限次密码尝试。

现有的互联网环境中,很多网站都无法对多平台账户的泄露进行很好地识别,导致xss安全防御失败。



技术实现要素:

由于现有方法存在上述问题,本发明实施例提出一种多平台账户的安全防御方法及装置。

第一方面,本发明实施例提出一种多平台账户的安全防御方法,包括:

若判断获知当前账户从第一平台切换至第二平台,则获取所述第一平台的第一用户标识和所述第二平台的第二用户标识;

若判断获知所述第一用户标识和所述第二用户标识相同,且所述第一平台的登录认证标识不为空,则确认所述当前账户为安全的多平台账户,并允许所述当前账户切换登录至所述第二平台;

若判断获知所述第一用户标识和所述第二用户标识不同,或所述第一平台的登录认证标识为空,则拒绝所述当前账户切换登录至所述第二平台。

第二方面,本发明实施例还提出一种多平台账户的安全防御装置,包括:

标识获取模块,用于若判断获知当前账户从第一平台切换至第二平台,则获取所述第一平台的第一用户标识和所述第二平台的第二用户标识;

允许登录模块,用于若判断获知所述第一用户标识和所述第二用户标识相同,且所述第一平台的登录认证标识不为空,则确认所述当前账户为安全的多平台账户,并允许所述当前账户切换登录至所述第二平台;

拒绝登录模块,用于若判断获知所述第一用户标识和所述第二用户标识不同,或所述第一平台的登录认证标识为空,则拒绝所述当前账户切换登录至所述第二平台。

第三方面,本发明实施例还提出一种电子设备,包括:

至少一个处理器;以及

与所述处理器通信连接的至少一个存储器,其中:

所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行上述方法。

第四方面,本发明实施例还提出一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述方法。

由上述技术方案可知,本发明实施例通过判断第一平台和第二平台的用户标识确定两个平台是否共用同一多平台账户,通过判断第一平台的登录认证标识是否为空确定第一平台是否是通过正常的登录界面登录,以防止xss的多平台账户的泄露,更好地对各网站进行安全防御。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些图获得其他的附图。

图1为本发明一实施例提供的一种多平台账户的安全防御方法的流程示意图;

图2为本发明一实施例提供的一种多平台账户的安全防御装置的结构示意图;

图3为本发明一实施例提供的电子设备的逻辑框图。

具体实施方式

下面结合附图,对本发明的具体实施方式作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。

图1示出了本实施例提供的一种多平台账户的安全防御方法的流程示意图,包括:

s101、若判断获知当前账户从第一平台切换至第二平台,则获取所述第一平台的第一用户标识和所述第二平台的第二用户标识。

其中,所述第一平台和所述第二平台是可以共用一个登录账户进行登录的两个不同的平台。例如:某个应用程序和另一领用程序都通过微信账号登录;再比如:百度账号可以同时登录百度外卖和百度网盘两个平台。

用户标识为平台的登录账户的标识。

举例来说,百度外卖平台的用户标识为百度账号,百度网盘平台的用户标识也是百度账号。

s102、若判断获知所述第一用户标识和所述第二用户标识相同,且所述第一平台的登录认证标识不为空,则确认所述当前账户为安全的多平台账户,并允许所述当前账户切换登录至所述第二平台。

其中,所述登录认证标识为平台通过登录页面登录后获得的标识,用于判断当前账户是否通过登录页面登录。

举例来说,用户通过登录页面登录了百度外卖平台,因此获得了百度外卖平台的登录认证标识;当用户需要切换至百度网盘平台时,由于共用一个百度账号,且具有登录认证标识,因此是安全的切换,允许当前账户直接切换登录至百度网盘平台,而无需重新登录。

s103、若判断获知所述第一用户标识和所述第二用户标识不同,或所述第一平台的登录认证标识为空,则拒绝所述当前账户切换登录至所述第二平台。

举例来说,用户通过登录页面,用百度账户登录了百度外卖平台,现在想切换至快递寄件平台,该快递寄件平台使用快递寄件账户登录,无法使用百度账户登录,因此无法直接切换登录,必须重新登录快递寄件平台。

再比如,用户从百度地图平台切换登录了百度外卖平台,因此未获得百度外卖平台的登录认证标识;当用户需要切换至百度网盘平台时,由于不具有登录认证标识,可能前一次是非法的切换登录,因此认为是不安全的切换,拒绝当前账户直接切换登录至百度网盘平台,需要重新登录。

在实际执行过程中,即使采用严密的防御及时,也依然有攻破的可能,而止损方案则是分散认证,由于xss攻击仅仅可以拿到当前域名的登录加密标识,因此为不同的一级域名拥有自己的一个辅助验证的平台标识,称之为“platformtoken”,而用户加密信息的用户标识称之为“usertoken”,在登录域名上,再加入一个登录认证标识“passtoken”。设置规则为:“platformtoken+usertoken=仅本二级域名登录通过;usertoken+passtoken=账号系统域名登录通过”,攻击者若侥幸攻破一个平台,他可以拿到usertoken和platformtoken,此时他期望使用两个标志访问其他同一级域名不同二级域名的服务,是无法使用的,因此实现了良好的止损。

本实施例通过判断第一平台和第二平台的用户标识确定两个平台是否共用同一多平台账户,通过判断第一平台的登录认证标识是否为空确定第一平台是否是通过正常的登录界面登录,以防止xss的多平台账户的泄露,更好地对各网站进行安全防御。

进一步地,在上述方法实施例的基础上,s103之后,还包括:

s104、生成第一授权提示信息,并将所述第一授权提示信息发送至目标终端。

s105、若接收到所述目标终端反馈的第一授权信息,则允许所述当前账户切换登录至所述第二平台。

具体地,当终端拒绝所述当前账户切换登录至所述第二平台后,生成第一授权提示信息,并将所述第一授权提示信息发送至目标终端,其中,目标终端可以为用户之前授权的终端,也可以为首次注册终端。

通过用户的实时授权,确保当前账户未被攻击,是安全的切换登录。

进一步地,在上述方法实施例的基础上,s101之前,还包括:

s1000、若判断获知所述当前账户根据第一平台标识通过登录页面登录所述第一平台,则对所述第一平台的登录认证标识进行赋值。

s1001、若判断获知所述当前账户的账户登录信息与历史登录信息不匹配,则生成第二授权提示信息,并将所述第二授权提示信息发送至目标终端。

s1002、若接收到所述目标终端反馈的第二授权信息,则允许所述当前账户登录至所述第一平台。

s1003、若接收到所述目标终端反馈的拒绝授权信息,则向通信终端发送验证码请求。

s1004、若接收到所述通信终端返回的验证码,则根据所述验证码允许所述当前账户登录至所述第一平台。

其中,所述历史登录信息包括所述目标终端的位置、ip地址和mac地址。

所述平台标识为当前平台的标识,例如百度外卖平台和百度网盘平台具有不同的平台标识,用以区分不同的平台。

具体地,当目标终端由于误操作等原因反馈拒绝授权信息,而实际上是安全账户,则可以向通信终端发送验证码请求,其中,通信终端可以为用户之前授权的终端,也可以为首次注册终端。

通过验证码方式授权,防止用户在第一次授权操作时的误操作。

进一步地,在上述方法实施例的基础上,s102之后,还包括:

根据预设时间段对所述当前账户进行重新登录认证;或,若判断获知当前终端锁屏或重启,则对所述当前账户进行重新登录认证。

具体地,对于已经攻破的平台,若数据足够敏感,账号系统并不能让他一直使用服务。可以依据账号数据的敏感性,设置不同的验证时间段。同时,当设备锁屏再开启时,重新验证账号密码;当设备重启时,重新验证账号密码。当访问到十分敏感的数据前,或执行十分敏感的操作前,进行账号密码验证,以保证平台的安全性。

具体来说,本实施例提供的多平台账户的安全防御方法包括以下步骤:

a1、在用户使用服务时收集以下信息:用户位置,ip地址,mac物理地址,以及最近浏览器访问记录。

a2、若用户位置,ip地址,mac地址突然发生变化,则给首次登陆的浏览器或终端进行警告和授权提示,确定是否为允许使用的浏览器或终端。用户允许则继续切换登录,并将允许的浏览器信息记录以备下次直接授权;若用户不允许则直接禁止操作。

a3、增加申诉机制,即不被授权的浏览器端,可以使用手机验证码登录,即可认为新登录人为真实账户拥有者,否则禁止原浏览器操作。

a4、设置规则为:“platformtoken+usertoken=仅本二级域名登录通过;usertoken+passtoken=账号系统域名登录通过”,攻击者若侥幸攻破一个平台,他可以拿到usertoken和platformtoken,但无法使用别的二级域名的服务,实现了良好的止损。

a5、依据账号数据敏感性,有一些验证时间段;当设备锁屏再开启时,重新验证账号密码;当设备重启时,重新验证账号密码;当访问到十分敏感的数据前,或执行十分敏感的操作前,进行账号密码验证。

本实施例能够保证用户不被xss攻击窃取信息,进行敏感操作,同时对xss攻击的用户进行了告警和及时止损,保证了各平台的安全。

图2示出了本实施例提供的一种多平台账户的安全防御装置的结构示意图,所述装置包括:标识获取模块201、允许登录模块202和拒绝登录模块203,其中:

所述标识获取模块201用于若判断获知当前账户从第一平台切换至第二平台,则获取所述第一平台的第一用户标识和所述第二平台的第二用户标识;

所述允许登录模块202用于若判断获知所述第一用户标识和所述第二用户标识相同,且所述第一平台的登录认证标识不为空,则确认所述当前账户为安全的多平台账户,并允许所述当前账户切换登录至所述第二平台;

所述拒绝登录模块203用于若判断获知所述第一用户标识和所述第二用户标识不同,或所述第一平台的登录认证标识为空,则拒绝所述当前账户切换登录至所述第二平台。

具体地,所述标识获取模块201若判断获知当前账户从第一平台切换至第二平台,则获取所述第一平台的第一用户标识和所述第二平台的第二用户标识;所述允许登录模块202若判断获知所述第一用户标识和所述第二用户标识相同,且所述第一平台的登录认证标识不为空,则确认所述当前账户为安全的多平台账户,并允许所述当前账户切换登录至所述第二平台;所述拒绝登录模块203若判断获知所述第一用户标识和所述第二用户标识不同,或所述第一平台的登录认证标识为空,则拒绝所述当前账户切换登录至所述第二平台。

本实施例通过判断第一平台和第二平台的用户标识确定两个平台是否共用同一多平台账户,通过判断第一平台的登录认证标识是否为空确定第一平台是否是通过正常的登录界面登录,以防止xss的多平台账户的泄露,更好地对各网站进行安全防御。

进一步地,在上述装置实施例的基础上,所述装置还包括:

授权提示模块,用于生成第一授权提示信息,并将所述第一授权提示信息发送至目标终端;

切换登录模块,用于若接收到所述目标终端反馈的第一授权信息,则允许所述当前账户切换登录至所述第二平台。

进一步地,在上述装置实施例的基础上,所述装置还包括:

赋值模块,用于若判断获知所述当前账户根据第一平台标识通过登录页面登录所述第一平台,则对所述第一平台的登录认证标识进行赋值。

进一步地,在上述装置实施例的基础上,所述装置还包括:

信息发送模块,用于若判断获知所述当前账户的账户登录信息与历史登录信息不匹配,则生成第二授权提示信息,并将所述第二授权提示信息发送至目标终端。

平台登录模块,用于若接收到所述目标终端反馈的第二授权信息,则允许所述当前账户登录至所述第一平台。

其中,所述历史登录信息包括所述目标终端的位置、ip地址和mac地址。

进一步地,在上述装置实施例的基础上,所述装置还包括:

验证码发送模块,用于若接收到所述目标终端反馈的拒绝授权信息,则向通信终端发送验证码请求。

验证码返回模块,用于若接收到所述通信终端返回的验证码,则根据所述验证码允许所述当前账户登录至所述第一平台。

进一步地,在上述装置实施例的基础上,所述装置还包括:

重新认证模块,用于根据预设时间段对所述当前账户进行重新登录认证,或,若判断获知当前终端锁屏或重启,则对所述当前账户进行重新登录认证。

本实施例所述的多平台账户的安全防御装置可以用于执行上述方法实施例,其原理和技术效果类似,此处不再赘述。

参照图3,所述电子设备,包括:处理器(processor)301、存储器(memory)302和总线303;

其中,

所述处理器301和存储器302通过所述总线303完成相互间的通信;

所述处理器301用于调用所述存储器302中的程序指令,以执行上述各方法实施例所提供的方法。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法。

本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1