CN113191809A - 移动广告点击欺诈检测方法、系统、终端及介质 - Google Patents
移动广告点击欺诈检测方法、系统、终端及介质 Download PDFInfo
- Publication number
- CN113191809A CN113191809A CN202110488455.2A CN202110488455A CN113191809A CN 113191809 A CN113191809 A CN 113191809A CN 202110488455 A CN202110488455 A CN 202110488455A CN 113191809 A CN113191809 A CN 113191809A
- Authority
- CN
- China
- Prior art keywords
- click
- data dependency
- click fraud
- mobile advertisement
- data
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0248—Avoiding fraud
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/018—Certifying business or products
- G06Q30/0185—Product, service or business identity fraud
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0241—Advertisements
- G06Q30/0251—Targeted advertisements
- G06Q30/0252—Targeted advertisements based on events or environment, e.g. weather or festivals
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Economics (AREA)
- Marketing (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Game Theory and Decision Science (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Environmental & Geological Engineering (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提供了一种移动广告点击欺诈检测方法及系统,将app中针对广告的点击事件转化为数据依赖图,进而转化为特征向量,通过变分自编码器对其进行重构,利用重构误差判断该点击事件是否为一次点击欺诈事件,并定位点击欺诈发生的代码位置,以便于相关人员对app点击欺诈行为进行调查和取证。同时提供了一种用于执行上述基于静态检测的移动广告点击欺诈检测方法的点击欺诈检测系统及终端。同时提供了一种相应的终端及介质。本发明利用静态检测技术和one class classification算法,不需人工干预,也不需前期大量的带有标签的点击欺诈样本,能够实现更加高效、快速、灵活的点击欺诈检测,满足相关行业的需求。
Description
技术领域
本发明涉及静态检测技术领域,具体地,涉及一种基于静态检测的移动广告点击欺诈检测方法、系统、终端及介质。
背景技术
几十年来,随着智能手机的空前普及,为了激励应用程序开发人员在其应用程序中嵌入广告主的广告,每次点击付费(PPC)机制得到了广泛部署,其中广告主根据嵌入广告被用户点击的次数向开发人员付款。但是,PPC机制也面临点击欺诈的日益严重的威胁。通过采用点击欺诈策略,一些开发人员会利用代码生成并非来自真实用户的“虚假”广告点击事件,以便从广告网络中获得额外的收入。例如,攻击者可以将恶意代码嵌入到欺诈性应用程序或第三方SDK上,这些恶意代码被其他毫无戒心的应用程序开发人员利用,并且可以在用户收集的后台自动触发广告点击,无需任何人工干预。移动广告欺诈,尤其是点击欺诈,所呈现出的越来越隐蔽、难以发现的特征,越来越威胁到广告生态的安全,需要采取更加有效的技术手段识别和防止点击欺诈。
识别点击欺诈往往伴随着复杂的技术挑战。虚假点击在流量模式与点击模式上与真人点击有日趋相似、难以分辨的趋势。同时由于没有相关的研究报道,在代码层面也难以通过普通的有监督学习的方式训练相关的分类器,来识别点击欺诈事件。传统上,可以依靠以动态检测为主的方式,通过实际运行app并观察其是否具有与预期不符的输出或者行为来判断某个app是否具有点击欺诈行为,但是这种方法昂贵耗时,而且性能十分有限,不能覆盖所有的程序路径,非常容易被欺诈者所规避。
目前,静态检测技术得到了大量的应用,尤其是在漏洞挖掘中。对于移动广告点击欺诈,检测出异常的欺诈事件的关键在于发现虚假点击事件与正常点击事件之间的不同。无论虚假点击在流量与点击模式方面与真人点击如何相同,其底层的代码逻辑与正常点击的代码逻辑之间仍具有较大的不同,因此静态检测的方法具有很大的潜力。
同时由于没有相关的研究报道,在代码层面难以通过普通的有监督学习的方式训练相关的分类器,来识别点击欺诈事件。目前one class classification技术在缺少某一类标签或数据的场景下得到了大量的应用。
但是,如果将静态检测技术和one class classification技术应用于移动广告点击欺诈检测中,仍然存在如下技术问题:
1、没有在反编译代码层面定义合适的特征,因此无法反映出虚假点击事件与正常点击事件之间的差别。
2、无法自动化提取这些特征。
3、无法解决在对恶意样本了解有限的前提下,准确区分虚假点击事件与正常点击事件。
目前没有发现同本发明类似技术的说明或报道,也尚未收集到国内外类似的资料。
发明内容
本发明针对现有技术中存在的上述不足,提供了一种将静态检测和one classclassification算法应用于移动广告点击欺诈检测中的移动广告点击欺诈检测方法、系统、终端及介质。
根据本发明的一个方面,提供了一种移动广告点击欺诈检测方法,包括:
获取应用程序中针对广告的点击事件的坐标及触发条件,并以此为根节点,通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图;
遍历所述数据依赖图,构建针对每一次点击事件的特征向量,并且利用良性样本的特征向量训练分类模型;
将待检测的特征向量输入训练好的所述分类模型,生成重构向量,并利用交叉熵算法计算重构向量与待检测的特征向量之间的重构误差,筛选出疑似点击欺诈的点击事件。
优选地,所述针对广告的点击事件的坐标,包括:针对广告的点击事件的x坐标与y坐标。
优选地,所述针对广告的点击事件的触发条件,包括:针对广告的点击事件的控制流上的所有的条件表达式。
优选地,所述数据依赖图,包括:用于表示数据流和数据流之间的依赖关系的根节点和子节点;其中:
将每一个点击事件的x坐标与y坐标作为一个根节点,同时,将通过运算并形成该根节点的数据作为该根节点的子节点;
将每一个位于点击事件的控制流上的条件表达式作为一个根节点,同时,将通过运算并形成该根节点的数据作为该根节点的子节点。
优选地,所述通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图,包括:
将数据分为常量、函数返回值、变量和点击事件所在函数的参数,基于应用程序的过程间控制流图、声明-使用链和使用-声明链,针对所述坐标及触发条件进行后向的程序切片;其中:
对于常量部分,直接回溯该部分声明位置并将该部分加入数据依赖图中,同时,在两个具有数据依赖关系的节点之间添加一条边;
对于函数返回值部分:
-如果为系统API,直接回溯该部分声明位置并将该部分加入数据依赖图中;
-如果为自定义函数,回溯该部分声明位置并在该函数体内递归后向程序切片方法以获取该函数返回值的完整的数据依赖图,并将该数据依赖图作为最终数据依赖图的子图;最后在两个具有数据依赖关系的节点之间添加一条边;
对于变量部分,将该部分加入数据依赖图,递归回溯该部分的前继节点并将该部分加入数据依赖图,同时,在两个具有数据依赖关系的节点之间添加一条边;
对于点击事件所在函数的参数部分,回溯该所在函数被实际调用的位置并将该所在函数的参数的实际值加入数据依赖图中,同时,对该所在函数的参数的前继节点递归后向程序切片方法,最后在两个具有数据依赖关系的节点之间添加一条边。
优选地,所述使用-声明链(Use-Def Chain)是一种数据结构,由一个变量的使用点(Use)以及该变量的所有定义点(Def)组成,这些定义点与使用点之间没有任何其他中间定义的情况,使用-声明链通常意味着将某些值分配给某个变量。
优选地,所述声明-使用链(Use-Def Chain)由一个变量的声明点和这个变量所有的使用点构成,这些使用点与声明点之间没有任何其他中间定义的情况。
优选地,所述利用良性样本的特征向量训练分类模型,采用one classclassification算法,包括:
在模型训练阶段,仅使用带有一种标签的数据对所述分类模型进行训练,使所述分类模型在隐空间中学习得到带有该标签样本的特征。
优选地,所述分类模型采用变分自编码器。
优选地,所述利用交叉熵算法计算重构向量与待检测的特征向量之间的重构误差,筛选出疑似点击欺诈的点击事件,包括:
所述交叉熵算法如下所示:
其中,l(θ,φ)表示重构向量与待检测的特征向量之间的重构误差,E表示期望值,qθ(z∣x)表示高斯分布,θ表示编码器的偏差与权重,x表示编码器的输入,z表示编码器的输出,z是隐向量空间,φ表示解码器的偏差与权重,pφ(x∣z)表示解码器;
基于现有的数据集遍历重构误差,找出使准确率最高的重构误差并将其设定为阈值,筛选出疑似点击欺诈的点击事件。
优选地,所述方法还包括:
提交得到的移动广告点击欺诈事件疑似数据并输出警报信息。
根据本发明的另一个方面,提供了一种移动广告点击欺诈检测系统,包括:
构建数据依赖图模块,该模块获取应用程序中针对广告的点击事件的坐标及触发条件,并以此根节点,通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图;
模型训练模块,该模块用于遍历所述数据依赖图,构建针对每一次点击事件的特征向量,并且利用良性样本的特征向量训练分类模型;
移动广告点击欺诈检测模块,该模块将待检测的特征向量输入训练好的所述分类模型,生成重构向量,并利用交叉熵算法计算重构向量与待检测的特征向量之间的重构误差,筛选出疑似点击欺诈的点击事件。
优选地,所述系统还包括:
检测结果提交模块,该模块用于提交得到的移动广告点击欺诈事件疑似数据并输出警报信息。
根据本发明的第三个方面,提供了一种终端,包括存储器、处理器及存储在存储器上并能够在处理器上运行的计算机程序,所述处理器执行所述计算机程序时能够用于执行上述任一项所述的方法。
根据本发明的第四个方面,提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可用于执行上述任一项所述的方法。
由于采用了上述技术方案,本发明与现有技术相比,具有如下至少一项的有益效果:
本发明提供的移动广告点击欺诈检测方法、系统、终端及介质,利用静态检测技术,对针对移动广告的点击欺诈事件构建数据依赖图,通过图的节点来表示构成点击事件坐标和触发条件的数据,图中的边则表示各个数据之间的依赖关系。
本发明提供的移动广告点击欺诈检测方法、系统、终端及介质,利用one classclassification方法训练分类模型,并应用交叉熵算法寻找具有点击欺诈特征的虚假点击事件,从而实现高效、快速、灵活的欺诈检测,满足相关行业的需求。
本发明提供的移动广告点击欺诈检测方法、系统、终端及介质,通过调研与实验,以点击事件坐标和触发条件作为识别虚假点击事件与正常点击事件的特征。
本发明提供的移动广告点击欺诈检测方法、系统、终端及介质,设计了一个高效的基于静态检测的后向程序切片算法,可以自动化地构建上述特征的数据依赖图。
本发明提供的移动广告点击欺诈检测方法、系统、终端及介质,设计了一个基于变分自编码器的分类器,通过one class classification技术,仅需要提供良性样本作为训练数据集,并以分类器的重构误差为分类标准进行分类。
本发明提供的移动广告点击欺诈检测方法、系统、终端及介质,对于识别移动广告点击欺诈事件,可以通过收集大量易得的良性样本对分类模型进行训练,生成重构向量,并利用交叉熵公式计算重构向量与待检测向量之间的重构误差,识别移动广告点击欺诈事件。
本发明提供的移动广告点击欺诈检测方法、系统、终端及介质,相对现有技术,能在更短的时间内,不需人工设定规则,自动高效准确地检测出移动广告点击欺诈行为,并发现相应欺诈广告SDK。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为本发明一实施例中的移动广告点击欺诈检测方法流程图。
图2为本发明一优选实施例中的移动广告点击欺诈检测方法流程图。
图3为本发明一实施例中的移动广告点击欺诈检测系统的组成结构示意图。
具体实施方式
下面对本发明的实施例作详细说明:本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。
图1为本发明一实施例提供的移动广告点击欺诈检测方法流程图。
如图1所示,该实施例提供的移动广告点击欺诈检测方法,可以包括如下步骤:
S100,获取应用程序中针对广告的点击事件的坐标及触发条件,作为根节点,通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图;
S200,遍历所述数据依赖图,得到针对每一次点击事件的特征向量,并且利用良性样本的特征向量训练分类模型;
S300,将待检测的特征向量输入训练好的所述分类模型,生成重构向量,并利用交叉熵算法计算重构向量与待检测的特征向量之间的重构误差,筛选出疑似点击欺诈的点击事件。
在该实施例中,作为一优选实施例,该方法还可以包括如下步骤:
S400,提交得到的移动广告点击欺诈事件精确数据并输出警报信息。
在该实施例的S100中,作为一优选实施例,所述针对广告的点击事件的坐标,可以包括:针对广告的点击事件的x坐标与y坐标。
在该实施例的S100中,作为一优选实施例,所述针对广告的点击事件的触发条件,可以包括:针对广告的点击事件的控制流上的所有的条件表达式。
在该实施例的S100中,作为一优选实施例,所述数据依赖图,可以包括:用于表示数据流和数据流之间的依赖关系的根节点和子节点;其中:
将每一个点击事件的x坐标与y坐标作为一个根节点,同时,将参与运算(如将一些数据(子节点)进行加减乘除的处理,或者通过调用某些系统接口处理这些数据的过程)并形成该根节点的数据作为该根节点的子节点;
将每一个位于点击事件的控制流上的条件表达式作为一个根节点,同时,将参与运算(如将一些数据(子节点)进行加减乘除的处理,或者通过调用某些系统接口处理这些数据的过程)并形成该根节点的数据作为该根节点的子节点。
在该实施例的S100中,作为一优选实施例,所述通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图,可以包括如下步骤:
将数据(整个数据依赖图中的所有的节点)分为常量、函数返回值、变量和点击事件所在函数的参数,基于应用程序的过程间控制流图、声明-使用链(Def_Use chain)和使用-声明链(Use_Def chain),针对所述坐标及触发条件进行后向的程序切片;其中:
对于常量部分,直接回溯该部分声明位置并将该部分加入数据依赖图中,同时,在两个具有数据依赖关系的节点之间添加一条边;
对于函数返回值部分:
-如果为系统API,直接回溯该部分声明位置并将该部分加入数据依赖图中;
-如果为自定义函数,回溯该部分声明位置并在该函数体内递归该函数以获取该函数返回值的完整的数据依赖图,并将该数据依赖图作为最终数据依赖图的子图;最后在两个具有数据依赖关系的节点之间添加一条边;
对于变量部分,将该部分加入数据依赖图,递归回溯该部分的前继节点并将该部分加入数据依赖图,同时,在两个具有数据依赖关系的节点之间添加一条边;
对于点击事件所在函数的参数部分,回溯该所在函数被实际调用的位置并将该所在函数的参数的实际值加入数据依赖图中,同时,对该所在函数的参数的前继节点递归调用该函数,最后在两个具有数据依赖关系的节点之间添加一条边。
在该实施例S100中,使用-声明链(Use-Def Chain)是一种数据结构,由一个变量的使用点(Use)以及该变量的所有定义点(Def)组成,这些定义点与使用点之间没有任何其他中间定义的情况,使用-声明链通常意味着将某些值分配给某个变量。
在该实施例S100中,声明-使用链(Use-Def Chain)由一个变量的声明点和这个变量所有的使用点构成,这些使用点与声明点之间没有任何其他中间定义的情况。
在该实施例的S200中,作为一优选实施例,所述利用良性样本的特征向量训练分类模型,采用one class classification算法,可以包括如下步骤:
在模型训练阶段,仅使用带有一种标签的数据对所述分类模型进行训练,使所述分类模型在隐空间中学习得到带有该标签样本的特征。
在该实施例的S200中,作为一具体应用实例,所述分类模型可以采用变分自编码器。
在该实施例的S300中,作为一优选实施例,所述利用交叉熵算法计算重构向量与待检测的特征向量之间的重构误差,筛选出疑似点击欺诈的点击事件,可以包括如下步骤:
所述交叉熵算法如下所示:
其中,l(θ,φ)表示重构向量与待检测的特征向量之间的重构误差,E表示期望值,qθ(z|x)表示高斯分布,θ表示编码器的偏差与权重,x表示编码器的输入,z表示编码器的输出,z是隐向量空间,φ表示解码器的偏差与权重,pφ(x∣z)表示解码器;
基于现有的数据集遍历重构误差,找出使准确率最高的重构误差并将其设定为阈值,筛选出疑似点击欺诈的点击事件。
本发明上述实施例提供的移动广告点击欺诈检测方法,将静态检测和one classclassification方法应用于移动广告点击欺诈事件检测中,对针对广告的点击事件的坐标及其触发条件构建数据依赖图,基于该图特征向量,通过训练分类模型并计算待检测的特征向量与重构向量之间的重构误差能够在移动广告点击欺诈导致了大量支出损失的情况下,帮助相关分析人员进行调查工作,高效侦测是否有欺诈行为发生,并定位点击欺诈所发生的代码位置,以便于相关人员分配资源推进下一步的调查。
图2为本发明一优选实施例提供的移动广告点击欺诈检测方法流程图。
如图2所示,该优选实施例提供的移动广告点击欺诈检测方法,将静态检测应用于移动广告点击欺诈检测中,可以包括如下步骤:
步骤1,获取app(应用程序),并将app中针对广告的点击事件的坐标及其触发条件作为根节点,通过基于静态检测的后向程序切片技术,构建关于点击事件的坐标以及触发条件的数据依赖图;
步骤2,遍历步骤1中的数据依赖图,得到针对每一次点击事件的特征向量,并且利用良性样本的特征向量训练变分自编码器;
步骤3,将待检测向量输入步骤2中得到的训练好的变分自编码器,生成重构向量,并利用交叉熵公式计算重构向量与待检测向量之间的重构误差,筛选出疑似点击欺诈的点击事件;
所述方法还可以包括:
步骤4,提交步骤3中得到的移动广告点击欺诈事件疑似数据并输出警报信息。
如图2所示,该优选实施例提供的方法,可以包括如下四个步骤,分别为构建数据依赖图、模型训练、移动广告点击欺诈检测和检测结果提交。
构建数据依赖图:用于获取app,并将app中针对广告的点击事件的坐标与触发条件分别作为根节点,通过基于静态检测的后向程序切片技术,构建关于点击事件的坐标以及触发条件的数据依赖图。
模型训练:用于利用one class classification方法训练点击欺诈识别模型。
移动广告点击欺诈检测:根据构建数据依赖图模块中得到的待检测向量和新生成向量之间的关系,利用交叉熵算法筛选出移动广告点击欺诈事件的精确数据。
检测结果提交:检测完毕后,系统返回涉及点击欺诈的虚假点击事件,并提供与其相关的代码片段。
为了保证可读性,该优选实施例将分别阐述基于静态检测以进行构建点击事件的数据依赖图和基于one class classification算法以进行检测两种方案,两种方案的结果将在“检测结果提交”步骤中合并。
1、基于静态检测以进行构建点击事件的数据依赖图:对于移动广告点击欺诈,检测出异常的欺诈事件的关键在于发现虚假点击事件与正常点击事件之间的不同。无论虚假点击在流量与点击模式方面与真人点击如何相同,其底层的代码逻辑与正常点击的代码逻辑之间仍具有较大的不同,因此从静态检测的方法入手具有很大的潜力,可以更加清晰地检测到虚假点击事件的特征。
1.1定义点击欺诈在代码层面的特征:将在代码中定义的每次点击事件的坐标值与触发条件作为识别是否为移动广告点击欺诈事件的特征。所述点击坐标包括:针对广告的点击事件的x坐标与y坐标;所述触发条件包括:位于广告点击事件的控制流上的所有的条件表达式。
1.2构建关于点击事件的数据依赖图:
所述数据依赖图是将数据流和数据流之间的依赖关系表示出来的图。其中:将每一个点击事件的x坐标与y坐标作为一个根节点,并将参与运算并形成了该节点的数据作为该节点的子节点;将每一个位于广告点击事件的控制流上的条件表达式作为一个根节点,并将参与运算并形成了该节点的数据作为该节点的子节点。
同时采用基于静态检测的后向程序切片算法作为数据依赖图的构造方法,具体包括如下步骤:
首先将数据分为常量、函数返回值、变量和点击事件所在函数的参数四种,并且基于程序的过程间控制流图(ICFG)、声明-使用链和使用-声明链,针对上述的坐标和条件表达式进行后向的程序切片。
对于常量部分,直接回溯其声明位置并且将其加入数据依赖图中,并在两个具有数据依赖关系的节点之间添加一条边;
对于函数返回值部分:
如果其为系统API,直接回溯其声明位置并且将其加入数据依赖图中;
如果其为自定义函数,回溯其声明位置并且在其函数体内递归本算法以获取该自定义函数返回值的完整的数据依赖图,并将其作为最终数据依赖图的子图;最后在两个具有数据依赖关系的节点之间添加一条边;
对于变量部分,首先将其加入数据依赖图,并且递归回溯该变量的前继节点并将其加入数据依赖图,并在两个具有数据依赖关系的节点之间添加一条边;
对于点击事件所在函数的参数部分,回溯该函数被实际调用的位置并且将其参数的实际值加入数据依赖图中,并对该参数的前继节点递归调用本算法,最后在两个具有数据依赖关系的节点之间添加一条边;
2.基于one class classification算法以进行检测:由于没有相关的研究报道,在代码层面难以通过普通的有监督学习的方式训练相关的分类器,来识别点击欺诈事件。目前one class classification技术在缺少某一类标签或数据的场景下得到了大量的应用。对于识别移动广告点击欺诈事件,可以通过收集大量易得的良性样本对变分自编码器进行训练,生成重构向量,并利用交叉熵公式计算重构向量与待检测向量之间的重构误差,识别移动广告点击欺诈事件。
2.1训练模型:训练采用one class classification算法,具体包括如下步骤:在模型训练阶段,仅使用带有一种标签的数据进行训练,使模型在隐空间中学习得到带有该标签样本的特征。
2.2采用待检测特征向量与重构向量之间的重构误差来识别点击欺诈事件。重构误差采用交叉熵算法,具体公式如下:
其中,l(θ,φ)表示重构向量与待检测的特征向量之间的重构误差,E表示期望值,qθ(z∣x)表示高斯分布,θ表示编码器的偏差与权重,x表示编码器的输入,z表示编码器的输出,z是隐向量空间,φ表示解码器的偏差与权重,pφ(x∣z)表示解码器;
具体包括如下步骤:将待检测向量输入步骤2中得到的训练好的变分自编码器,生成重构向量,并利用交叉熵公式计算重构向量与待检测向量之间的重构误差,基于现有的数据集遍历重构误差,找出使准确率最高的重构误差并将其设定为阈值。
3.检测结果提交:移动广告点击欺诈检测系统在接收到来自分类器输出的重构误差的结果之后,将向使用者展示检测出的移动广告点击欺诈事件与其相关信息,以便使用者对其作进一步的分析与确认。
经过实验验证,本发明上述实施例提供的移动广告点击欺诈检测方法,准确率能够达到96%左右。
如图3所示,为本发明一实施例提供的移动广告点击欺诈检测系统的组成结构示意图。
如图3所示,该实施例提供的移动广告点击欺诈检测系统,可以包括:构建数据依赖图模块、模型训练模块、移动广告点击欺诈检测模块;其中:
构建数据依赖图模块,该模块获取应用程序中针对广告的点击事件的坐标及触发条件,作为根节点,通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图;
模型训练模块,该模块用于遍历所述数据依赖图,得到针对每一次点击事件的特征向量,并且利用良性样本的特征向量训练分类模型;
移动广告点击欺诈检测模块,该模块将待检测的特征向量输入训练好的所述分类模型,生成重构向量,并利用交叉熵算法计算重构向量与待检测的特征向量之间的重构误差,筛选出疑似点击欺诈的点击事件。
作为该实施例的一优选实施例,该系统还可以包括:检测结果提交模块;其中:
检测结果提交模块,该模块用于提交得到的移动广告点击欺诈事件疑似数据并输出警报信息。
本发明一实施例提供了一种终端,包括存储器、处理器及存储在存储器上并能够在处理器上运行的计算机程序,所述处理器执行所述计算机程序时能够用于执行本发明上述实施例中任一项所述的方法。
可选地,存储器,用于存储程序;存储器,可以包括易失性存储器(英文:volatilememory),例如随机存取存储器(英文:random-access memory,缩写:RAM),如静态随机存取存储器(英文:static random-access memory,缩写:SRAM),双倍数据率同步动态随机存取存储器(英文:Double Data Rate Synchronous Dynamic Random Access Memory,缩写:DDR SDRAM)等;存储器也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory)。存储器用于存储计算机程序(如实现上述方法的应用程序、功能模块等)、计算机指令等,上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器中。并且上述的计算机程序、计算机指令、数据等可以被处理器调用。
上述的计算机程序、计算机指令等可以分区存储在一个或多个存储器中。并且上述的计算机程序、计算机指令、数据等可以被处理器调用。
处理器,用于执行存储器存储的计算机程序,以实现上述实施例涉及的方法中的各个步骤。具体可以参见前面方法实施例中的相关描述。
处理器和存储器可以是独立结构,也可以是集成在一起的集成结构。当处理器和存储器是独立结构时,存储器、处理器可以通过总线耦合连接。
本发明一实施例提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时可用于执行上述实施例中任一项所述的方法。
本发明上述实施例提供的移动广告点击欺诈检测方法、系统、终端及介质,将app中针对广告的点击事件转化为数据依赖图,进而转化为特征向量,通过变分自编码器对其进行重构,利用重构误差判断该点击事件是否为一次点击欺诈事件,并定位点击欺诈发生的代码位置,以便于相关人员对app点击欺诈行为进行调查和取证。本发明上述实施例提供的移动广告点击欺诈检测方法、系统、终端及介质,利用静态检测技术和和one classclassification算法,不需人工干预,也不需前期大量的带有标签的点击欺诈样本,能够实现更加高效、快速、灵活的点击欺诈检测,满足相关行业的需求。
需要说明的是,本发明提供的方法中的步骤,可以利用系统中对应的模块、装置、单元等予以实现,本领域技术人员可以参照方法的技术方案实现系统的组成,即,方法中的实施例可理解为构建系统的优选例,在此不予赘述。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变形或修改,这并不影响本发明的实质内容。
Claims (11)
1.一种移动广告点击欺诈检测方法,其特征在于,包括:
获取应用程序中针对广告的点击事件的坐标及触发条件,并以此为根节点,通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图;
遍历所述数据依赖图,构建针对每一次点击事件的特征向量,并且利用良性样本的特征向量训练分类模型;
将待检测的特征向量输入训练好的所述分类模型,生成重构向量,并利用交叉熵算法计算重构向量与待检测的特征向量之间的重构误差,筛选出疑似点击欺诈的点击事件。
2.根据权利要求1所述的移动广告点击欺诈检测方法,其特征在于,所述针对广告的点击事件的坐标,包括:针对广告的点击事件的x坐标与y坐标;
所述针对广告的点击事件的触发条件,包括:针对广告的点击事件的控制流上的所有的条件表达式;
所述数据依赖图,包括:用于表示数据流和数据流之间的依赖关系的根节点和子节点;其中:
将每一个点击事件的x坐标与y坐标作为一个根节点,同时,将通过运算并形成该根节点的数据作为该根节点的子节点;
将每一个位于点击事件的控制流上的条件表达式作为一个根节点,同时,将通过运算并形成该根节点的数据作为该根节点的子节点。
3.根据权利要求2所述的移动广告点击欺诈检测方法,其特征在于,所述通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图,包括:
将数据分为常量、函数返回值、变量和点击事件所在函数的参数,基于应用程序的过程间控制流图、声明-使用链和使用-声明链,针对所述坐标及触发条件进行后向的程序切片;其中:
对于常量部分,直接回溯该部分声明位置并将该部分加入数据依赖图中,同时,在两个具有数据依赖关系的节点之间添加一条边;
对于函数返回值部分:
-如果为系统API,直接回溯该部分声明位置并将该部分加入数据依赖图中;
-如果为自定义函数,回溯该部分声明位置并在该函数体内递归后向程序切片方法以获取该函数返回值的完整的数据依赖图,并将该数据依赖图作为最终数据依赖图的子图;最后在两个具有数据依赖关系的节点之间添加一条边;
对于变量部分,将该部分加入数据依赖图,递归回溯该部分的前继节点并将该部分加入数据依赖图,同时,在两个具有数据依赖关系的节点之间添加一条边;
对于点击事件所在函数的参数部分,回溯该所在函数被实际调用的位置并将该所在函数的参数的实际值加入数据依赖图中,同时,对该所在函数的参数的前继节点递归后向程序切片方法,最后在两个具有数据依赖关系的节点之间添加一条边。
4.根据权利要求3所述的移动广告点击欺诈检测方法,其特征在于,所述使用-声明链主要由一个变量的使用点以及该变量的所有定义点组成,所述定义点与所述使用点之间没有任何其他中间定义;
所述声明-使用链主要由一个变量的声明点和这个变量所有的使用点构成,所述使用点与所述声明点之间没有任何其他中间定义。
5.根据权利要求1所述的移动广告点击欺诈检测方法,其特征在于,所述利用良性样本的特征向量训练分类模型,采用one class classification算法,包括:
在模型训练阶段,仅使用带有一种标签的数据对所述分类模型进行训练,使所述分类模型在隐空间中学习得到带有该标签样本的特征;和/或
所述分类模型采用变分自编码器。
7.根据权利要求1-6中任一项所述的移动广告点击欺诈检测方法,其特征在于,还包括:
提交得到的移动广告点击欺诈事件疑似数据并输出警报信息。
8.一种移动广告点击欺诈检测系统,其特征在于,包括:
构建数据依赖图模块,该模块获取应用程序中针对广告的点击事件的坐标及触发条件,并以此为根节点,通过基于静态检测的后向程序切片方法,构建关于点击事件的坐标以及触发条件的数据依赖图;
模型训练模块,该模块用于遍历所述数据依赖图,构建针对每一次点击事件的特征向量,并且利用良性样本的特征向量训练分类模型;
移动广告点击欺诈检测模块,该模块将待检测的特征向量输入训练好的所述分类模型,生成重构向量,并利用交叉熵算法计算重构向量与待检测的特征向量之间的重构误差,筛选出疑似点击欺诈的点击事件。
9.根据权利要求8所述的移动广告点击欺诈检测系统,其特征在于,还包括:
检测结果提交模块,该模块用于提交得到的移动广告点击欺诈事件疑似数据并输出警报信息。
10.一种终端,包括存储器、处理器及存储在存储器上并能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时能够用于执行权利要求1-7中任一项所述的方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时可用于执行权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110488455.2A CN113191809B (zh) | 2021-05-06 | 2021-05-06 | 移动广告点击欺诈检测方法、系统、终端及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110488455.2A CN113191809B (zh) | 2021-05-06 | 2021-05-06 | 移动广告点击欺诈检测方法、系统、终端及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113191809A true CN113191809A (zh) | 2021-07-30 |
CN113191809B CN113191809B (zh) | 2022-08-09 |
Family
ID=76983529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110488455.2A Active CN113191809B (zh) | 2021-05-06 | 2021-05-06 | 移动广告点击欺诈检测方法、系统、终端及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113191809B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902906A (zh) * | 2013-12-25 | 2014-07-02 | 武汉安天信息技术有限责任公司 | 基于应用图标的移动终端恶意代码检测方法及系统 |
CN109191191A (zh) * | 2018-08-20 | 2019-01-11 | 南京工业大学 | 基于代价敏感卷积神经网络的广告点击欺诈检测方法 |
CN110751261A (zh) * | 2018-07-23 | 2020-02-04 | 第四范式(北京)技术有限公司 | 神经网络模型的训练方法和系统以及预测方法和系统 |
CN111612531A (zh) * | 2020-05-13 | 2020-09-01 | 宁波财经学院 | 一种点击欺诈的检测方法及系统 |
-
2021
- 2021-05-06 CN CN202110488455.2A patent/CN113191809B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103902906A (zh) * | 2013-12-25 | 2014-07-02 | 武汉安天信息技术有限责任公司 | 基于应用图标的移动终端恶意代码检测方法及系统 |
CN110751261A (zh) * | 2018-07-23 | 2020-02-04 | 第四范式(北京)技术有限公司 | 神经网络模型的训练方法和系统以及预测方法和系统 |
CN109191191A (zh) * | 2018-08-20 | 2019-01-11 | 南京工业大学 | 基于代价敏感卷积神经网络的广告点击欺诈检测方法 |
CN111612531A (zh) * | 2020-05-13 | 2020-09-01 | 宁波财经学院 | 一种点击欺诈的检测方法及系统 |
Non-Patent Citations (2)
Title |
---|
李鑫等: "基于非平衡数据处理方法的网络在线广告中点击欺诈检测的研究", 《计算机科学》 * |
蔡素梅: "程序切片技术及其应用的研究", 《软件导刊》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113191809B (zh) | 2022-08-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Warnecke et al. | Evaluating explanation methods for deep learning in security | |
Ding et al. | Detecting violations of differential privacy | |
CN109426722B (zh) | Sql注入缺陷检测方法、系统、设备及存储介质 | |
Jin et al. | Anemone: Graph anomaly detection with multi-scale contrastive learning | |
CN111652290B (zh) | 一种对抗样本的检测方法及装置 | |
CN107659570A (zh) | 基于机器学习与动静态分析的Webshell检测方法及系统 | |
Al Dallal | Fault prediction and the discriminative powers of connectivity-based object-oriented class cohesion metrics | |
Kang et al. | A secure-coding and vulnerability check system based on smart-fuzzing and exploit | |
CN104715190B (zh) | 一种基于深度学习的程序执行路径的监控方法及系统 | |
WO2020052168A1 (zh) | 反欺诈模型的生成及应用方法、装置、设备及存储介质 | |
He et al. | Illuminati: Towards explaining graph neural networks for cybersecurity analysis | |
Zhao et al. | Behavior analysis for electronic commerce trading systems: A survey | |
CN111177731A (zh) | 一种基于人工神经网络的软件源代码漏洞检测方法 | |
CN115659335A (zh) | 基于混合模糊测试的区块链智能合约漏洞检测方法及装置 | |
Wang et al. | A Detection Method for Abnormal Transactions in E-Commerce Based on Extended Data Flow Conformance Checking. | |
Cheng et al. | Logextractor: Extracting digital evidence from android log messages via string and taint analysis | |
Yannikos et al. | 3LSPG: Forensic tool evaluation by three layer stochastic process-based generation of data | |
CN111738290B (zh) | 图像检测方法、模型构建和训练方法、装置、设备和介质 | |
Hashemi et al. | Runtime monitoring for out-of-distribution detection in object detection neural networks | |
Singh et al. | Empirical model for predicting high, medium and low severity faults using object oriented metrics in Mozilla Firefox | |
CN113191809B (zh) | 移动广告点击欺诈检测方法、系统、终端及介质 | |
Badri et al. | Investigating the accuracy of test code size prediction using use case metrics and machine learning algorithms: An empirical study | |
Cârlan et al. | Automating Safety Argument Change Impact Analysis for Machine Learning Components | |
CN116245630A (zh) | 一种反欺诈检测方法、装置、电子设备及介质 | |
Manten et al. | Signature Kernel Conditional Independence Tests in Causal Discovery for Stochastic Processes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |