托攻击检测库SDlib的再学习-----WZW托攻击学习日记(四)

这次我们来研究一下SDlib中如何实现关系注入的。 首先我们打开relationAttack.py,进行理解: Init函数:对各值进行初始化 getRe

这次我们来研究一下SDlib中如何实现关系注入的。

首先我们打开relationAttack.py,进行理解:

Init函数:对各值进行初始化

getReciprocal函数:

这里是要获得目标用户关注spammer的概率,但是我不知道为什么要这么做。

generateSocialConnections:

将关系注入数据集,然后讲关系输出出来。

Farmlink函数:

以RandomRelationAttack为例,打开RandomRelationAttack.py

简单分析一下,第一个双重循环,循环读取攻击文件,循环读取攻击的项目,如果随机数小于0.01,(其实就是选择了比例就是百分之一),就与购买了目标项目的用户进行链接。(链接方式就是,首先是攻击者去关注曾经给目标项目评分过的用户,然后根据概率判断用户是否会反过来也关注攻击者)

第二个双重循环,与上述类似,不过就是换成了其他用户。

 

图一