剪贴板偷窥实验室

你每次 Ctrl+C 复制的内容,网页和 App 都能看到。三个实验,亲手体验你的剪贴板有多透明。

实验一:剪贴板监听器

在这个页面上复制、剪切、粘贴任何内容——下方的监听日志会实时记录你的每一次操作。
这就是网页 JavaScript 能做到的事,不需要任何权限弹窗。

监听已开启。你在这个页面上的每次复制/剪切/粘贴都会被记录。 所有数据仅在浏览器本地处理,不上传任何服务器。
张三,手机号 138-0013-8000,住在北京市朝阳区建国路 88 号, 银行卡号 6222 0200 0000 1234 567,身份证 110105199003071234。 WiFi 密码是 MyHome@2026,邮箱 [email protected]。
0
复制次数
0
剪切次数
0
粘贴次数
0
敏感信息命中

监听日志

等待你的第一次复制操作...

发生了什么

网页通过 document.addEventListener('copy/cut/paste', ...) 监听剪贴板事件。 这三个事件不需要用户授权,页面加载后自动生效。 你复制的文本内容、时间戳、操作类型,全部可以被 JavaScript 捕获。

背后的代码

只需要 6 行 JavaScript:

// 监听复制事件
document.addEventListener('copy', function(e) {
  const text = window.getSelection().toString();
  // text 就是用户复制的全部内容
  // 可以发送到服务器、做正则匹配、提取敏感信息...
  console.log('用户复制了:', text);
});

实验二:富文本陷阱

下面这段文字看起来很正常。复制它,然后粘贴到下方的输入框——看看你实际粘贴了什么。

据统计,2024年中国移动互联网用户规模达到12.4亿,人均每天使用手机时长超过6小时。其中短视频应用占据了用户最多的注意力,日均使用时长达到2.5小时。

粘贴到这里(Ctrl+V):

零宽字符追踪

上面那段文字里藏了零宽字符(U+200B、U+200C、U+200D、U+FEFF)。 肉眼完全看不见,但它们编码了一个唯一 ID。 你把文字粘贴到任何地方,这个 ID 会跟着走——网站可以用它追踪「这段文字是谁复制的」。 知乎、微信公众号、部分新闻网站都用过类似技术。

零宽字符可视化

把上面那段「看起来正常」的文字拆开,让隐藏字符现形:

怎么防

粘贴时选择「粘贴为纯文本」(Ctrl+Shift+V),或者用记事本中转一下。 这会剥掉所有 HTML 标签和零宽字符。

实验三:画像拼凑

如果一个 App 持续监听你的剪贴板,它能从你日常的复制粘贴中拼凑出什么?
点击下方的按钮,模拟一天中的典型复制操作,看看最终能拼出怎样的画像。

模拟模式。以下数据全部是虚构的模拟数据,用于演示剪贴板监听的风险。 点击按钮模拟一天中的复制操作。
0
剪贴板读取次数
0
敏感信息
0
信息类别

剪贴板读取记录

点击「模拟一天的复制操作」开始...

真实事件回顾

时间 App 行为 来源
2020.06 TikTok 每 1~3 次按键读取一次剪贴板 iOS 14 Beta 曝光
2020.07 LinkedIn 每次按键都复制剪贴板内容 iOS 14 粘贴通知
2020.07 Reddit 启动时读取剪贴板 iOS 14 粘贴通知
2020 共 53 款 App 被发现在后台读取剪贴板 安全研究员 Mysk 报告
2026.04 Chrome 剪贴板跨域数据泄露漏洞 CVE-2026-3938

各平台的防护措施

iOS 14+:App 读取剪贴板时顶部弹出横幅提示。
Android 12+:App 读取剪贴板时底部弹出 Toast 提示。
Android 13+:剪贴板内容 1 小时后自动清除。
浏览器:Clipboard API 读取需要用户主动授权(但 copy/paste 事件监听不需要)。

防护清单

Ctrl+Shift+V
粘贴为纯文本
剥掉隐藏标签
1h 自动清
Android 13+ 开启
剪贴板自动清除
密码管理器
自动填充代替
复制粘贴密码
留意提示
iOS/Android 的
剪贴板访问通知

数据说明

隐私声明

本页面所有实验均在浏览器本地运行,不上传任何数据到服务器。 实验一的监听日志、实验二的粘贴内容、实验三的模拟数据全部存储在内存中,关闭页面即消失。 实验三使用的全部是虚构数据,不涉及任何真实个人信息。