在线社交网络中异常帐号检测方法研究

2024-03-01 14:10

本文主要是介绍在线社交网络中异常帐号检测方法研究,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

作者 张玉清 吕少卿 范 丹

一.引言

在线社交网络已经成为人们生活、工作、交流的重要平台.
异常帐号 (虚假帐号和被盗用的帐号),严重危害到在线社交网络的信誉评价体系以及用户的信任关系.
异常帐号检测主要涉及3方面的内容:
(1)异常帐号的表现.帐号具有形态各异的表现,并且帐号的表现是一个动态过程,在不同的阶段具有不同的行为特征;
(2)检测方案的设计.选择合适的特征和算法来设计既满足准确率又满足效率的检测方案;
(3)检测方案的验证.设计的检测方案只有采用真实数据验证后才能够证明有效.
本文结构
第2节介绍在线社交网络中异常帐号的表现形式以及异常帐号检测所面临的挑战;
第3节分类分析探讨异常帐号检测方法的关键技术和研究现状并总结在异常帐号检测实验中数据获取、数据标识和结果验证的主要方法;
第4节展望未来的发展趋势;
第5节为总结.

二.社交网络中异常帐号及挑战

2.1 异常帐号分类

根据异常帐号的不同表现形式,我们将在线社交网络中异常帐号的状态变化分为3个阶段
(1)创建阶段.攻击者通过自动化工具利用虚假个人信息创建大量虚假帐号.
(2)发展阶段.社交网络帐号之间需要建立联系才能够传播消息,攻击者为了使恶意消息传播更广泛需要与其他正常帐号建立联系;同时攻击者为了快速增加异常帐号的可信程度,会与其他异常帐号建立联系。
(3)应用阶段.当异常帐号与其他正常帐号及异常帐号之间建立一定联系后,攻击者就会通过这些异常帐号执行各种恶意行为,如发布广告、钓鱼、 色情消息等,或通过这些帐号来恶意增加其他帐号的信誉,如批量关注、恶意点赞等。有些攻击者还会通过盗用正常用户的帐号来执行这些恶意行为。
根据3个不同阶段以及检测时的不 同侧重将异常帐号分为以下5类
(1)僵尸帐号( Social Bot).即由攻击者通过自动化工具创建的虚假帐号,能够模拟正常用户的操作如发布消息、添加好友等。僵尸帐号是攻击者创建的异常帐号在创建阶段的表现,主要侧重于自动化的创建过程,而不去考虑这些帐号被创建的目的,针对僵尸帐号的检测也主要利用帐号创建时的特征,如帐号昵称的命名规则等。
(2) Sybil 帐号. 社交网络中描述在网络结构中攻击者所创建的虚假帐号。Sybil 帐号相当于异常帐号在发展阶段的表现,针对 sybil 帐号的检测主要通过图结构方面的异常。
(3)Spam 帐号.Spam 帐号是攻击者创建的虚假帐号在应用阶段的统称,即这些帐号主要用来发 布广告、钓鱼、色情等信息,或用来恶意改变社交网络中的信誉,如恶意互粉、添加好友、点赞等行为.针 对Spam 帐号的检测主要侧重于恶意行为和恶意内容的特征。
(4) Compromised 帐号.即被劫持帐号.这些帐号原本是正常帐号,但被攻击者劫持来执行恶意行为.正常帐号拥有大量的正常用户好友,且具有正常的行为特征,所以攻击者往往通过各种方法盗取正常帐号进行恶意行为.由于Compromised帐号是由正常用户创建,没有帐号创建以及发展阶段的特征,因此针对Compromised帐号的检测主要利用帐号行为的突变来进行.
( 5) SpamCampaign.即攻击者创建的大量虚假帐号以及盗用的 Compromised帐号在集中时间段来传播恶意信息或执行其他恶意行为,称其为 SpamCampaign.针对SpamCampaign的检测主要通过这些帐号在同一时间段内的群体行为,如同时发布相同消息或者同时点赞某个页面等

2.2  异常帐号检测主要挑战

(1)异常帐号的多种表现形式
(2)异常帐号特征的动态变化
(3)社交网络巨大的用户数据
(4)网络空间的复杂性
将一般异常检测或图中异常检测的研究成果直接应用到在线社交网络中异常帐号检测无法取得令人满意的效果

三 社交网络中异常帐号检测方法

基于行为特征和基于内容的检测方案将异常帐号检测看为一个分类问题,即分别利用帐号的行为特征和帐号发布的内容来区分正常帐号和异常帐号.
基于图的检测方案是利用正常帐号和异常帐号在所形成的图中具有不同的结构模式或连接方式,将异常帐号检测问题转化为图中异常检测问题,再利用图挖掘的相关算法来区分正常帐号和异常帐号
无监督学习的方法是基于正常帐号有相同的特征或者符合一定的模型,通过特征的聚类或者建立模型来检测异常帐号
这里写图片描述

3.1  基于行为特征的检测方案

利用异常帐号与正常帐号在行为特征方面的不同来检测异常帐号.
基本流程 : 首先在社交网络中获取数据训练集,然后从数据中抽取相应的行为特征,再利用分类算法对这些特征进行训练形成分类器,最后利用测试样本集对分类器进行测试并判断分类结果.

3.2  基于内容的检测方案

