本发明涉及互联网技术领域,具体涉及一种恶意用户的检测方法、装置及系统。
背景技术:
随着网络技术的发展,越来越多的用户通过互联网进行各种各样的社交活动,如网络聊天、网络游戏、广告发布及互联网金融平台投资等。除正常用户外,随之而来的还有各种从事黑色产业的用户,他们通过批量注册账号,批量实施恶意行为牟取利益。这些行为不仅破坏了线上平台的生态环境,而且造成了其他用户财产和精神损失,影响恶劣。
为了打击上述恶意行为,网络平台的维护人员通常进行事前和事中管控,一方面在流程上要求绑定实名手机号、验证手机验证码,提高恶意行为实施成本;另一方面,通过记录一个用户短时间内累积执行某种行为的次数,并按照经验设定一个阈值,当该用户的执行该行为的次数超过阈值,则将该用户识别为恶意用户。
但是由于打码平台存在,使得恶意用户可以通过打码平台代收验证码,恶意行为实施成本大幅降低;另一方面,按照经验设定阈值的方式,只要恶意用户的恶意行为执行方式发生了变化,就会导致恶意用户的识别率越来越低,识别效果变差。
技术实现要素:
本发明针对现有技术中存在的技术问题,提供一种恶意用户检测方法、装置及系统。
本发明解决上述技术问题的技术方案如下:
第一方面,本发明提供一种恶意用户检测方法,包括以下步骤:
获取用户会话特征及行为数据,并根据会话特征对用户进行分类;
根据历史用户行为数据制定检测策略;
对不同分类的用户赋予不同的权重向量wi,i为用户所属分类;并根据当前用户的行为数据计算当前用户的行为特征;
根据权重向量wi及行为特征计算目标用户行为的恶意指数,根据所述检测策略判断目标用户是否为恶意用户。
恶意指数=f(wi,行为特征)
进一步,所述的根据历史用户行为数据制定检测策略包括:
获取被举报用户信息,根据所述被举报用户信息查询被举报用户的完整的历史行为数据;
对所述的被举报用户的完整的历史行为数据进行数据挖掘,确定检测策略。
进一步,本方法还包括:所述检测策略包括计算周期和判断阈值x,所述恶意指数大于所述判断阈值时,则认为目标用户为恶意用户。
进一步,本方法还包括:所述判断阈值x,采用浮标策略进行动态更新:
当判断阈值x时,检测到的真实恶意用户增加了n,则判断阈值x=x+f(β,n),β为调节因子。
进一步,本方法还包括:所述行为特征包括:一定周期内同一ip同时登陆账号数、各行为占比、各行为执行间隔方差。
进一步,所述的用户会话特征包括:目标用户注册时间、手机号码归属、ip地理位置。
第二方面,本发明还提供一种恶意用户检测装置,包括:
采集模块,用于获取用户会话特征及行为数据,并根据会话特征对用户进行分类;
学习模块,用于根据历史用户行为数据制定检测策略;
行为特征计算模块,用于对不同分类的用户赋予不同的权重向量wi,i为用户所属分类,并根据当前用户的行为数据计算当前用户的行为特征;
恶意用户检测模块,用于根据权重向量wi及行为特征计算目标用户行为的恶意指数,根据所述检测策略判断目标用户是否为恶意用户。
进一步,所述学习模块还包括:
举报处理模块,用于获取被举报用户信息;
回溯模块,用于根据所述被举报用户信息查询被举报用户的完整的历史行为数据;
策略制定模块,用于对所述的被举报用户的完整的历史行为数据进行数据挖掘,确定检测策略。
第三方面,本发明还包括一种恶意用户检测系统,包括:用户检测装置和数据存储系统;
所述用户检测装置,其包括:
采集模块,用于获取用户会话特征及行为数据,并根据会话特征对用户进行分类;
学习模块,用于根据历史用户行为数据制定检测策略;
行为特征计算模块,用于对不同分类的用户赋予不同的权重向量wi,i为用户所属分类,并根据当前用户的行为数据计算当前用户的行为特征;
恶意用户检测模块,用于根据权重向量wi及行为特征计算目标用户行为的恶意指数,根据所述检测策略判断目标用户是否为恶意用户;
所述数据存储系统,用于存储所述用户检测装置的采集模块采集的实时数据和历史数据,其包括:
hadoop集群,用于存储历史数据全量;
druid,用于存储实时数据增量。
本发明的有益效果是:通过根据用户所执行的行为中目标行为的特征以及用户恶意指数,与动态更新的阈值进行比较,检测恶意行为用户,从而可以检测出采用不断改变行为执行策略的方式实施恶意行为的用户。由于现有技术中恶意用户往往采用改变执行目标行为间隔的方式逃避识别,因此,基于动态策略的检测方式,降低了恶意用户成功逃避识别的概率,提高了恶意行为和恶意用户的检出率,优化了恶意行为的检测效果。
附图说明
图1为本发明方法流程图;
图2为本发明装置结构图;
图3为本发明系统结构图。
具体实施方式
以下结合附图对本发明的原理和特征进行描述,所举实例只用于解释本发明,并非用于限定本发明的范围。
如图1所示,本发明提供一种恶意用户检测方法,包括以下步骤:
获取用户会话特征及行为数据,并根据会话特征对用户进行分类;所述的用户会话特征包括:目标用户注册时间、手机号码归属、ip地理位置等。
根据历史用户行为数据制定检测策略;包括计算周期和判断阈值x等,所述恶意指数大于所述判断阈值时,则认为目标用户为恶意用户。
制定检测策略时,首先获取被举报用户信息,根据所述被举报用户信息查询被举报用户的完整的历史行为数据;然后对所述的被举报用户的完整的历史行为数据进行数据挖掘,确定检测策略。
对不同分类的用户赋予不同的权重向量wi,i为用户所属分类;并根据当前用户的行为数据计算当前用户的行为特征;所述行为特征包括:一定周期内同一ip同时登陆账号数、各行为占比、各行为执行间隔方差等。
根据权重向量wi及行为特征计算目标用户行为的恶意指数,根据所述检测策略判断目标用户是否为恶意用户。
恶意指数=f(wi,行为特征)
不同分类下属于“恶意行为”的可能性是不同的。
比如对于某一用户,通过计算得出他属于a、b、c三种类型的概率分别为0.7,0.2,0.1.那么在计算。而这三种类型下有可能产生恶意行为的概率分别为0.3,0.5,0.8,那么他的恶意指数=0.3*0.7+0.5*0.2+0.8*0.1,再与设定的阈值进行比对,最终得到是否为恶意行为的判断。恶意指数越高说明该用户实施过恶意行为的可能性越大。
从贝叶斯视角来描述,具体公式是这样:
设y=1时该用户为恶意用户,πi为该用户被分为i类的概率,xi为某一高阶特征,θ为高阶特征的权重,w为每个分类下对恶意指数贡献的权重,则:
πi=θ1x1+…+θnxn
令g(x|θ)=πi
p(y=1|w,θ)=f(z(g(x|θ),w))
其中z=w1π1+…+wnπn。
所述判断阈值x,采用浮标策略进行动态更新:
当判断阈值x时,检测到的真实恶意用户增加了n,则判断阈值x=x+f(β,n),β为调节因子。
图2为本发明装置结构图。一种恶意用户检测装置,包括:
采集模块,用于获取用户会话特征及行为数据,并根据会话特征对用户进行分类;
学习模块,用于根据历史用户行为数据制定检测策略;
行为特征计算模块,用于对不同分类的用户赋予不同的权重向量wi,i为用户所属分类,并根据当前用户的行为数据计算当前用户的行为特征;
恶意用户检测模块,用于根据权重向量wi及行为特征计算目标用户行为的恶意指数,根据所述检测策略判断目标用户是否为恶意用户。
进一步,所述学习模块还包括:
举报处理模块,用于获取被举报用户信息;
回溯模块,用于根据所述被举报用户信息查询被举报用户的完整的历史行为数据;
策略制定模块,用于对所述的被举报用户的完整的历史行为数据进行数据挖掘,确定检测策略。
图3为本发明系统结构图。一种恶意用户检测系统,包括:用户检测装置和数据存储系统;
所述用户检测装置,其包括:
采集模块,用于获取用户会话特征及行为数据,并根据会话特征对用户进行分类;
学习模块,用于根据历史用户行为数据制定检测策略;
行为特征计算模块,用于对不同分类的用户赋予不同的权重向量wi,i为用户所属分类,并根据当前用户的行为数据计算当前用户的行为特征;
恶意用户检测模块,用于根据权重向量wi及行为特征计算目标用户行为的恶意指数,根据所述检测策略判断目标用户是否为恶意用户;
所述数据存储系统,用于存储所述用户检测装置的采集模块采集的实时数据和历史数据,其包括:
hadoop集群,用于存储历史数据全量;
druid,用于存储实时数据增量。
实时数据和历史数据在处理上的区别,一是存储方式不同,历史数据全量存储到hadoop集群上,而实时数据增量存储到druid中;二是处理流程不同,历史数据通常简单进行数据清洗后就存储了,后期使用时再提取出来进行更复杂的计算;而实时数据通常会进行实时计算并将计算结果马上应用,这里的应用包括各项统计指标实时展示、各项服务相应策略等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。