我以为只是好奇,我把这种“二维码海报”的链路追完了:你点一下,它能记住你的设备指纹;别再给任何验证码

前几天路过地铁站,看到一张看起来“很官方”的二维码海报——活动、抽奖、扫码领取礼品那种。我随手用手机扫一扫,本想看看活动规则,结果一路点下去,体验越来越不对劲:页面不断跳转,先是要确认手机号,再要输入一个“验证码”。我按下去,心里冒出一个念头:这会是个普通的营销流程吗?于是我把链路追了下去,发现的东西比我想象的要复杂,也更值得警惕。
一、二维码海报并不总是“无害的入口” 二维码只是一个指向链接的载体。它本身没有好坏,但扫描后的落地页可以运行任意网页代码:读取浏览器信息、写入本地存储、埋入第三方脚本,甚至通过一系列链路把你的设备和某个账户绑定。用“海报+扫码”完成信息采集对攻击者来说既方便又低成本,而且用户往往信任现实世界的“海报”,放松了防备。
二、设备指纹是什么?它会记住你 简单来说,设备指纹是通过组合多项看似无害的设备与浏览器信息来唯一识别一个设备或浏览器会话的技术。常见的“指纹要素”包括:
- 浏览器类型与版本、操作系统
- 屏幕分辨率、时区、语言设置
- 已安装字体或插件的特征
- Canvas/WebGL 渲染差异
- IP 地址段与网络特征
- Cookies、localStorage、IndexedDB 等本地存储数据
这些信息单独看并不能识别个人,但组合在一起就可能把你的这台手机或电脑“记住”。落地页可以把这个指纹和一个随机 ID 绑定,随后用 cookie 或 localStorage 保留这个绑定,哪怕你关闭页面再打开,网站也能认出这是“同一个设备”。
三、为什么别把验证码随便给别人(或陌生网页) 很多服务用短信验证码、一次性密码来做身份确认或绑定设备,但这些验证码只要被他人拿到,就可能完成授权、绑定或密码重置。常见的滥用场景包括:
- 骗你输入验证码完成所谓“确认领取/领奖”,实则在背后授权某项操作;
- 社交工程要求把验证码告知电话那头的“工作人员”以帮助处理问题;
- 恶意页面诱导你用验证码完成设备绑定或登录,从而持续访问你的账户。
一句话:验证码并非“证明你是我”的万能钥匙,而是短时授权凭证,交给不可信一方就等于把门打开了。
四、遇到可疑二维码或落地页,你可以这么做(用户向)
- 先看 URL:很多手机相机在扫码时会在屏幕上预览链接,别直接点“打开”,先看域名是否和宣传方一致,域名里有奇怪的拼写或子域名就不要进入。
- 用浏览器隐身/无痕模式打开:可以减少 cookie/localStorage 的留存。
- 不要输入验证码、不提供短信内的一次性密码、不回复含验证码的短信给陌生号码。
- 若已误点并输入验证码:立即登录相关服务,检查登录历史和授权设备,取消可疑设备或会话,必要时更改密码并启用更安全的二步验证方式(如认证器 App 或硬件密钥)。
- 清理浏览器数据:清除该站点的 cookies、localStorage;重启浏览器或设备可以中断一些会话追踪。
- 留意账单与账户变动:如果涉及支付或银行信息,及时联系发卡行或平台客服核查。
五、网站与运营方该如何做(从业者角度) 如果你是在做活动推广或负责公共海报的运营,考虑到用户安全和品牌信任,可以采取这些做法来降低风险并提升透明度:
- 使用可信域名并启用 HTTPS,避免通过短链或第三方短域转发敏感流程。
- 在扫码落地页显著说明数据采集与用途,让用户知道会收集什么以及为啥需要。
- 避免在第一步就请求短信验证码或重要权限;把敏感操作放在明确登录后的流程里,并加验证码的二次确认。
- 提供官方验证方式:例如在海报上附加可核验的活动编号或在官网提供同一活动页面链接,便于用户自行核查。
- 实施短生命周期的授权码和严格的回放防护,防止验证码被重复利用。
六、现实世界里的小习惯能避免很多麻烦
- 对“陌生奖励”保持一点怀疑。真正的官方活动一般不会在第一屏就要求手机号和验证码完成领奖。
- 使用认证器 App、FIDO 安全密钥等比短信更安全的二次验证方式。
- 遇到需要与“客服”通过电话或短信交互时,先通过官网找到官方渠道,不通过来路不明的号码确认。
结语 我原以为只是随手看看一个海报的活动,没想到一路追查下来发现的细节足以让人警觉:二维码方便,但它背后的链路同样可以被利用来记住你的设备、绑定会话,甚至诱导你交出那串看似无害的验证码。多一点防备,少一点冲动,是今天网络生活的常识——尤其是当现实世界的入口(海报、传单、活动)和数字世界无缝连接时,平常的警觉能省去很多麻烦。
如果你也见过类似的海报或不明落地页,欢迎把具体情况发来,我们可以一起看一看哪些环节可能有风险,顺手把可疑的传播源标注起来,别让别人也“好奇”着中招。


