CN105721467B - 社交网络Sybil群体检测方法 - Google Patents
社交网络Sybil群体检测方法 Download PDFInfo
- Publication number
- CN105721467B CN105721467B CN201610087673.4A CN201610087673A CN105721467B CN 105721467 B CN105721467 B CN 105721467B CN 201610087673 A CN201610087673 A CN 201610087673A CN 105721467 B CN105721467 B CN 105721467B
- Authority
- CN
- China
- Prior art keywords
- user
- attribute
- sybil
- detected
- value
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000001514 detection method Methods 0.000 claims abstract description 56
- 238000004364 calculation method Methods 0.000 claims description 15
- 238000012549 training Methods 0.000 claims description 7
- 238000010586 diagram Methods 0.000 claims description 4
- 210000001072 colon Anatomy 0.000 claims 1
- 238000004422 calculation algorithm Methods 0.000 abstract description 15
- 238000012544 monitoring process Methods 0.000 abstract description 3
- 230000003542 behavioural effect Effects 0.000 abstract 1
- 230000006399 behavior Effects 0.000 description 38
- 230000006870 function Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 9
- 238000004088 simulation Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000012706 support-vector machine Methods 0.000 description 3
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 2
- 244000046052 Phaseolus vulgaris Species 0.000 description 2
- 230000003044 adaptive effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 230000007547 defect Effects 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 238000002474 experimental method Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000005065 mining Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 229920002472 Starch Polymers 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000003066 decision tree Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000005764 inhibitory process Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 235000019698 starch Nutrition 0.000 description 1
- 239000008107 starch Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L51/00—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
- H04L51/52—User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种社交网络Sybil群体检测方法,可以用于特殊群体检测及舆情监控。其首先根据用户属性与Sybil属性中心之间的欧式距离来计算属性可信度值,对Sybil用户的属性值范围进行统计并找出属性值范围中心,根据用户属性与该值的远近计算用户为Sybil的可能性值,并将该值作为一个重要参数进行用户真实度计算。然后根据真实用户几乎不会向Sybil用户发送关注请求进行真实度权值传播,得到Sybil分类结果。从社交网络中采集较新的实验数据,并手动标注Sybil节点进行分析建模,与最近发表若干检测方法作对比,结果表明基于属性可信度的行为特征的检测算法具有更高的检出率和更低误检率。
Description
技术领域
本发明涉及社交网络特殊群体发现技术领域,特别涉及一种社交网络中Sybil群体检测方法,可应用于谣言阻断、群体行为演化及舆情监控等多种应用领域。
背景技术
Sybil攻击(Sybil Attack)最早用于无线通信领域。Douceur首次给出了Sybil攻击的概念,即在无线网络中,单一节点具有多个身份标识,通过控制系统的大部分节点来削弱冗余备份的作用,Sybil攻击就是指一个恶意的设备或结点违法地以多个身份出现,我们通常把这个设备或节点的这些多余的身份称为Sybil设备或结点。当前大规模的社交网络中采用冗余的方式来面对来自远程的威胁和攻击,但是一些恶意的实体利用这个机会创造多重身份,从而轻而易举地攻击系统,这种攻击称之为Sybil攻击。
对现有的文献检索发现,当前的研究者主要通从用户的自身属性特征及交互行为与社交网络结构特征的关联出发设计了检测模型。
根据自身属性特征的检测方法主要通过提取Sybil群体特殊的属性特征并采用监督或者半监督的机器学习算法进行分类。例如Z.Yang等人在文章“Uncovering socialnetwork sybils in the wild”中根据信任社交网络中用户一定时间内发送的好友请求数量以及请求被接受的比例等属性进行分析,得到了Sybil用户与普通用户的属性差异,并提出了基于支持向量机(Support Vector Machine,SVM)和门限分类的检测方法。X.Zhang等人在文章“You are where you have been:Sybil detection via geo-locationanalysis in OSNs”中提出了一种基于地理位置的Sybil用户检测方法,这种方法利用位置移动信息来区别真实用户和Sybil用户,因为一个真实的用户的移动通常都是可预测的、范围受限的,而Sybil用户受控制者的指挥而有规律地移动。然而,这种用户位置信息很难完整地留下,因此很难保证这种计算移动距离熵的算法的有效性和实用性。上述各种模型分别针对特定的社交平台,通过设定不同属性的方式来提高Sybil节点的检测率或降低其误检率和漏检率,因此具有较差的移植性。
另一方面,通过用户的交互行为的Sybil群体的检测模型主要利用Sybil用户与真实用户之间的行为差异建立社交网络结构图模型进行分类。如Xue J等人在《IEEETransactions on Dependable and Secure Computing》上发表文章“VoteTrust:Leveraging Friend Invitation Graph to Defend against Social Network Sybils”,根据真实用户不会向Sybil用户发送好友请求的特征提出了一种VoteTrust算法。该算法很好地解决了因Sybil用户入侵真实用户社区所导致的基于Sybil社区的检测方法无法准确检测的问题,在以学校等团体用户所形成的信任型社交关系网中具有良好的检测效果,而在以转发、关注为特征构建起来的粉丝型社交网络(如新浪微博)中,由于关注行为等同于好友请求,因此无法解决误关注率较高的问题。而且该检测方法并未深入分析Sybil群体的用户属性特征,且没有考虑Sybil用户之间、普通用户之间、Sybil用户与普通用户之间的行为交互过程。基于此,根据Sybil群体所产生的不同行为和属性特征,采用聚类的方法对这些行为和属性特征进行聚类,甄别出不同的群体。研究社交网络中的Sybil攻击不仅有利于谣言等信息的阻断,而且对人际关系的研究、群体行为演化及网络舆情监控等方面都有深远的意义。
发明内容
为克服现有技术中检测方法的未深入分析Sybil群体的用户属性特征,且没有考虑Sybil用户之间、普通用户之间、Sybil用户与普通用户之间的行为交互过程等不足之处,本发明提出了一个合适的社交网络Sybil群体检测方法,将用户的属性特征和行为特征相结合,形成了一个用户特征的Sybil群体检测方法,从而提高了应对各种不同的社交网络Sybil群体时的检测效果。属性特征可以是粉丝数、微博数、评论数、转发数等。
本发明具体技术方案如下,首先根据用户属性与Sybil属性中心之间的欧式距离来计算属性可信度值,然后根据真实用户不会向Sybil用户发送好友请求建立社交网络结构图模型,最后将属性可信值作为一个重要参数进行图模型中的用户真实度计算。
根据本发明提供的一种社交网络Sybil群体检测方法,包括:
样本数据采集步骤:将从社交网络中已人工分辨出的Sybil用户的用户数据和真实用户的用户数据作为样本数据;
样本数据训练步骤:利用样本数据训练得到最终分类阈值r;具体地,将已人工分辨出的Sybil用户、真实用户作为待检测用户,执行属性可信度计算步骤、建立行为特征图模型步骤、行为特征检测步骤、最终分类阈值获取步骤,从而获得最终分类阈值r;
实际检测步骤:将社交网络中的未知身份用户作为待检测用户,执行属性可信度计算步骤、建立行为特征图模型步骤、行为特征检测步骤,从而获得用户真实度;将未知身份用户的用户真实度与最终分类阈值r进行比较,若未知身份用户的用户真实度大于等于最终分类阈值r,则将未知身份用户认为是真实用户,否则,则将未知身份用户认为是Sybil用户;
其中:
所述属性可信度计算步骤:从用户数据中提取出待检测用户的属性特征,根据待检测用户的属性特征得到待检测用户的属性可信度;
所述建立行为特征图模型步骤:建立带节点属性的拓扑结构图G(V,E,A);节点集合V中的节点一一对应各个待检测用户;边集合E中的边(u,v)表示待检测用户u向待检测用户v发送了一个关注行为;A为属性集合,A=(A1,A2,...,Ai,...,Ak),1≤i≤k,Ai表示第i种属性,k表示属性的数量,k的取值范围为k∈N*,其中,N*表示正整数集;
所述行为特征检测步骤:根据待检测用户的属性可信度及拓扑结构图G得到待检测用户的用户真实度;
所述最终分类阈值获取步骤:根据用户真实度设置或计算得到最终分类阈值r。
优选地,假设对于第i种属性Ai,Sybil用户在第i种属性Ai下的属性值范围的中心值为αi,对于某个待检测用户v,若该待检测用户v在第i种属性Ai下的属性值Ai(v)离αi越远,则认为该待检测用户v的属性可信度越大,即采用离Sybil用户在属性下的属性值范围的中心值的远近来描述待检测用户的属性可信度。
优选地,在所述属性可信度计算步骤中,为了计算属性可信度,作如下定义:
定义1:若对于Sybil用户s的第i种属性Ai的属性值Ai(s),寻找到αi,使得满足下式中对应第i种属性Ai的常数Mi最小:
P(|Ai(s)-αi|≤Mi)>β
则令该属性值Ai(s)的属性值范围Ais为:
Ais∈(αi-Mi,αi+Mi)
其中,P(·)表示概率,β表示设定的Sybil用户比例,常数Mi的取值范围为Mi∈(0,MAX(Ai(s))/2)。
优选地,在所述属性可信度计算步骤中,待检测用户v在属性(A1,A2,...,Ai,...,Ak)下的属性可信度C(v)表示为离Sybil用户在属性(A1,A2,...,Ai,...,Ak)下的属性值范围的中心值(α1,α2,...,αk)的欧式距离:
优选地,在所述实际检测步骤中,执行所述属性可信度计算步骤时,对待检测用户的属性可信度进行优化,以将疑似Sybil用户的待检测用户的属性可信度降低,将疑似真实用户的待检测用户的属性可信度提高:
其中,表示对C(v)进行优化得到的属性可信度;a、b均为参数,用来调整凹凸分段函数的凹凸程度以及使得凹凸分段函数连续;ε表示经验分类阈值。
优选地,在所述行为特征检测步骤中:
(1)将属性可信度最高的多个待检测用户作为初始的真实用户,其中,初始真实用户的数量记为S;
(2)进行初始化权值分配:假定有投票权值W,平均分配给S个初始的真实用户,每个初始的真实用户得到投票权值为W/S,则得到初始时所述拓扑结构图G中任意待检测用户v所对应节点的权值R(v):
其中,v∈S0表示待检测用户v属于初始的真实用户集合S0;表示待检测用户v不属于初始的真实用户集合S0;
(3)根据这些初始的真实用户的发送好友请求情况,将投票权值分配出去,具体为:
假设作为投票者的待检测用户v发送好友请求的数量为w(v),那么该待检测用户v所对应节点分配给每一个被分配投票权值的待检测用户所对应节点的投票权值为R(v)/w(v);
令待检测用户u所对应节点被分配到的投票权值与投票者的属性可信度C(v)成正比,而与该待检测用户u所对应节点自身的属性可信度C(u)成反比,从而得到如下的迭代关系式:
其中,d为衰减参数,作用为使得迭代收敛;R(u)表示待检测用户u所对应节点当前迭代的投票权值;v:(v,u)∈E表示与用户u所对应节点相邻的用户v所对应节点,符号:表示对v取值的解释;R0(u)表示待检测用户u所对应节点前一次迭代的投票权值;
R0(u)经迭代得到将标准化(即归一化)后作为待检测用户u的用户真实度UT(u)。
优选地,在所述最终分类阈值获取步骤中,根据下式寻找r=r0使得f(r)的值最小:
其中,f(r)表示距离A与距离B之和,距离A是指所有误判节点与最终分类阈值之间的距离之和,距离B是指所有漏判节点与最终分类阈值之间的距离之和;u∈Sybil,UT(u)>r表示漏判节点,u∈Sybil表示用户u为Sybil用户;r0表示最优分类阈值,u∈True,UT(u)<r表示误判节点,u∈True表示用户u为真实用户;
将最优分类阈值r0赋值给所述最终分类阈值r。
与现有技术相比,本发明具有如下的有益效果:
现有技术在处理关注转发型社交网络时存在因用户误发送好友请求而导致的误检率较高的问题。本发明首先对若干用户属性进行分析,如微博等在线社交网络,Sybil群体中的个体所关注的对象、被关注的对象或粉丝数都是不同的。然后计算每个属性的Sybil属性值范围,并得到Sybil属性值中心向量。根据每个用户属性值离Sybil中心属性值的远近为标准来判断某个用户为真实用户的概率,并得到用户可信度的初步评价,即用户属性可信度。本发明进一步将单向关注行为等同于发送好友请求,并根据真实用户几乎不会向Sybil用户发送关注请求建立了行为模型,以投票传播(A用户单向关注B用户则A向B传递投票权值)的方法,降低了真实用户向Sybil用户发送关注时的评判价值,从而提高了算法的分类效果。同时本发明在投票传播过程中对所得到的权值根据被投票者的属性可信度进行衰减,降低了Sybil用户所获取的传播权值。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明提供的检测方法的原理图。
图2为本发明提供的方法与多个传统方法之间的检测效果对比图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
根据本发明提供的一种社交网络Sybil群体检测方法,包括:
样本数据采集步骤:将从社交网络中已人工分辨出的Sybil用户的用户数据和真实用户的用户数据作为样本数据;
样本数据训练步骤:利用样本数据训练得到最终分类阈值r;具体地,将已人工分辨出的Sybil用户、真实用户作为待检测用户,执行属性可信度计算步骤、建立行为特征图模型步骤、行为特征检测步骤、最终分类阈值获取步骤,从而获得最终分类阈值r;
实际检测步骤:将社交网络中的未知身份用户作为待检测用户,执行属性可信度计算步骤、建立行为特征图模型步骤、行为特征检测步骤,从而获得用户真实度;将未知身份用户的用户真实度与最终分类阈值r进行比较,若未知身份用户的用户真实度大于等于最终分类阈值r,则将未知身份用户认为是真实用户,否则,则将未知身份用户认为是Sybil用户;
其中:
所述属性可信度计算步骤:从用户数据中提取出待检测用户的属性特征,根据待检测用户的属性特征得到待检测用户的属性可信度;
所述建立行为特征图模型步骤:建立带节点属性的拓扑结构图G(V,E,A);节点集合V中的节点一一对应各个待检测用户;边集合E中的边(u,v)表示待检测用户u向待检测用户v发送了一个关注行为;A为属性集合,A=(A1,A2,...,Ai,...,Ak),1≤i≤k,Ai表示第i种属性,k表示属性的数量,k的取值范围为k∈N*,其中,N*表示正整数集;
所述行为特征检测步骤:根据待检测用户的属性可信度及拓扑结构图G得到待检测用户的用户真实度;
所述最终分类阈值获取步骤:根据用户真实度设置或计算得到最终分类阈值r。
假设对于第i种属性Ai,Sybil用户在第i种属性Ai下的属性值范围的中心值为αi,对于某个待检测用户v,若该待检测用户v在第i种属性Ai下的属性值Ai(v)离αi越远,则认为该待检测用户v的属性可信度越大,即采用离Sybil用户在属性下的属性值范围的中心值的远近来描述待检测用户的属性可信度。
在所述属性可信度计算步骤中,为了计算属性可信度,作如下定义:
定义1:若对于Sybil用户s的第i种属性Ai的属性值Ai(s),寻找到αi,使得满足下式中对应第i种属性Ai的常数Mi最小:
P(|Ai(s)-αi|≤Mi)>β
则令该属性值Ai(s)的属性值范围Ais为:
Ais∈(αi-Mi,αi+Mi)
其中,P(·)表示概率,β表示设定的Sybil用户比例,常数Mi的取值范围为Mi∈(0,MAX(Ai(s))/2)。
在所述属性可信度计算步骤中,待检测用户v在属性(A1,A2,...,Ai,...,Ak)下的属性可信度C(v)表示为离Sybil用户在属性(A1,A2,...,Ai,...,Ak)下的属性值范围的中心值(α1,α2,...,αk)的欧式距离:
在所述实际检测步骤中,执行所述属性可信度计算步骤时,对待检测用户的属性可信度进行优化,以将疑似Sybil用户的待检测用户的属性可信度降低,将疑似真实用户的待检测用户的属性可信度提高:
其中,表示对C(v)进行优化得到的属性可信度;a、b均为参数,用来调整凹凸分段函数的凹凸程度以及使得凹凸分段函数连续;ε表示经验分类阈值。
在所述行为特征检测步骤中:
(1)将属性可信度最高的多个待检测用户作为初始的真实用户,其中,初始真实用户的数量记为S;
(2)进行初始化权值分配:假定有投票权值W,平均分配给S个初始的真实用户,每个初始的真实用户得到投票权值为W/S,则得到初始时所述拓扑结构图G中任意待检测用户v所对应节点的权值R(v):
其中,v∈S0表示待检测用户v属于初始的真实用户集合S0;表示待检测用户v不属于初始的真实用户集合S0;
(3)根据这些初始的真实用户的发送好友请求情况,将投票权值分配出去,具体为:
假设作为投票者的待检测用户v发送好友请求的数量为w(v),那么该待检测用户v所对应节点分配给每一个被分配投票权值的待检测用户所对应节点的投票权值为R(v)/w(v);
令待检测用户u所对应节点被分配到的投票权值与投票者的属性可信度C(v)成正比,而与该待检测用户u所对应节点自身的属性可信度C(u)成反比,从而得到如下的迭代关系式:
其中,d为衰减参数,作用为使得迭代收敛;R(u)表示待检测用户u所对应节点当前迭代的投票权值;v:(v,u)∈E表示与用户u所对应节点相邻的用户v所对应节点,符号:表示对v取值的解释;R0(u)表示待检测用户u所对应节点前一次迭代的投票权值;
R0(u)经迭代得到将标准化(即归一化)后作为待检测用户u的用户真实度UT(u)。
在所述最终分类阈值获取步骤中,根据下式寻找r =r0使得f(r)的值最小:
其中,f(r)表示距离A与距离B之和,距离A是指所有误判节点与最终分类阈值之间的距离之和,距离B是指所有漏判节点与最终分类阈值之间的距离之和;u∈Sybil,UT(u)>r表示漏判节点,u∈Sybil表示用户u为Sybil用户;r0表示最优分类阈值,u∈True,UT(u)<r表示误判节点,u∈True表示用户u为真实用户;
将最优分类阈值r0赋值给所述最终分类阈值r。
优选地,本发明提供的更为具体的技术方案如下:
步骤1,数据采集:获取社交网络中的用户数据,并人工分辨出Sybil用户和真实用户作为样本数据。
步骤2,特征提取:分析Sybil群体的属性和行为特征与真实用户之间的差异性,并将这些特征数据整理成易处理格式,待下一步进行属性特征挖掘和行为特征建模。
步骤3,属性特征:挖掘社交网络中的用户数据,获取用户的属性特征值。Sybil用户的属性值分布在一个较小的范围内,而且与普通用户属性值的分布范围差别较大。因此当某个用户的属性值在Sybil值范围内时,该用户有很大的可能性为Sybil用户;而当某个用户远离该范围时,该用户为Sybil的可能很小。为了定量给出该可能性的值,假设对于某个属性Ai,Sybil群体在该属性下的属性范围中心值为αi,对于某个特定用户v,当该用户的属性值Ai(v)离αi越远时其可信度值越大,即采用离Sybil属性值的远近来描述用户属性可信度。为了计算属性可信度,根据以上分析作如下定义:
定义1:对于Sybil用户s,若节点的某个属性Ai,寻找αi,使得满足下式的常数Mi最小:
P(|Ai(s)-αi|≤Mi)>β
则令该属性值的Sybil范围为
Ais∈(αi-Mi,αi+Mi)
其中β为设定的Sybil用户比例,实际计算时可根据Sybil用户的属性值分布范围进行选择。αi表示Sybil用户在该属性下的平均属性值,即Sybil属性值中心。Ais表示Sybil用户的某个属性值范围,即在该属性下,大多数Sybil用户的属性值是在这个范围内的。
步骤4,属性可信度计算。对于所有用户属性(A1,A2,...,Ak),属性值为(A1(v),A2(v),...,Ak(v)),Sybil群体在这些属性下的属性值中心点为(α1,α2,...,αk)。为了利用普通用户和Sybil用户之间基本属性上的差异进行分类,现有很多机器学习算法,如SVM、C4.5决策树、神经网络等,但是这些算法的复杂度较高,不利于直接属性可信度值,因此本发明采用向量空间模型(VSM)的欧氏距离计算用户属性可信度。一个未知用户v在属性(A1,A2,...,Ak)下的属性可信度C(v)可表示为离Sybil属性值中心(α1,α2,...,αk)的欧式距离为
对于该未知用户,离Sybil属性值中心的欧式距离越近,则表示其为Sybil用户的可能性越大,可信度越小。
为了更好的用属性特征将Sybil用户与普通用户分割开,使二者的可信度差别更大,现采用凹凸函数映射将疑似Sybil用户的可信度值降低,将疑似真实用户的可信度值提高。根据以上分析,可令该凹凸分段函数的表达式为:
映射F应满足
1.为了方便判断节点的真实性,需要将C(v)的范围即值域限定在[0,1];
2.单调递增,即F'(C(v))>0
3.需要根据属性值很好地将Sybil与普通用户分离,考虑属性值在Sybil范围内,F为凹函数,非Sybil范围,F为凸函数:
其中,ε为基于可信度的Sybil用户与真实用户的经验分类阈值,可由样本数据训练得到。
综合上述3点,可以令
其中a,b均为参数,具备以下两点作用:
1.调整函数凹凸程度
2.使得函数F在点连续
步骤5,建立行为特征图模型。建立带节点属性值的拓扑结构图G(V,E,A)。节点集合V表示原社交网络中所有独一无二的用户。将原始数据中的关注行为保留下来,作为节点之间的有向边,边(u,v)∈E表示用户u向用户v发送了一个关注行为。A=(A1,A2,...,Ai,...,AM)表示用户的属性,如丝数、微博数、评论数、转发数等。
步骤6,行为特征检测:根据属性可信度及图模型设计投票传播方法。
Sybil用户向真实用户发送的好友请求很少被接受,即低被接受率,但是Sybil之间可能会串通,相互接受对方发送好友请求以提高自身的被接受率。为了防止串通投票,假定可以忽略真实用户向Sybil用户所发送的好友请求,并利用类似于PageRank的投票机制将每次好友请求看成一次投票行为,通过若干真实用户向整个社交网络分配投票权值。
首先选择属性可信度最高的若干用户作为初始真实用户,进行初始化权值分配。假定有权值W,平均分配给S个真实用户,每个用户得到权值为W/S,则得到任意节点v的初始化权值:
然后根据这些真实节点的发送好友请求情况,将这些权重传递出去。假设每个节点发出的关注者数量为w(v),那么该节点发给每一个节点的权值为R(v)/w(v)。考虑到真实社交网络中用户可能误操作或受到Sybil用户的蛊惑,导致其好友请求并不都是发往真实用户的。因此利用用户的单向关注行为特征来检测Sybil节点时,所传播的权重值可能会流入Sybil节点团体而导致检测效果下降,针对该问题,本发明根据属性可信度对疑似Sybil的用户进行传播抑制,当真实用户向疑似Sybil用户传播投票权值时降低Sybil用户所分配到的权值,即节点分配到的投票权值应与投票者的属性可信度C(v)成正比,而与自身的属性可信度C(u)成反比设计行为检测方法。从而得到如下的迭代关系式:
其中d为衰减参数,作用为使得算法收敛;R0(u)为节点前一次迭代的投票权值。实际操作中迭代若干次直到R(u)的变化范围很小,得到每个用户的投票权值将标准化后,记为用户真实度UT(u),则UT(u)越小节点为Sybil的概率越大,据此可设置自适应阈值进行Sybil分类。
步骤7,根据用户真实度UT(u)寻找最佳判定门限,即采用自适应算法寻找r=r0使得f(r)的值最小:
根据样本数据寻找最终分类阈值r,作为后续将用户的真实度分为真实用户和Sybil用户的标准。
本发明的有效性可以通过下面的仿真实验来进一步说明。需要说明的是,实验中数据及参数的选择不影响本发明的一般性。
1)仿真条件:
CPU Intel i7四核心/八线程2.9GHz,RAM 16.00GB,操作系统Windows 8.1,仿真软件Matlab2012。
2)仿真内容:
本发明采用新浪微博网络进行仿真实验。本实验采用Python爬虫模拟登录新浪微博,首先通过用户个人主页的URL获取目标用户的个人主页并对主页进行源码分析,提取所需要的用户属性值,包括用户的关注数A1(v)和粉丝数A2(v)、微博数A3(v)和评论数A4(v)。根据所发微博是否为广告、无意义信息;所发微博是否有评论,评论是否为自评广告;关注数、粉丝数、微博数、评论数;用户名是否为机器生成;个人简介等手动从样本用户中人工甄别出Sybil用户。最后得到3284个真实用户、516个Sybil用户。
Sybil检测问题为将所有用户分成真实用户(正类,positive)或Sybil用户(负类,negative),本质上为分类问题,目的在于提高分类效果,本发明的采用ROC曲线进行衡量。在一个二分类模型中,对于所得到的连续结果,假设已确定一个阀值,大于这个值的实例划归为正类,小于这个值则划到负类中。如果减小阀值,能识别出更多的正类,也就是提高了识别出的正例占所有正例的比类,即TPR,但同时也将更多的负实例当作了正实例,即提高了FPR。为了用单个数值描述分类器的好坏,引入AUC(Area Under ROC Curve),即处于ROC曲线下方的面积大小,较大的AUC值表示分类效果较好。
将本发明与2个其他的Sybil群体检测方法在新浪微博社交网络上进行仿真对比。这2个方法如下,Xue J等人于2015年在《IEEE Transactions on Dependable and SecureComputing》上发表文章“VoteTrust:Leveraging Friend Invitation Graph to Defendagainst Social Network Sybils”中提出的VoteTrust方法,Fu H于2015年发表的“Leveraging Careful Microblog Users for Spammer Detection”中提出的Carefulness方法。仿真实验结果如图2所示,在相同的FPR下本发明方法TruenessRank的TPR比算法Carefulness和算法VoteTrust要高,导致该结果的原因可能是新浪微博中非活跃用户的粉丝大多为Sybil用户,而CarelessRank利用所有粉丝为单个用户进行投票,非活跃用户无法得到较高的投票权值;在相同的TPR下本算法的FPR比算法VoteTrust[15]要低,原因可能是新浪微博真实用户更容易误关注Sybil用户。为了用单个数值描述分类器的好坏,引入AUC(Area Under ROC Curve)即处于ROC曲线下方的面积,AUC值越大表示分类效果较好。本算法得到的AUC为0.9289,而Carefulness[6]的AUC为0.9072,VoteTrust的AUC为0.7951,表明在所爬取的数据条件下,本算法得到检测效果最好。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (6)
1.一种社交网络Sybil群体检测方法,其特征在于,包括:
样本数据采集步骤:将从社交网络中已人工分辨出的Sybil用户的用户数据和真实用户的用户数据作为样本数据;
样本数据训练步骤:利用样本数据训练得到最终分类阈值r;具体地,将已人工分辨出的Sybil用户、真实用户作为待检测用户,执行属性可信度计算步骤、建立行为特征图模型步骤、行为特征检测步骤、最终分类阈值获取步骤,从而获得最终分类阈值r;
实际检测步骤:将社交网络中的未知身份用户作为待检测用户,执行属性可信度计算步骤、建立行为特征图模型步骤、行为特征检测步骤,从而获得用户真实度;将未知身份用户的用户真实度与最终分类阈值r进行比较,若未知身份用户的用户真实度大于等于最终分类阈值r,则将未知身份用户认为是真实用户,否则,则将未知身份用户认为是Sybil用户;
其中:
所述属性可信度计算步骤:从用户数据中提取出待检测用户的属性特征,根据待检测用户的属性特征得到待检测用户的属性可信度;假设对于第i种属性Ai,Sybil用户在第i种属性Ai下的属性值范围的中心值为αi,对于某个待检测用户v,若该待检测用户v在第i种属性Ai下的属性值Ai(v)离αi越远,则认为该待检测用户v的属性可信度越大,即采用离Sybil用户在属性下的属性值范围的中心值的远近来描述待检测用户的属性可信度;
所述建立行为特征图模型步骤:建立带节点属性的拓扑结构图G(V,E,A);节点集合V中的节点一一对应各个待检测用户;边集合E中的边(u,v)表示待检测用户u向待检测用户v发送了一个关注行为;A为属性集合,A=(A1,A2,...,Ai,...,Ak),1≤i≤k,Ai表示第i种属性,k表示属性的数量,k的取值范围为k∈N*,其中,N*表示正整数集;
所述行为特征检测步骤:根据待检测用户的属性可信度及拓扑结构图G得到待检测用户的用户真实度;
所述最终分类阈值获取步骤:根据用户真实度设置或计算得到最终分类阈值r。
2.根据权利要求1所述的社交网络Sybil群体检测方法,其特征在于,在所述属性可信度计算步骤中,为了计算属性可信度,作如下定义:
定义1:若对于Sybil用户s的第i种属性Ai的属性值Ai(s),寻找到αi,使得满足下式中对应第i种属性Ai的常数Mi最小:
P(|Ai(s)-αi|≤Mi)>β
则令该属性值Ai(s)的属性值范围Ais为:
Ais∈(αi-Mi,αi+Mi)
其中,P(·)表示概率,β表示设定的Sybil用户比例,常数Mi的取值范围为Mi∈(0,MAX(Ai(s))/2)。
3.根据权利要求1所述的社交网络Sybil群体检测方法,其特征在于,在所述属性可信度计算步骤中,待检测用户v在属性(A1,A2,...,Ai,...,Ak)下的属性可信度C(v)表示为离Sybil用户在属性(A1,A2,...,Ai,...,Ak)下的属性值范围的中心值(α1,α2,...,αk)的欧式距离:
4.根据权利要求3所述的社交网络Sybil群体检测方法,其特征在于,在所述实际检测步骤中,执行所述属性可信度计算步骤时,对待检测用户的属性可信度进行优化,以将疑似Sybil用户的待检测用户的属性可信度降低,将疑似真实用户的待检测用户的属性可信度提高:
其中,表示对C(v)进行优化得到的属性可信度;a、b均为参数,用来调整凹凸分段函数的凹凸程度以及使得凹凸分段函数连续;ε表示经验分类阈值。
5.根据权利要求1所述的社交网络Sybil群体检测方法,其特征在于,在所述行为特征检测步骤中:
(1)将属性可信度最高的多个待检测用户作为初始的真实用户,其中,初始真实用户的数量记为S;
(2)进行初始化权值分配:假定有投票权值W,平均分配给S个初始的真实用户,每个初始的真实用户得到投票权值为W/S,则得到初始时所述拓扑结构图G中任意待检测用户v所对应节点的权值R(v):
其中,v∈S0表示待检测用户v属于初始的真实用户集合S0;表示待检测用户v不属于初始的真实用户集合S0;
(3)根据这些初始的真实用户的发送好友请求情况,将投票权值分配出去,具体为:
假设作为投票者的待检测用户v发送好友请求的数量为w(v),那么该待检测用户v所对应节点分配给每一个被分配投票权值的待检测用户所对应节点的投票权值为R(v)/w(v);
令待检测用户u所对应节点被分配到的投票权值与投票者的属性可信度C(v)成正比,而与该待检测用户u所对应节点自身的属性可信度C(u)成反比,从而得到如下的迭代关系式:
其中,d为衰减参数,作用为使得迭代收敛;R(u)表示待检测用户u所对应节点当前迭代的投票权值;v:(v,u)∈E表示与用户u所对应节点相邻的用户v所对应节点,v:(v,u)∈E中的冒号表示对v取值的解释;R0(u)表示待检测用户u所对应节点前一次迭代的投票权值;
R0(u)经迭代得到将标准化(即归一化)后作为待检测用户u的用户真实度UT(u)。
6.根据权利要求5所述的社交网络Sybil群体检测方法,其特征在于,在所述最终分类阈值获取步骤中,根据下式寻找r=r0使得f(r)的值最小:
其中,f(r)表示距离A与距离B之和,距离A是指所有误判节点与最终分类阈值之间的距离之和,距离B是指所有漏判节点与最终分类阈值之间的距离之和;u∈Sybil,UT(u)>r表示漏判节点,u∈Sybil表示用户u为Sybil用户;r0表示最优分类阈值,u∈True,UT(u)<r表示误判节点,u∈True表示用户u为真实用户;
将最优分类阈值r0赋值给所述最终分类阈值r。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610087673.4A CN105721467B (zh) | 2016-02-16 | 2016-02-16 | 社交网络Sybil群体检测方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610087673.4A CN105721467B (zh) | 2016-02-16 | 2016-02-16 | 社交网络Sybil群体检测方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105721467A CN105721467A (zh) | 2016-06-29 |
CN105721467B true CN105721467B (zh) | 2019-01-11 |
Family
ID=56156765
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610087673.4A Active CN105721467B (zh) | 2016-02-16 | 2016-02-16 | 社交网络Sybil群体检测方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105721467B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109190342B (zh) * | 2018-08-20 | 2020-10-23 | 济南大学 | 智慧社区的业主身份验证方法及社区服务器 |
CN110245981B (zh) * | 2019-05-31 | 2021-10-01 | 南京瑞栖智能交通技术产业研究院有限公司 | 一种基于手机信令数据的人群类型识别方法 |
CN110598128B (zh) * | 2019-09-11 | 2022-08-09 | 西安电子科技大学 | 一种对抗女巫攻击的用于大规模网络的社团检测方法 |
CN112839025B (zh) * | 2020-11-26 | 2022-04-12 | 北京航空航天大学 | 基于节点关注和转发特征的Sybil攻击检测方法和电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102186171A (zh) * | 2011-03-11 | 2011-09-14 | 北京工业大学 | 一种抗攻击的可靠无线传感器网络节点定位方法 |
CN103631898A (zh) * | 2013-11-19 | 2014-03-12 | 西安电子科技大学 | 基于强弱联系反馈的多媒体社交网络信誉值计算方法 |
-
2016
- 2016-02-16 CN CN201610087673.4A patent/CN105721467B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102186171A (zh) * | 2011-03-11 | 2011-09-14 | 北京工业大学 | 一种抗攻击的可靠无线传感器网络节点定位方法 |
CN103631898A (zh) * | 2013-11-19 | 2014-03-12 | 西安电子科技大学 | 基于强弱联系反馈的多媒体社交网络信誉值计算方法 |
Non-Patent Citations (1)
Title |
---|
一种社交网络Sybil用户检测方法;康恺等;《计算机科学》;20160115;第43卷(第1期);第3节至第5节 |
Also Published As
Publication number | Publication date |
---|---|
CN105721467A (zh) | 2016-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109962909B (zh) | 一种基于机器学习的网络入侵异常检测方法 | |
Peng et al. | Network intrusion detection based on deep learning | |
CN105721467B (zh) | 社交网络Sybil群体检测方法 | |
CN108322445A (zh) | 一种基于迁移学习和集成学习的网络入侵检测方法 | |
Zhao et al. | Intrusion detection based on clustering genetic algorithm | |
CN110162958B (zh) | 用于计算设备的综合信用分的方法、装置和记录介质 | |
Khoei et al. | Boosting-based models with tree-structured parzen estimator optimization to detect intrusion attacks on smart grid | |
Mizuno et al. | Botdetector: a robust and scalable approach toward detecting malware-infected devices | |
Jain et al. | An enhanced self-learning-based clustering scheme for real-time traffic data distribution in wireless networks | |
Agrawal et al. | Autoencoder for Design of Mitigation Model for DDOS Attacks via M‐DBNN | |
CN117811845B (zh) | 威胁检测及模型训练方法、装置、系统、电子设备、介质 | |
Rohini et al. | Intrusion detection system with an ensemble learning and feature selection framework for IoT networks | |
Malik et al. | Performance evaluation of classification algorithms for intrusion detection on nsl-kdd using rapid miner | |
Velliangiri et al. | Detection of dos attacks in smart city networks with feature distance maps: A statistical approach | |
Manokaran et al. | An empirical comparison of machine learning algorithms for attack detection in internet of things edge | |
Wang et al. | ICDF: Intrusion collaborative detection framework based on confidence | |
Jing et al. | An Innovative Two-Stage Fuzzy kNN-DST Classifier for Unknown Intrusion Detection. | |
CN117675387A (zh) | 基于用户行为分析的网络安全风险预测方法及系统 | |
Bhuyan et al. | Towards an unsupervised method for network anomaly detection in large datasets | |
Manandhar et al. | Intrusion detection based on outlier detection method | |
CN116578970A (zh) | 一种基于图神经网络的异构图中社交机器人检测方法 | |
Yang et al. | An academic social network friend recommendation algorithm based on decision tree | |
Wang et al. | SCFL: Mitigating backdoor attacks in federated learning based on SVD and clustering | |
Saurabh et al. | HMS-IDS: Threat Intelligence Integration for Zero-Day Exploits and Advanced Persistent Threats in IIoT | |
CN113836526A (zh) | 一种基于改进免疫网络算法的入侵检测方法及其应用 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |