上个月一个老客户问我:为什么照着网上的教程配的Cloak,跑了三天就被封了?
Cloak技术是本文的核心主题。这个问题我听了不下50次。很多人拿到Cloak工具,第一件事就是找个教程照着抄,结果要么根本不生效,要么跑了两三天就全挂。原因很简单——那些公开教程里的参数设置,大部分都是入门级的,只教你怎么配通,没教你怎么配安全。
2019年我第一次用Cloak的时候也栽过跟头。当时用的是某款开源方案,按照GitHub上的README配置了基本规则,IP白名单用了几个常见的爬虫IP段,User-Agent匹配写了个简单的正则,过滤率大概70%。结果第三天Google Ads账户就收到了违规通知,理由是“伪装内容”。后来复盘才发现,我连Cookie验证都没开,而且白名单里的一个IP段被大量代理IP穿透了。从那以后,我花了整整两年时间,拆解了市面上主流的12款Cloak方案,分析过300多个被封的账户案例,才慢慢摸清楚安全配置的门道。
这篇文章不讲那些虚头巴脑的理论,只讲具体参数怎么设、每个参数的安全阈值是多少、哪些配置组合是坑。如果你是第一次接触Cloak配置,建议你把每个参数的实际值记下来,按我的方案去套。
一、安全配置的核心逻辑:你到底在防什么
Cloak安全配置的本质,是让你在广告平台审核人员和真实用户之间,做出一个精确的、不可逆的区分。审核人员看到的是合规页面,真实用户看到的是营销页面,这个区分一旦出错,就是封号。
审核人员的检测手段主要有三类:
- IP地址检测:来自Google、百度、Facebook等广告平台的数据中心IP和爬虫IP
- User-Agent识别: 爬虫和模拟器的UA特征
- 行为特征分析: 页面加载速度、JS执行环境、WebRTC信息、Canvas指纹等
所以安全配置的核心就是:在这三个层面同时设置过滤规则,任何一个层面出现遗漏,都会导致失效。只配一个IP白名单不加UA过滤,或者只配UA不加指纹验证,都是半套方案。
二、关键参数逐项拆解:每个参数的安全值是多少
2.1 IP白名单参数设置
IP白名单是Cloak的第一道防线,也是最容易被忽视的环节。很多人直接从网上复制IP列表,但这些列表往往已经过时或者不全。
我推荐的配置方案是分三层过滤:
- 第一层:官方IP段。Google Ads的数据中心IP段有170多个,百度有80多个,这些必须全量加入白名单,一个都不能漏。建议每两周更新一次,因为广告平台会不断新增IP。我使用的是付费更新的IP库,每月费用大概200元。
- 第二层: 代理IP段。很多审核人员通过代理访问你的页面,所以需要屏蔽常见的公共代理IP段,包括Tor出口节点、AWS/阿里云等公有云的出口IP、以及常见的VPN服务商IP段。
- 第三层:动态频率限制。同一个IP在短时间内多次访问,触发阈值后自动展示安全页。我的设置是: 同一IP 30秒内访问超过3次,直接转为安全页。
具体参数示例:
IP白名单过滤级别:严格模式(只允许白名单内IP看到白页)
白名单更新周期:14天
代理IP黑名单:每天同步一次,来源于付费IP信誉库
访问频率限制:30秒内超过3次触发白页
IP段匹配精度:/24(即255.255.255.0掩码)
2.2 User-Agent匹配规则
UA匹配是第二道防线,但很多人写正则写得太宽泛,导致误杀真实用户,或者匹配不到真实的爬虫UA。正确的做法是使用精确匹配和正则匹配结合的方式。
需要重点匹配的UA特征:
- Googlebot、Google-Adwords、AdsBot-Google
- Baiduspider、Baidu-YunGuanCe
- FacebookExternalHit、facebookscraper
- 空UA或未知UA(很多爬虫会伪造空UA)
- 无头浏览器特征: HeadlessChrome、PhantomJS、Selenium
UA正则匹配注意事项:
不要用“.Googlebot.”这种太宽松的写法,应该用精确的版本号匹配。比如Googlebot最新版本是“Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.6167.85 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)”,匹配时应该包含版本号和操作系统细节。
UA黑名单:屏蔽所有已知的爬虫框架UA
UA白名单:只允许主流浏览器UA通过
未知UA处理:直接展示安全页
2.3 Cookie验证与Session管理
Cookie验证是最容易被忽略但却是最有效的防抓手段。原理很简单:审核人员首次访问页面时,如果没有正确的Cookie,直接展示安全页;只有通过JS注入正确Cookie的访客,才能看到营销页。
配置要点:
- Cookie名称:不要用“cloak_token”、“verify”这种太明显的名字,建议用随机字符串,比如“_ga_3x7k”“utm_source_v2”这种仿Google Analytics的格式
- Cookie值: 使用动态加密算法,每次访问生成不同的值,服务端验证时解密
- 过期时间: 设置为30分钟,过期后需要重新验证
- 路径: 设置为根路径“/”
- 域名: 限制为当前域名,不跨域
Session管理方面,建议使用服务端Session而非客户端Cookie存储完整校验信息,因为客户端Cookie可以被手动设置。服务端Session结合IP、UA、浏览器指纹三个维度做绑定验证。
2.4 JS指纹采集参数
JS指纹是高级Cloak方案的核心,包括Canvas指纹、WebGL指纹、AudioContext指纹、WebRTC指纹、屏幕分辨率、时区、语言等。审核人员的浏览器环境和真实用户有显著差异,这些差异就是判断依据。
推荐的指纹采集参数:
- Canvas指纹:采集精度至像素级,差异大于5%判定为非真实用户
- WebGL指纹: 采集GPU型号和渲染器信息,虚拟机和无头浏览器的GPU信息通常为空或异常
- AudioContext指纹: 采集音频频谱特征,无头浏览器无法生成
- WebRTC指纹: 采集本地IP地址,代理环境下本地IP与实际IP不一致
- 屏幕分辨率: 针对移动端,控制分辨率在320x568到414x896之间
- 时区: 必须与IP所在地一致,偏差超过1小时判定为异常
- 语言设置: 必须包含浏览器语言和系统语言,两者不一致判定为异常
指纹采集后,与服务端存储的“真实用户指纹库”做比对,相似度低于80%的展示安全页。指纹库需要定期更新,建议每7天重新采集一次。
三、三个真实场景的配置案例
场景一:百度竞价推广医疗类产品
2022年做的一个医疗项目,客户主推一款保健品,百度竞价投放,目标人群是35-55岁女性。这个行业的审核非常严格,百度会人工抽查落地页。
配置方案:
- IP白名单:
总结:本文详细介绍了Cloak技术的相关内容,包括Cloak技术的原理、配置方法和优化技巧,包括Cloak技术的原理、配置方法和优化技巧,包括Cloak技术的原理、配置方法和优化技巧。希望这些Cloak技术内容对您有帮助。