用户画像杂谈
想到什么写什么
反爬的核心,就是提高攻击方的成本,直到其无法负担攻击行为,建立用户画像,本质是把风险标签从黑产容易伪造的维度(设备,环境),转移到黑产较难伪造的维度(真实用户活动)
就电商场景而言,用户画像可以分为以下几个维度
设备
- 通过设备指纹将账号和设备关联,一机多号,一号多机,都是风险点,正常用户的手机,电脑,账号数量最多1~2个,再多说明有问题,谁没事用三四个号买东西
- 通过设备风险标签给账号打标,将root,高风险包名,非真机等命中标签的设备标记为黑设备,再将标记账号的黑设备登录历史,或者在登录时就直接做一次全量环境采集
环境
- 用户的登录IP,用于后续做团伙聚类
- 用户的地理位置(如果能获取到),作为团伙聚类的辅助证据
- 用户的UA
行为
- 用户的真实消费记录,只要攻击方想,所有的环境,设备,都能做到完美,但是电商场景中一个有真实消费记录的用户是很难模拟的,如果要构造消费记录必然会增加账号成本
- 频控,频控是反爬中最基本的思路,如果一个账号1小时内看了200+商品(平均一个商品就看十几秒),或者连着刷了几个小时的商品,那么这里可能就有风险
- 行为序列,也就是用户做了什么操作,通过账号session关联一段时间的请求接口做序列分析,正常用户的行为通常是
- 访问商详的时间间隔具有随机性
- 搜索 -> 挑选部分商品查看,而不是把搜索返回的商品全刷一遍
- 接口返回自洽,比如提取搜索或feed流接口返回的商品id,与用户后续访问的商详界面pid是吻合的,部分爬虫为了伪造行为序列可能会在批量刷商详前先主动请求一次搜索接口,但是伪造的不好这里就会有矛盾,访问了接口未返回的pid
来源
- 账号注册时的邮箱,手机号等,如果邮箱声誉极差(hotmail等仅需几分钱一个号),或为虚拟号段,都是风险点
- 账号注册的时间
- 如果聚类得到一批疑似黑用户的账号,可以根据注册的时间判断是否为批量注册
- 账号注册到使用的时间,新号,或者注册完毕后长期无活动后突然出现活动(可能是黑产出货了),都是风险点
- 账号注册时的ip,假设账号注册时的ip,和后续使用的ip差别非常大,也是风险点
历史处置记录
- 账号是否之前被处置过
- 账号关联账号是否被处置过(通过共同设备关联)
想到什么就接着写