记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

在注册时检测社交网络中的虚假账户—以Wechat为例

2020-04-29 11:23

笔记作者:CDra90n@SecQuan
原文作者:Dong Yuan, Yuanli Miao, Neil Zhenqiang Gong, Zheng Yang, Qi Li, Dawn Song, Qian Wang, Xiao Liang
原文标题:Detecting Fake Accounts in Online Social Networks at the Time of Registrations
原文来源:CCS‘19
原文链接:http://people.duke.edu/~zg70/papers/Ianus.pdf

在线社交网络充斥着虚假信息。特别是攻击者可以利用大量的虚假帐户(也称为Sybils),通过传播垃圾邮件、恶意软件和虚假消息破坏正常用户的安全和隐私。现有的Sybil检测方法依赖于Sybils生成的内容,行为和/或社交图谱。这些方法的主要局限性在于发现Sybils时会导致明显的延迟,即在检测到Sybils时可能已经执行了许多恶意活动。

在这项工作中提出Ianus,一种利用帐户注册信息的Sybil检测方法。Ianus的目标是在Sybils注册后立即发现它们。

首先,使用来自微信(Wechat,中国最大的在线社交网络)带有Sybils标签的真实注册数据集进行了一项测量研究,以获得Sybils和正常用户的注册模式,发现Sybils倾向于具有同步且异常的注册模式。

其次,根据测量结果,将Sybil检测建模为图推理问题,这能够集成异构特征。特别为每一对帐户提取基于同步和异常的特征,使用这些特征构建一个图,其中Sybils之间紧密相连,而正常用户与其他正常用户和Sybils隔离或稀疏连接,最后通过分析图的结构来检测Sybils。

使用微信的实际注册数据集评估Ianus。此外微信每天使用Ianus分析新注册的账户并检测Sybils。通过微信安全团队的手动验证,发现每天大约每100万个新注册帐户中Ianus可以检测到40万,平均准确率超过96%。

一、引言

一些已知的方法利用了由Sybils生成的内容(例如推文中的URL)、行为(例如浏览记录,点赞,照片上传)或社交图谱(例如好友关系图friendship graph,关注者关系图follower-followee graph)。它们面临一个关键的局限性:在检测Sybils方面会产生重大延迟。具体来说,它们要求Sybils在检测到它们之前先生成丰富的内容、行为或社交图。因此,Sybils在被检测到之前可能已经执行了各种恶意活动。

这项工作旨在在注册时检测Sybils。验证码似乎是防止注册Sybil帐户的自然选择。但是,许多研究表明,攻击者可以使用机器学习技术来自动绕过验证码,从而使其无效。本文建议根据注册信息检测Sybils。

每个注册都有一个属性列表,例如IP地址,电话号码(可以在微信中用作用户ID),设备ID(例如IMEI),昵称等。发现Sybils之间共享与这些属性相关的同步注册模式(synchronized registration)。例如许多Sybil使用具有相同的24位前缀的IP地址进行注册,这意味着它们在同一子网的集群中进行注册。

但是,同步不足以区分Sybils和正常用户。特别是,某些正常用户也会共享同步的注册属性,例如使用具有相同前缀的IP。共享同步注册属性的两个帐户是否为Sybils,取决于同步属性的风险/异常。因此将进一步研究异常注册模式。例如,当两个Sybil使用相同的IP前缀进行注册时,该IP前缀本身就是异常的,比如许多相同IP前缀的注册都在深夜进行。但是,当两个正常用户使用相同的IP前缀进行注册时,IP前缀的异常程度就较小,例如相同IP前缀的帐户主要在白天进行注册。

其次,根据测量结果,设计Ianus来使用Sybils的注册数据来对其进行检测。关键挑战是如何集成同步和异常注册模式,它们是异构的。Ianus利用图推理技术来应对这一挑战。

