本发明提出了一种面向黑客论坛的用户画像构建方法,用于对国外著名黑客论坛的成员构建用户画像。该面向黑客论坛的用户画像构建方法分为用户基本信息构建、用户研究领域提取、用户技术能力评估三个模块。用户基本信息构建模块基于统计学方法和数据挖掘技术,实现用户身份信息的采集和黑客活跃度的统计。用户研究领域提取模块基于机器学习算法,通过对黑客论坛中的用户数据进行聚类、分类,提取出用户的研究领域。用户技术能力评估模块基于机器学习算法,对用户的社交网络影响力和其发言质量进行分析进而评估其技术能力。该面向黑客论坛的用户画像构建方法通过对公开的论坛讨论数据进行处理,合理多方位的对黑客论坛中的用户的技术水平、研究方向、活跃程度、社交网络影响等多个属性进行刻画,提供一个较为精准的用户画像方法。
背景技术:
随着网络安全形势日益严峻,在社交网络中也出现了一些专门用来交流黑客技术的论坛。这些黑客论坛中聚集大量的资深黑客以及安全研究者。其行为包括交流黑客技术;传播黑客工具、源代码;组织黑客攻击行动等。对这些黑客论坛中的用户发言和用户行为进行分析并构建用户画像,可以推动追踪溯源、态势分析、舆情监控等安全领域的发展。
用户画像是真实用户的虚拟代表,根据用户的属性、行为习惯等信息抽象出一个标签化的用户模型,最终实现对用户的精准刻画。在黑客论坛中的用户主要是黑客以及安全研究者,分析用户的研究方向、影响力以及技术能力等维度可以较好地构建用户画像。
目前,机器学习、自然语言处理等技术已经广泛应用于网络安全领域。黑客论坛的用户画像构建涉及到用户研究领域的提取、用户技术能力的评估,可以运用机器学习和自然语言处理技术对用户画像的相关维度进行分析。
本文基于上述思路,提出一种基于面向黑客技术社区的用户画像构建方法,从用户的基本信息、研究领域、技术能力多维度构建用户画像。
技术实现要素:
为了对黑客论坛中的用户进行画像构建,本发明提出一种多维度画像构建的方法,包括用户的基本信息构建、用户研究领域提取、用户技术能力评估。用户基本信息构建收集论坛中用户的基本信息以及活跃度;用户研究领域提取根据训练好的机器学习模型对用户的发言进行处理分析,预测出其研究领域;用户技术能力评估通过社交网络分析判断其在社交网络中的重要程度,同时根据训练好的机器学习模型对其发言质量进行分析,预测其发言质量的高低,结合其在社交网络的重要程度和发言质量高低,判断其技术能力。该方法是一种多维度、精准的黑客技术社区用户画像构建的方法。具体包括:用户基本信息构建模块、用户研究领域提取模块、用户技术能力评估模块。
用户基本信息构建模块:该模块主要实现对黑客社区中的用户进行基本信息的收集。收集的信息主要包括用户名、注册时间、用户等级、所属论坛、发言数量、发起讨论数量。同时,根据所有用户发言数量和发起讨论数量(1次发起讨论计5次发言)计算其活跃并且进行活跃的排序,前20%活跃度为高,中间40%为中,最后40%为低。
用户研究领域提取模块:该模块主要对用户的研究领域进行提取。首先为了确定黑客论坛包含哪些研究领域类型,模块对论坛所有数据使用lda主题提取算法进行聚类,通过得到的主题词,判断出黑客论坛包括五大研究领域类型,即web、system、mobile、database、network。其次为了确定具体用户的研究领域,系统使用logistics回归算法训练分类模型,通过对用户的发言进行分析,预测出其研究领域。
用户技术能力评估模块:该模块主要通过用户在社交网络中的影响力和其发言质量确定其技术能力。用户的影响力是由社交网络分析得到的,社交网络图g=(v,e)是一个有权、有向图。节点是社交网络中的所有用户、边是用户之间的互动关系,权重是互动数量。构建规则是如果用户a在b之后发言,则产生一条a到b权重为1的边,若边已经存在则权重加1。根据得到的社交网络图邻接矩阵采用pagerank算法计算其影响力高低。发言质量的判断则使用svm算法对用户发言数据进行训练得到分类模型,对用户发言数据进行预测,得到用户发言与黑客领域相关的比例。用户技术能力的评估首先对所有用户的pagerank值进行排序,若pagerank值相同则按照用户发言质量进行排序,最终得到用户技术能力排名。
附图说明
图1是本发明的系统示意图。
图2是本发明的用户基本信息构建模块示意图。
图3是本发明的用户研究领域提取模块示意图。
图4是本发明的用户技术能力评估模块示意图。
具体实施方式
现结合附图和具体实施方式对本发明进一步说明。本发明一种面向黑客技术社区的用户画像构建方法由用户基本信息构建模块,用户研究领域提取模块,用户技术能力评估模块构成。图1是本发明的系统示意图,图2是本发明的用户基本信息构建模块示意图,图3是本发明的用户研究领域提取模块示意图,图4是本发明的用户技术能力评估模块示意图。
用户基本信息构建模块:首先从采集的数据中收集论坛中的所有用户,根据用户名进一步收集其注册时间、所属论坛、用户等级、发言数量、发起讨论数量。将上述用户基本信息存放至数据库中。然后,统计每个用户的活跃度信息,1次发起讨论计5次发言,计算总的发言数为活跃度信息。对活跃度信息进行排序,按照2:4:4的比例确定活跃度为高中低,并将活跃度存储至数据库。最后将用户基本信息作为用户画像的一部分。
用户研究领域提取模块:由于黑客论坛数据杂乱,为了确定黑客论坛所包含的研究领域数目和类别,从而更好地确定用户个体的研究领域,模块首先以黑客论坛中的每一个讨论群组为单位,存储每个群组的所有参与人员发言的集合。然后使用lda聚类算法对所有讨论群组进行聚类,并提取出每个类别的主题词,聚类的数量以lda算法的困惑度最低为优。接下来根据每个类别提供的主题词由专业人员确定其所属的安全研究领域,接着对确定好的所有类别的研究领域进行去重,最后得到黑客论坛所包含的五个研究领域,即web、system、mobile、database、network。为了得到黑客的研究领,模块使用logistic回归算法进行训练得到分类模型,并使用分类模型对每一个讨论群组的主题进行预测。最后,对于每一个用户,统计其参与群组的主题分布得到其最有可能的研究领域。
用户技术能力评估模块:首先评估用户在社交网络的影响力,根据用户在论坛中的行为比如发起讨论、回复等行为,构建社交网络图。社交网络图的构建方法为社交网络图g=(v,e)是一个有权、有向图。节点是社交网络中的所有用户、边是用户之间的互动关系,权重是互动数量。构建规则是如果用户a在b之后发言,则产生一条a到b权重为1的边,若边已经存在则权重加1。根据得到的社交网络图邻接矩阵采用pagerank算法计算其pagerank值作为影响力评估的结果。其次评估用户发言质量,对所有用户的发言根据其内容和黑客领域相关或无关进行标注,使用svm分类算法进行训练得到分类器,然后使用分类器对每一个用户的所有发言进行预测,计算其与黑客领域相关的发言占总发言的比例作为发言质量的评估结果。最后,按照影响力pagerank值进行排序,若pagerank值相同则按照发言质量高低进行排序,最终得到社交网络中用户的技术能力排名作为评估的结果。