检测的重点放在判断用户发布的消息是否为恶意消息.基于内容的检测方案能够在用户发布消息时即可判断该消息是否为恶意消息, 与基于行为特征的检测方案相比更加及时
根据不同的消息内容利用对象,将基于内容的检测方案分为
利用单个帐号的内容特征
利用群体帐号的内容特征

3.3  基于图的检测方案

基于图的检测方案关键是构造一个图,在图中异常帐号与正常帐号具有不同的结构或者连接方式,然后利用图挖掘的相关算法找到图中具体的异常结构或者异常节点。
社交网络中的图结构,显性:好友关系图, 隐性图结构:访问关系、分享关系、URL 共享关系。
(1)好友关系图
(2)其他关系图

3.4  无监督学习的检测方案

有监督学习的方法需要花费大量的时间来标记异常帐号,而且标记的样本数量与质量对于检测结果有较大的影响.基于图的检测方案尽管是无监督学习的,但是需要构建图结构。无监督学习的检测方案不需要提前对数据进行标记,因此能够更快的形成检测系统。根据具体的算法我们将无监督学习的方案分为两类:基于聚类和基于模型。
(1)基于聚类
(2)基于模型

3.5 检测方案的对比

3.6 实验方法总结

3.6.1 数据获取方式
  1. 爬虫获取
  2. 公开数据集
  3. 与社交网站合作
3.6.2 数据标识方式
  1. 人工标识
  2. URL黑名单检测工具
  3. 蜜罐系统
  4. 地下市场购买
  5. 社交网络自身功能
3.6.3 结果验证方式
  1. 人工验证
  2. 与社交网站合作
  3. 社交网站自身的功能

这篇关于在线社交网络中异常帐号检测方法研究的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/762711

相关文章

SpringBoot日志配置SLF4J和Logback的方法实现

《SpringBoot日志配置SLF4J和Logback的方法实现》日志记录是不可或缺的一部分,本文主要介绍了SpringBoot日志配置SLF4J和Logback的方法实现,文中通过示例代码介绍的非... 目录一、前言二、案例一:初识日志三、案例二:使用Lombok输出日志四、案例三:配置Logback一

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

mysql出现ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost‘ (10061)的解决方法

《mysql出现ERROR2003(HY000):Can‘tconnecttoMySQLserveron‘localhost‘(10061)的解决方法》本文主要介绍了mysql出现... 目录前言:第一步:第二步:第三步:总结:前言:当你想通过命令窗口想打开mysql时候发现提http://www.cpp

Mysql删除几亿条数据表中的部分数据的方法实现

《Mysql删除几亿条数据表中的部分数据的方法实现》在MySQL中删除一个大表中的数据时,需要特别注意操作的性能和对系统的影响,本文主要介绍了Mysql删除几亿条数据表中的部分数据的方法实现,具有一定... 目录1、需求2、方案1. 使用 DELETE 语句分批删除2. 使用 INPLACE ALTER T

MySQL INSERT语句实现当记录不存在时插入的几种方法

《MySQLINSERT语句实现当记录不存在时插入的几种方法》MySQL的INSERT语句是用于向数据库表中插入新记录的关键命令,下面:本文主要介绍MySQLINSERT语句实现当记录不存在时... 目录使用 INSERT IGNORE使用 ON DUPLICATE KEY UPDATE使用 REPLACE

Java异常架构Exception(异常)详解

《Java异常架构Exception(异常)详解》:本文主要介绍Java异常架构Exception(异常),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. Exception 类的概述Exception的分类2. 受检异常(Checked Exception)

SpringBoot使用OkHttp完成高效网络请求详解

《SpringBoot使用OkHttp完成高效网络请求详解》OkHttp是一个高效的HTTP客户端,支持同步和异步请求,且具备自动处理cookie、缓存和连接池等高级功能,下面我们来看看SpringB... 目录一、OkHttp 简介二、在 Spring Boot 中集成 OkHttp三、封装 OkHttp

CentOS 7部署主域名服务器 DNS的方法

《CentOS7部署主域名服务器DNS的方法》文章详细介绍了在CentOS7上部署主域名服务器DNS的步骤,包括安装BIND服务、配置DNS服务、添加域名区域、创建区域文件、配置反向解析、检查配置... 目录1. 安装 BIND 服务和工具2.  配置 BIND 服务3 . 添加你的域名区域配置4.创建区域

mss32.dll文件丢失怎么办? 电脑提示mss32.dll丢失的多种修复方法

《mss32.dll文件丢失怎么办?电脑提示mss32.dll丢失的多种修复方法》最近,很多电脑用户可能遇到了mss32.dll文件丢失的问题,导致一些应用程序无法正常启动,那么,如何修复这个问题呢... 在电脑常年累月的使用过程中,偶尔会遇到一些问题令人头疼。像是某个程序尝试运行时,系统突然弹出一个错误提

电脑提示找不到openal32.dll文件怎么办? openal32.dll丢失完美修复方法

《电脑提示找不到openal32.dll文件怎么办?openal32.dll丢失完美修复方法》openal32.dll是一种重要的系统文件,当它丢失时,会给我们的电脑带来很大的困扰,很多人都曾经遇到... 在使用电脑过程中,我们常常会遇到一些.dll文件丢失的问题,而openal32.dll的丢失是其中比较