具体来说,系统目标是利用同步和异常注册模式来构建加权图,以表示帐户之间的复杂关系;然后通过分析图的结构来检测Sybil。以这样的方式构建图,即每个节点都是一个帐户,Sybils相互紧密连接,而正常帐户之间以及与Sybils的连接稀疏。为了实现该目标,Ianus具有三个组成部分,即特征提取,图构建和Sybil检测。在特征提取中,对于一对帐户,提取二分类的基于同步的特征(synchronization based features,例如两个帐户使用同一设备进行注册)和基于异常的特征(anomaly based features,例如共享设备异常),这受同步和异常注册模式的测量启发。

使用基于同步的特征和异常的特征,具体来说根据一对帐户的特征为其分配同步异常(sync-anomaly)分数。同步异常分数表征了两个帐户之间的同步和异常模式,如果一对帐户具有更多同步和异常注册属性,则它们具有较高的同步异常分数。为一对帐户分配同步异常分数的一种方法是对它们的二分类特征求和并将总和视为同步异常分数。

但是这种基于特征和的方法不会考虑特征的权重。因此使用机器学习技术(特别是逻辑回归)来学习自动对不同特征加权的同步异常评分。然后使用其同步异常分数在帐户之间创建边。特别是要构建仅Sybil相互紧密连接的图,仅当根据其同步异常分数将两个帐户都预测为Sybil时,才在两个帐户之间创建一条边。此外将同步异常分数视为边的权重。

在Sybil检测组件中,社区发现算法(CommunityDetection)是检测Sybil的最佳选择,因为Sybil在图中紧密相连。此外设计了一种基于加权节点度(weighted node degree based)的简单方法来检测Sybils。具体而言如果图中的节点通过具有较大权重的边连接到更多Sybil,则其加权程度较大,这表明该节点更有可能是Sybil。因此,如果加权度足够大,则Ianus可以预测该节点为Sybil。

第三,使用来自微信的注册数据集评估Ianus。Ianus可以以很高的精度(92.4%)检测到大部分的Sybils(查全率为80.2%)。针对Ianus的每个组件广泛评估了不同的设计选择。具体来说,在特征提取中,结果表明,基于同步特征和基于异常特征是互补的,将它们组合在一起确实可以提高检测精度。在图构建中,发现使用逻辑回归学习同步异常分数要优于基于特征和的同步异常分数。

在Sybil检测组件中,将流行的Louvain方法[5]作为社区检测方法进行了评估。结果表明,Louvin方法和基于加权节点度的方法均实现了精确的检测。但是,基于加权节点度的方法比Louvain方法更有效。例如,Louvain方法需要40分钟来分析图,而基于加权节点度的方法仅需要10分钟。微信会应用Ianus在每天注册的帐户中检测Sybil。微信安全团队证实,Ianus每天可以检测到大约每百万个新注册帐户40万个,平均精确度超过96%。

二、注册方式测量

2.1数据集

从微信获取了用户注册数据集,该数据集于2017年11月收集。具体而言,该数据集包括140万个注册帐户,包括大约77万个正常帐户和65万个Sybil帐户。标签是从微信现有的基于行为的Sybil检测系统(该系统会在注册这些帐户几个月后就预测标签,因为它需要足够的帐户行为)获取标签和用户报告(用户可以在微信中报告其他人为Sybil)。

微信安全团队手动检查了一些随机采样的帐户,发现准确率超过95%。本文承认95%的准确度而不是100%的准确度可能会给测量结果带来偏差。但是认为这种偏差应该很小,并且测量结果具有代表性。

注册属性:每个注册都有一个属性列表,如上表所示。电话号码是用户用来注册帐户的号码。每个号码只能注册一个帐户,并且可以用作帐户ID。在中国,电话号码的格式为+ 86-xxx-xxxx-xxxx,其中前两位数字+86是中国的国家/地区代码,后三位数字代表移动电话服务提供商(例如,中国联通),中间的四位数字代表区号(例如,从北京获得的手机号码具有特定的区号),最后四位数字代表客户区号。

用户还可以指定昵称,昵称可以是数字,英文字符,中文字符和其他特殊字符的组合。微信版本(例如6.6.7)和操作系统版本(例如iOS 10.3.2)分别表示用于注册帐户的微信应用和移动操作系统。WiFi MAC是用于注册帐户的电话的接入点的MAC地址,而设备ID是用于注册帐户的电话的IMEI / Adsource。

