发明内容
基于此,有必要提供一种能提高识别的准确率的恶意用户识别方法。
一种恶意用户识别方法,包括:
获取全局用户的用户标识,计算其对应的信用度,根据所述全局用户的用户标识对应的信用度生成全局用户信用分布;
获取预设的查询条件,根据所述查询条件在所述全局用户的用户标识中筛选得到条件用户的用户标识;
获取所述条件用户的用户标识对应的信用度,根据所述条件用户的用户标识对应的信用度生成条件用户信用分布;
获取预设的信用度阈值,在所述全局用户信用分布和条件用户信用分布中分别获取其信用度大于/小于所述信用度阈值的全局优质/恶意用户数以及条件优质/恶意用户数;
获取预设的优质/恶意用户数阈值,计算所述全局优质/恶意用户数与所述条件优质/恶意用户数的差值,根据所述差值和所述优质/恶意用户数阈值判断所述查询条件是否对应恶意用户。
此外,还有必要提供一种能提高识别的准确率的恶意用户识别装置。
一种恶意用户识别装置,包括:
全局分布生成模块,用于获取全局用户的用户标识,计算其对应的信用度,根据所述全局用户的用户标识对应的信用度生成全局用户信用分布;
条件用户查找模块,用于获取预设的查询条件,根据所述查询条件在所述全局用户的用户标识中筛选得到条件用户的用户标识;
条件分布生成模块,用于获取所述条件用户的用户标识对应的信用度,根据所述条件用户的用户标识对应的信用度生成条件用户信用分布;
用户筛选模块,用于获取预设的信用度阈值,在所述全局用户信用分布和条件用户信用分布中分别获取大于/小于所述信用度阈值的全局优质/恶意用户数以及条件优质/恶意用户数;
恶意用户识别模块,用于获取预设的优质/恶意用户数阈值,计算所述全局优质/恶意用户数与所述条件优质/恶意用户数的差值,根据所述差值和所述优质/恶意用户数阈值判断所述查询条件是否对应恶意用户。
上述恶意用户识别方法,根据查询条件对应的条件用户的条件用户信用度分布与社交网络应用上注册的全局用户的全局用户信用度分布的差异性来判定条件用户是否对应恶意用户,与传统技术相比,即使某些添加了干扰的垃圾信息漏过检查,仍然能通过恶意用户与非恶意用户提交的消息在整体上的差异性将其识别出来,从而识别的准确率较高。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
除非上下文另有特定清楚的描述,本发明中的元件和组件,数量既可以单个的形式存在,也可以多个的形式存在,本发明并不对此进行限定。本发明中的步骤虽然用标号进行了排列,但并不用于限定步骤的先后次序,除非明确说明了步骤的次序或者某步骤的执行需要其他步骤作为基础,否则步骤的相对次序是可以调整的。可以理解,本文中所使用的术语“和/或”涉及且涵盖相关联的所列项目中的一者或一者以上的任何和所有可能的组合。
如图1所示,在一个实施例中,一种恶意用户识别方法,该方法的执行依赖于计算机程序,可运行于基于冯洛伊曼体系的计算机***上,该方法包括:
步骤S102,获取全局用户的用户标识,计算其对应的信用度,根据所述全局用户的用户标识对应的信用度生成全局用户信用分布。
全局用户即为在社交网络应用中注册的用户。用户在社交网络应用中注册后,社交网络应用中通常使用用户数据库存储已注册用户的用户标识及相应注册信息、用户资料。可在用户数据库中查找到全局用户的用户标识。
用户标识对应的信用度即为该用户标识对应的社交网络账号提交给社交网络服务器的消息(UGC,User Generated Content,用户生成内容)的信用程度。若某个用户经常使用其社交网络账号在社交网络应用上提交具有色情、暴力、广告或政治目的的垃圾信息,则该用户的信用度则较低。
恶意用户即为信用度较低的用户,恶意用户通常将垃圾信息频繁传播给其他用户,从而影响其他用户的正常浏览。与恶意用户相对应的即为优质用户,优质用户信用度较高,为正常使用社交网络,较少违规发帖、较少重复发帖且发帖内容合乎规范的用户。
在本实施例中,计算全局用户的用户标识对应的信用度的步骤可具体为:获取全局用户的用户标识对应的消息提交次数、在线时长和垃圾消息提交次数;通过将消息提交次数、在线时长和垃圾消息提交次数分别乘以相应的预设的权重系数后叠加得到全局用户的用户标识对应的信用度。
例如,若某用户共向社交网络应用提交消息N1次,其中提交垃圾消息的次数为N2次,且在线的天数为D,则可根据公式:
C=k1×N1+k2×D-k3×N2
其中,C即为信用度,k1、k2和k3分别为相应的权重系数。
在优选的方式中,还可预先设定时间区间,获取该时间区间内全局用户的用户标识对应的消息提交次数、在线时长和垃圾消息提交次数,并根据上述公式计算出全局用户在该时间区间中的信用度。例如,预先设定的时间区间为上个月,从而可获取社交网络应用上的用户在上个月30天内提交消息的次数、提交垃圾消息的次数以及上个月30天中由多少天登录过,进而计算出全局用户在上个月的信用度。
需要说明的是,对于用户提交的消息,可通过关键字匹配或机器学习算法来识别其是否为垃圾消息。例如,若消息的内容中具有与色情、暴力、政治、广告和政治目的的关键字,则可将其判定为垃圾消息,相应的,在统计垃圾消息提交次数时则加1。也可使用用于识别垃圾邮件的支持向量机对消息进行分类,从而识别用户提交的消息是否为垃圾消息。
全局用户信用分布即为计算得到社交网络应用上的用户各自的信用度后,信用度大小与用户人数的分布情况。需要说明的是,用户数均为百分比用户数,以下不再赘述。如图2所述,横轴即为信用度(可归一化到0至100),纵轴即为小于或等于相应信用度的百分比用户数。由图中即可看出,信用度小于或等于60的用户数为30%。
步骤S104,获取预设的查询条件,根据查询条件在全局用户的用户标识中筛选得到条件用户的用户标识。
在本实施例中,查询条件在社交网络应用的注册用户中筛选出特定用户群体(即条件用户)的条件信息。可以是IP地址、消息标识、用户群组标识或用户个人资料属性值中的一种。
例如,若某个IP地址在一个月内群发了大量的消息,即向社交服务器提交了大量UGC,则该IP地址对应的用户可能为恶意用户,该恶意用户可能在该IP地址下使用多个社交网络账号发送垃圾信息,可根据将该IP地址作为查询条件。
再例如,若某条消息被多个用户转发了多次,则转发的用户很可能也为恶意用户,其在恶意转发垃圾消息,可将该消息标识作为查询条件查找出所有转发该条消息的条件用户。
对于用户群组标识和用户个人资料属性值,不法分子通常先注册多个社交网络应用账号,通过切换群发垃圾消息,这些不法分子用于群发垃圾信息的社交网络应用账号通常在注册时,填写的用户个人资料属性值通常具有相似性(例如为同一个地方的人、同一个学校毕业等等),可使用用户个人资料属性值作为查询条件筛选出这部分用户。
步骤S106,获取条件用户的用户标识对应的信用度,根据条件用户的用户标识对应的信用度生成条件用户信用分布。
如前所述,已计算得到全局用户即社交网络应用中注册的用户各自的信用度,则可获取筛选出的条件用户的用户标识对应的信用度。条件用户信用分布即为以条件用户作为样本空间生成的信用度分布,如图3所示。
进一步的,获取条件用户的用户标识对应的信用度的步骤之前还可获取查找得到的条件用户的用户标识的数目,判断其是否大于识别阈值,若是,则执行获取条件用户的用户标识对应的信用度的步骤。
也就是说,若根据查询条件筛选出的用户标识的数量较少,小于识别阈值,则可判定该查询条件对应的用户不是恶意用户(因为危害性较大的恶意用户群发垃圾消息通常需要非常多的社交网络应用账号)。
步骤S108,获取预设的信用度阈值,在全局用户信用分布和条件用户信用分布中分别获取其信用度大于/小于信用度阈值的全局优质/恶意用户数以及条件优质/恶意用户数。
如图2和图3所示,若使用优质用户数来进行识别且信用度阈值为60,,则可得到信用度大于60的全局优质用户数为;信用度大于60的条件优质用户数为。若使用恶意用户数来进行识别且信用度阈值为30,则可得到信用度小于30的全局恶意用户数为,信用度小于30的条件恶意用户数为。
步骤S110,获取预设的优质/恶意用户数阈值,计算全局优质/恶意用户数与所述条件优质/恶意用户数的差值,根据差值和所述优质/恶意用户数阈值判断查询条件是否对应恶意用户。
若使用优质用户数来进行识别,则将全局优质用户数与条件优质用户数相减,若差值大于优质用户数阈值,则查询条件对应的用户标识即可能对应恶意用户大量注册的用于群发垃圾信息的社交网络应用账号,即判定该查询条件对应恶意用户。
若使用恶意用户数来进行识别,则将条件恶意用户数与全局恶意用户数(百分比)相减,若差值大于恶意用户数阈值,则查询条件对应的用户标识即可能对应恶意用户大量注册的用于群发垃圾信息的社交网络应用账号,即判定该查询条件对应恶意用户。
判定了查询条件对应恶意用户后,社交网络应用的管理员则可对相应的查询条件对应的用户标识进行处理。例如,若查询条件为IP地址,则社交网络应用的管理员可将该IP地址屏蔽。
在一个实施例中,计算全局用户的用户标识对应的信用度的步骤之后还包括:
获取预设的等级区间阈值,根据等级区间阈值确定所述全局用户的用户标识对应的信用度所属的信用度等级。
且信用度阈值为预设的目标信用度等级。
如图4和图5所示,等级区间阈值可将归一化后(线性缩放到0至100之间)的信用度划分为5个等级,包括:差、较差、一般、较好、良好,每个等级跨度为20的信用度。则全局用户信用分布和条件用户信用分布即转换成离散的仅包含5个柱状体的柱状分布。预设的信用度阈值可以设置为一般或较好,则在计算全局优质用户数时,则可将信用度等级为较好或良好的用户数作为全局优质用户。
使用信用度等级,可使用简单的离散的柱状分布进行计算,从而减少了计算量,提高了识别效率。
在一个实施例中,如图6所示,一种恶意用户识别装置,包括:全局分布生成模块10、条件用户查找模块20、条件分布生成模块30、用户筛选模块40和恶意用户识别模块50,其中:
全局分布生成模块10,用于获取全局用户的用户标识,计算其对应的信用度,根据全局用户的用户标识对应的信用度生成全局用户信用分布。
条件用户查找模块20,用于获取预设的查询条件,根据查询条件在全局用户的用户标识中筛选得到条件用户的用户标识。
条件分布生成模块30,用于获取条件用户的用户标识对应的信用度,根据条件用户的用户标识对应的信用度生成条件用户信用分布。
用户筛选模块40,用于获取预设的信用度阈值,在全局用户信用分布和条件用户信用分布中分别获取大于/小于信用度阈值的全局优质/恶意用户数以及条件优质/恶意用户数。
恶意用户识别模块50,用于获取预设的优质/恶意用户数阈值,计算全局优质/恶意用户数与条件优质/恶意用户数的差值,根据差值和优质/恶意用户数阈值判断查询条件是否对应恶意用户。
在一个实施例中,全局分布生成模块10还用于获取全局用户的用户标识对应的消息提交次数、在线时长和垃圾消息提交次数;通过将消息提交次数、在线时长和垃圾消息提交次数分别乘以相应的预设的权重系数后叠加得到全局用户的用户标识对应的信用度。
在一个实施例中,全局分布生成模块10还用于获取预设的等级阈值,根据等级阈值确定全局用户的用户标识对应的信用度所属的信用度等级;且信用度阈值为预设的目标信用度等级。
在一个实施例中,查询条件为IP地址、消息标识、用户群组标识或用户个人资料属性值中的一种。
在一个实施例中,条件分布生成模块30还用于获取查找得到的条件用户的用户标识的数目,判断其是否大于识别阈值,若是,则获取条件用户的用户标识对应的信用度。
上述恶意用户识别方法,根据查询条件对应的条件用户的条件用户信用度分布与社交网络应用上注册的全局用户的全局用户信用度分布的差异性来判定条件用户是否对应恶意用户,与传统技术相比,即使某些添加了干扰的垃圾信息漏过检查,仍然能通过恶意用户与非恶意用户提交的消息在整体上的差异性将其识别出来,从而识别的准确率较高。
如图7所示,图7为能实现本发明实施例的一个计算机***1000的模块图。该计算机***1000只是一个适用于本发明的计算机环境的示例,不能认为是提出了对本发明的使用范围的任何限制。计算机***1000也不能解释为需要依赖于或具有图示的示例性的计算机***1000中的一个或多个部件的组合。
图7中示出的计算机***1000是一个适合用于本发明的计算机***的例子。具有不同子***配置的其它架构也可以使用。例如有大众所熟知的台式机、笔记本、个人数字助理、智能电话、平板电脑、便携式媒体播放器、机顶盒等类似设备可以适用于本发明的一些实施例。但不限于以上所列举的设备。
如图7所示,计算机***1000包括处理器1010、存储器1020和***总线1022。包括存储器1020和处理器1010在内的各种***组件连接到***总线1022上。处理器1010是一个用来通过计算机***中基本的算术和逻辑运算来执行计算机程序指令的硬件。存储器1020是一个用于临时或永久性存储计算程序或数据(例如,程序状态信息)的物理设备。***总线1020可以为以下几种类型的总线结构中的任意一种,包括存储器总线或存储控制器、外设总线和局部总线。处理器1010和存储器1020可以通过***总线1022进行数据通信。其中存储器1020包括只读存储器(ROM)或闪存(图中都未示出),以及随机存取存储器(RAM),RAM通常是指加载了操作***和应用程序的主存储器。
计算机***1000还包括显示接口1030(例如,图形处理单元)、显示设备1040(例如,液晶显示器)、音频接口1050(例如,声卡)以及音频设备1060(例如,扬声器)。显示设备1040和音频设备1060是用于体验多媒体内容的媒体设备。
计算机***1000一般包括一个存储设备1070。存储设备1070可以从多种计算机可读介质中选择,计算机可读介质是指可以通过计算机***1000访问的任何可利用的介质,包括移动的和固定的两种介质。例如,计算机可读介质包括但不限于,闪速存储器(微型SD卡),CD-ROM,数字通用光盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设备,或者可用于存储所需信息并可由计算机***1000访问的任何其它介质。
计算机***1000还包括输入装置1080和输入接口1090(例如,IO控制器)。用户可以通过输入装置1080,如键盘、鼠标、显示装置1040上的触摸面板设备,输入指令和信息到计算机***1000中。输入装置1080通常是通过输入接口1090连接到***总线1022上的,但也可以通过其它接口或总线结构相连接,如通用串行总线(USB)。
计算机***1000可在网络环境中与一个或者多个网络设备进行逻辑连接。网络设备可以是个人电脑、服务器、路由器、智能电话、平板电脑或者其它公共网络节点。计算机***1000通过局域网(LAN)接口1100或者移动通信单元1110与网络设备相连接。局域网(LAN)是指在有限区域内,例如家庭、学校、计算机实验室、或者使用网络媒体的办公楼,互联组成的计算机网络。WiFi和双绞线布线以太网是最常用的构建局域网的两种技术。WiFi是一种能使计算机***1000间交换数据或通过无线电波连接到无线网络的技术。移动通信单元1110能在一个广阔的地理区域内移动的同时通过无线电通信线路接听和拨打电话。除了通话以外,移动通信单元1110也支持在提供移动数据服务的2G,3G或4G蜂窝通信***中进行互联网访问。
应当指出的是,其它包括比计算机***1000更多或更少的子***的计算机***也能适用于发明。例如,计算机***1000可以包括能在短距离内交换数据的蓝牙单元,用于照相的图像传感器,以及用于测量加速度的加速计。
如上面详细描述的,适用于本发明的计算机***1000能执行处理状态展示方法的指定操作。计算机***1000通过处理器1010运行在计算机可读介质中的软件指令的形式来执行这些操作。这些软件指令可以从存储设备1070或者通过局域网接口1100从另一设备读入到存储器1020中。存储在存储器1020中的软件指令使得处理器1010执行上述的处理状态展示方法。此外,通过硬件电路或者硬件电路结合软件指令也能同样实现本发明。因此,实现本发明并不限于任何特定硬件电路和软件的组合。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。