道德和隐私方面:已在微信的隐私政策中明确规定了收集的数据,用户在使用微信之前均已同意。此外,为了保护用户隐私,微信对属性进行了匿名化,仅足以进行本文分析。具体来说,一个IP地址有四个段,每个段分别进行哈希处理。电话号码的后四位数字(即客户代码)将被删除。所有数据集都存储在微信服务器上,通过实习项目访问它们。

2.2同步

发现Sybil帐户显示出通用的注册模式,例如,它们可能使用相同的IP,来自相同区域的电话号码,相同的设备(由其设备ID标识)以及具有相同模式的昵称。怀疑原因是攻击者的资源有限(即IP,电话号码和设备)并且使用某些脚本来自动注册Sybil帐户。略微滥用一下术语,将其称为同步(synchronized)注册模式。接下来描述测量结果。

IP:微信目前仅支持IPv4的注册。IPv4地址分为四个部分。将前三段(即前24位)视为本地网络标识符。在某些情况下(例如,使用CIDR),前三个网段可能不代表本地网络,但是研究中发现使用前三个段来表示IP对于Sybil检测很有用。因此如果两个IP具有相同的24位前缀,则将它们视为相同。数据集中总共有264,830个24位IP前缀。对于每个24位IP前缀,将使用IP前缀注册的正常(或Sybil)帐户分组在一起。

因此,组的大小表示从相应的24位IP前缀注册的正常(或Sybil)帐户的数量。上图(a)显示了注册给定数量的正常(或Sybil)帐户的IP前缀的数量。观察到正常和Sybil注册的幂律现象,即大多数IP前缀注册了少量帐户,而少量IP前缀注册了大量帐户。例如,IP前缀的34.5%和15.5%分别注册了正常帐户和Sybil帐户的80%。

此外,Sybil帐户更有可能使用相同的IP前缀进行注册。特别是,注册大量Sybil帐户的IP前缀要远远多于注册大量正常帐户的IP前缀,上图(b)进一步显示了从已注册给定数量帐户的IP前缀注册的帐户中Sybils的比例。例如,当x轴是0-1时,找到注册了0-500个帐户的所有IP前缀,而y轴是这些帐户中Sybils的分数。观察到,当IP前缀注册少量帐户(例如0-500)时,仅基于它们共享IP前缀这一事实就很难判断这些帐户是否为Sybils。但是,当使用相同的IP前缀注册大量(例如,> 2,500个)帐户时,这些帐户更有可能是Sybils。

电话号码:每个电话号码可以注册一个帐户,攻击者可以使用来自某个电话服务提供商和特定地理区域的电话号码来注册Sybil。

回想一下,除了最后四位数字以外的电话号码表示电话服务提供商和区号。因此对删除最后四位数字的电话号码的前缀进行了研究。像IP前缀一样,上图(a)显示了注册给定数量帐户的电话号码前缀的数量,而图(b)显示了从注册给定数量电话号码前缀的注册帐户中Sybils的比例帐户数。

像IP前缀一样,观察到电话号码前缀类似的同步模式。特别是,大量的电话号码前缀注册了少量的帐户,而少量的电话号码前缀注册了大量的帐户(幂律现象);Sybil可能使用相同的电话号码前缀在集群中注册;并且如果电话号码前缀注册了大量帐户(例如,≥30),则这些帐户很可能是Sybils。

设备:类似于IP前缀和电话号码前缀,上图(a)显示了注册给定数量帐户的设备(由IMEI或Adsource标识)的数量,而上图(b)显示了Sybils在这些帐户中所占的比例从注册了给定数量帐户的设备上注册。观察到类似的同步模式:Sybil可能是从同一设备注册的。攻击者可以例如通过修改Android应用程序框架来欺骗设备ID。结果表明,攻击者并未针对大量Sybil帐户的注册进行这种设备欺骗。

昵称:在这里显示了有关昵称模式分析的一些定性结果。上表显示了三个昵称模式,每个模式的一个示例,以及昵称遵循特定模式的帐户中Sybils的比例。请注意,数据集中的昵称已在微信级别上进行了字符级别匿名化,研究者无法理解昵称中的语义模式。上表中的结果是在微信安全工程师的帮助下获得的。观察到正常帐户更可能使用某些昵称模式(例如,中文+数字),而Sybils更可能使用某些昵称模式(例如,小写+数字,数字+小写+数字) 。Sybils共享昵称模式的原因可能是因为它们是通过脚本注册的,脚本会按照某些模式生成昵称。

启示:一方面,测量结果表明同步模式对于检测Sybils很有用。例如可以设计一种简单的方法,以根据IP,电话号码或设备的普及程度来检测Sybil帐户。具体来说,考虑一天中的所有注册,可以根据IP前缀(或电话号码前缀或设备)预测注册的所有帐户都是Sybils,这些帐户注册超过一定的阈值。

例如,可以预测从电话号码前缀中注册的30多个帐户都是Sybils。这种简单的检测器在数据集中可以达到几乎100%的精度。另一方面,结果还表明单个属性(例如IP,电话号码或设备)的同步不足以检测Sybil。例如,基于电话号码的检测器仅实现59%的查全率,即无法检测到41%的Sybil。因此,将结合多个属性的同步模式和异常模式,将在下面讨论。

2.3异常

如果两个注册共享相同的IP前缀,电话号码前缀,设备或昵称模式,则它们是同步的。上一节中的测量结果表明,Sybils可能表现出同步模式。但是,仅同步是不足以区分正常账户和Sybils的。例如,假设两个帐户是从注册了少量帐户(例如0-500)的同一IP前缀中注册的;这两个帐户是否为Sybils进一步取决于共享IP前缀的风险。

换句话说,如果从同一IP前缀注册了两个帐户(这也是异常的),则两个帐户更有可能是Sybils。假设两个帐户共享一个昵称模式,上表显示正常帐户和Sybils都共享昵称模式。因此,两个帐户是否为Sybils进一步取决于共享昵称模式的风险。同步特征表示了两个账户是否共享某些注册属性,而异常则进一步表示了共享属性的风险。将展示几个异常模式示例的结果。

注册时间:上图显示了从同一IP前缀注册的帐户相对于时间的分布。每个图均显示20个示例IP前缀的结果。将一天中的24小时划分为96个15分钟的间隔, 图中的每条竖线都显示了在这96个时间间隔内从某个IP前缀注册的帐户,其中点的大小与在相应时间间隔内注册的帐户数目成正比。可以观察到,使用相同的IP前缀注册的大量正常帐户平均在白天注册,而在午夜则注册了少量。但是,当许多Sybil通过相同的IP前缀注册时,它们是在集群中以及在深夜注册的。请注意,针对由其IP确定的时区标准化了时间。

地理位置不一致:IP地址可以映射到地理位置,电话号码也可以使用其区号映射到地理位置。有65%的Sybils在注册时具有不同的基于IP的位置和基于电话号码的位置。可能的原因是,攻击者使用了远程的机器或云服务器以及从本地获取的电话号码来注册Sybil。

另一个可能的原因是,攻击者从其他地区购买电话号码并使用本地计算机注册Sybil。此外,用户在注册帐户时可以指定其位置(例如,国家)作为其帐户简档的一部分。发现有96%的Sybils指定的国家与基于IP的国家不一致。可能的原因是这些Sybils的目标是特定位置的正常用户。注意到在约会诈骗( dating fraud)中也存在这种地理位置不一致。

稀少/过时的微信/操作系统版本: 观察到使用注册的帐户更有可能是Sybils。如果从它注册的帐户数量很少(即小于3%),则该微信或操作系统版本是稀少的。例如某个Android版本仅在数据集中注册了2K帐户,其中96.5%是Sybils。同样,从iOS 8(过时的OS版本)注册的帐户中有99%是Sybils。可能的原因:攻击者使用版本已过时的旧设备来注册Sybil,并且攻击者使用脚本自动注册了Sybil,而未在脚本中更新其微信和操作系统版本。

三、IANUS

Ianus旨在使用注册数据来检测Sybil。Ianus包含三个关键组成部分,即特征提取,图构建和Sybil检测。上图显示了这三个组件。在特征提取中,为一对(pair)注册提取特征,提取了基于同步的特征和基于异常的特征。基于同步的特征表示一对注册是否具有相同的注册属性(例如,IP前缀,电话号码前缀,设备ID),而基于异常的特征进一步表示这些属性是否异常。

图构建组件旨在构建加权图,以整合异构同步和异常模式。称为注册图( registration graph)。图中的每个节点都是一个注册。旨在构建一个图以使Sybils通过具有较大权重的边紧密地相互连接,而正常帐户则与Sybils彼此稀疏地连接。

为了建立这样的图,首先使用逻辑回归分类器学习每对注册的同步异常评分。使用同步异常评分来量化两次注册之间的同步和异常模式。较高的同步异常分数意味着这两个注册更可能是Sybils。然后,如果在创建注册图时它们的同步异常得分足够大,则在两个注册之间创建一条边。

Sybil检测组件旨在通过分析注册图的结构来检测Sybil。例如,社区发现是检测Sybils的首要选择,因为Sybils在注册图中紧密相连,但正常账户没有。此外提出了一种基于加权节点度的简单方法来检测注册图中的Sybils,该方法与社区发现方法具有相似的精度,但速度更快。在图中具有较高权重度的节点更有可能是Sybil。因此,如果节点的加权度大于阈值,则可以预测该节点为Sybil,这是使用机器学习技术得到的。

3.1 基于同步的特征

上表显示了基于同步的特征。为每个特征添加前缀“ S-”以指示它们是基于同步的。这些特征大多数都是不言自明的。例如,当且仅当两个注册使用具有相同24位前缀的IP时,特征S-IP24才为1。当且仅当两个注册使用相同的电话号码前缀(其中电话号码的后四位数字被删除)时,S-PN才为1。

基于昵称的特征:从昵称中提取句法模式和语义模式。特征S-NP1和S-NP2分别基于句法和语义模式。从词汇表V = {C,L,U,D,···}中定义一个字符串形式的语法模式,其中C代表汉字,L和U分别代表小写和大写英文字母,D代表数字,而每个标点符号和特殊字符(例如;,。,+)仍然是词汇表中的一个字符。例如,昵称李雷abAB12 ++的句法模式是CCLLUUDD ++。如果一对注册的昵称具有相同的句法模式,则特征S-NP1为1。

句法模式考虑昵称的结构,但忽略其语义。例如,一个随机的中文字符串和一个中文名称可能具有相同的句法模式但具有不同的语义。如果两个帐户的昵称都是随机的中文字符串,则两个帐户的同步性更高,因为随机的中文字符串可能由攻击者的脚本自动生成。因此进一步从昵称中提取语义模式。

具体来说,定义了几种语义模式,包括中文短语,随机中文字符串,英语短语,中文拼音和随机英语字符串。对于仅使用汉字的昵称,提取语义模式中文短语和随机中文字符串,对于仅使用英文字母的昵称,提取语义模式英语短语,中文拼音和随机英语字符串。汉语拼音是一种使用英文字母表示汉字的方法。

3.2.基于异常的特征

为一对注册提取基于异常的特征,这些基于异常的特征描述了一对注册是否都具有异常属性。直观上,异常可以用于表征每个单独注册的属性。因此,可以为每个单独的注册提取基于异常的特征,并且可以将一对注册的特征串联为它们的特征。更正式地说,可以为注册A提取基于异常的特征FA。

然后,对于一对注册A和B,可以将它们的特征(FA,FB)连接为它们的统一特征。但是,两个注册的顺序(即(FA,FB)与(FB,FA))的顺序对这种串联特征有很大的影响,并且一对注册没有规范的顺序。结果,在建立配准图时,要学习一对注册的同步异常分数要困难得多。因此,在提取基于异常的特征时,会共同考虑两个注册,这不取决于两个注册的顺序。

上表显示了基于异常的二分类特征。为它们添加前缀“ A-”以表示它们是基于异常的特征。接下来描述这些特征的细节。

地理位置不一致(A-Location):在微信中,用户可以在其个人资料中任意指定其位置,例如国家/地区。该位置信息将显示给用户的朋友。此外,当用户A向另一个用户B发送好友请求时,用户B可以查看用户A的个人资料中的一些基本信息(包括位置)。因此,某些Sybils将其位置指定为特定位置,目的是无论该Sybils实际来自何处,都以该位置的用户为目标。

请注意,可以使用IP地址来确定注册帐户的位置。如果帐户的用户指定位置和基于IP的位置不同,则地理位置不一致。由于基于异常的特征表示了一对注册共享的异常模式,因此为一对注册定义了一个二分类特征A-Location,如果两个注册都具有地理位置不一致的情况,则为1。在实验中考虑了国家/地区级别的地理位置。

稀少/过时的OS/微信版本(A-OS和A WeChat):分别为OS和WeChat版本设计了两个特征,计算使用特定操作系统版本注册的比例。如果一小部分注册使用操作系统版本,那么说操作系统版本稀少。在实验中,如果少于5%的注册使用OS版本,则很少。此外,根据领域知识,人工将某些操作系统版本标记为过时。

例如,将低于版本8的iOS版本标记为过时。如果注册使用稀少或过时的OS版本,则将其视为异常;如果两个注册都使用稀少或过时的OS版本,则一对注册的二分类特征A-OS为1。同样,为一对注册定义一个二分类特征A-WeChat,如果两个注册都使用稀少或过时的微信版本,则为1。

注册时间(A-Time):测量结果表明,Sybil帐户甚至在深夜都会注册,而正常帐户主要在白天进行了注册。因此,设计了一个二分类特征A-Time,当且仅当两个帐户都在深夜(即工作中的凌晨2点到凌晨5点之间)注册时,才将其设置为1。

昵称模式(A-NP):使用自然语言处理技术提取句法和语义昵称模式,语义昵称模式的示例包括中文短语,随机中文字符串,英语短语,中文拼音和随机英语字符串。直观上,普通用户很少使用随机的中文字符串(例如,鲍技坦痹)和随机的英语字符串(例如,nzadnhen),它们并不有意义,因此将这些视为异常的昵称模式。如果两个注册共享一个昵称模式,并且昵称模式异常,则它们的二分类特征A-NP为1。

3.3构造注册图

目标是构建一个以帐户为节点的注册图,Sybils更有可能通过具有较大权重的边紧密地相互连接,而正常帐户则更有可能被隔离。为了实现这一目标,只有在两个帐户都被预测为Sybils的情况下,才能在两个帐户之间建立边。同步异常评分大于0.5意味着相应的两个帐户都被预测为Sybils。因此,仅当两个帐户的同步异常评分大于0.5时,才会在两个帐户之间创建一条边,并且将同步异常评分用作边权重。

一种简单的构造注册图的方法是为每对注册/帐户计算同步异常分数,并根据同步异常分数创建边。但是,这种成对比较不能扩展到大量注册。例如,微信每周有数百万的注册。如果计划每周检测一次Sybils,则需要计算10^14个以上的同步异常分数来构建注册图,如果可能的话,这非常具有挑战性。

如果一对注册都是Sybil,则它们很可能具有同步的属性,例如,它们具有相同的IP前缀,电话号码前缀或设备ID。因此,对于每个注册属性(包括24位IP前缀,电话号码前缀和设备ID),将注册分为几组,其中每个组所考虑的注册属性具有相同的值。

然后仅计算同一组内成对注册的同步异常分数,如果同步异常分数大于0.5,则创建边。请注意,无论一对注册出现在多少个组中,都只需要计算一次它们的同步异常得分,因为该得分并不取决于一对注册出现在多少个组。

3.4 检测Sybils

社区发现:在构造的注册图中,Sybils相互紧密连接,而正常账户与Sybils相互之间稀疏连接。因此,社区发现是在注册图中检测Sybils的天然选择。例如,可以使用流行的Louvain方法来检测注册图中的社区,并预测其大小大于Sybils的社区中的帐户。注意,EvilCohort 也使用Louvain方法来基于用户登录来检测Sybil。

加权节点度:提出了一种基于加权节点度的简单方法来检测配准图中的Sybils。节点的权重度是节点边权重的总和。直观地,如果一个节点在注册图中与更多邻居连接,则该节点更有可能是Sybil。这是因为,根据构造注册图的原则,对于邻居,根据它们的同步异常评分(即边缘权重)预测邻居和节点都是Sybil。因此,具有较大加权节点度的节点更有可能是Sybil。

学习一种基于加权节点度的二元分类器来检测Sybil。分类器将节点的加权度作为特征输入,并预测其是否为Sybil。发现加权节点度的值范围很广,从而使检测不准确。因此,首先使用tanh函数对其进行归一化(输出在区间(-1,1)中),该函数用作特征归一化。具体来说,对于节点,将节点的加权度放入tanh函数中,并将函数输出视为节点的归一化加权度。

给定一个包含标记的正常节点和标记的Sybil节点的训练数据集(例如,用于学习同步异常分数的训练数据集),学习一个二分类器来检测Sybils。尽管任何二分类器均适用,但在实验中利用了称为EasyEnsemble的集成分类器来应对不平衡的训练数据集。尽管数据集不是高度不平衡的(参见下表),但发现EasyEnsemble仍然可以通过简单分类器(如逻辑回归)提高检测精度。

四、微信实际部署

使用scala和Python在Spark上实现了Ianus;使用jieba和n-gram训练工具srilm 分析昵称模式。此外,在Spark上利用GraphX和MLlib来处理图并实现机器学习分类器。

检测结果:微信每天部署Ianus检测Sybil。具体来说,微信每天都会使用Ianus分析前一天注册的帐户并检测Sybil。在野外,每天每100万新注册帐户中,Ianus会检测到40万个Sybils。上表显示了在训练Ianus之后的三个月中,某个星期被Ianus预测为Sybils的帐户数量。微信安全团队从该期间注册的账户中随机检查了均匀抽样的40K账户。

具体来说,他们检查了帐户的公共信息,例如个人资料图片,时刻/帖子,朋友邀请等。微信安全团队在将帐户标记为Sybil时采用了保守标准。特别是,如果该帐户发布大量广告,频繁发送好友请求,发布色情内容等,则该帐户将被标记为Sybil。

在40K帐户中,有51.1%的帐户被标记为Sybils,其余48.9%的帐户被标记为正常。Ianus预测4万帐户中有39.9%是Sybils。此外,Ianus的Precision达到96%,查全率达到75%。微信与其他现有检测系统一起运行Ianus,并封禁多个预测为Sybils的帐户。一些正常帐户也可能被错误地封号。但是用户可以通过手动验证过程申请重新激活其帐户。总体而言,大约6%的被封帐户申请了解锁帐户。

结论

在这项工作中发现Sybils使用来自微信的现实标记的注册数据集同时具有同步和异常注册模式。同步注册模式意味着攻击者使用具有相同前缀,来自相同区域,相同设备的电话号码的IP来注册Sybil,而异常注册模式则意味着共享属性对于Sybils而言进一步变得异常。

根据测量结果设计Ianus来检测Sybil。特别是,Ianus提取一对帐户的同步和异常特征,使用这些特征构建仅Sybil彼此紧密连接的图,并通过分析图的结构来检测Sybil。对来自微信的注册数据集的实证评估表明,Ianus可以有效地检测Sybils。此外,当部署在微信上时,Ianus可以在野以高精度检测大量的Sybil。研究表明,使用注册数据可以有效地检测出Sybil。未来有趣的工作是进一步探索基于注册数据的无监督Sybil检测方法。

安全学术圈招募队友-ing,有兴趣加入学术圈的请联系secdr#qq.com
    👍 赞0👎 踩
    知识来源: https://mp.weixin.qq.com/s/DYYvjF6Rx1Xg7PVB80EKKA

    阅读:46192 | 评论:0 | 标签:无

    想收藏或者和大家分享这篇好文章→复制链接地址

    “在注册时检测社交网络中的虚假账户—以Wechat为例”共有0条留言

    发表评论

    姓名:

    邮箱:

    网址:

    验证码:

    公告

    ❤人人都能成为掌握黑客技术的英雄⛄️

    ADS

    随机推荐

    标签云