Sign X PDF · 指南
如何检查 PDF 网站是否上传你的文件
先创建一个带有独特文件名和文字标记的安全测试 PDF,再在打开、编辑和导出期间观察浏览器 Network 面板。检查 fetch/XHR、request body、Beacon、WebSocket 和 Service Worker 流量。干净的结果只支持对已测试流程作出有范围的结论,不能证明被入侵设备或浏览器扩展的行为。
这是实用测试方法,不是安全认证或法律意见。请使用非机密 fixture,并先定义威胁模型。
验证范围:我们于 2026-08-08 检查了由项目管理的 repository 源代码和开源组件。链接的 GitHub repository 对匿名访客目前需要访问权限;这是源代码参考位置,不是“任何人都可以公开审计”的保证。浏览器测试使用的文件留在测试设备,没有上传到 Sign X PDF 应用服务器。这是有范围的证据,不代表可以覆盖被入侵的设备、浏览器扩展、操作系统服务或未来的代码变更。
1. 创建可追踪的测试文档
不要一开始使用机密文件。创建一个包含独特标记(例如 PDF-UPLOAD-CHECK-20260808-ALPHA)的小型测试 PDF,并使用独特文件名,例如 private-check-20260808-alpha.pdf。如果 request body 可见,标记有助于找出文件字节。
测试文件应该可以安全暴露。目的是观察请求路径,而不是冒险使用真实客户文件。
- 使用独特文件名和文字标记。
- 让 fixture 足够小,方便检查和重复。
- 记录浏览器、网址、操作和测试时间。
2. 选择文件前先观察 Network 面板
打开开发者工具,选择 Network,启用 Preserve log,并清除已有请求。先用 Fetch/XHR 筛选,再使用 All、WS 等相关筛选重复检查。载入页面并让 HTML、JavaScript、字体、图片和 WebAssembly 资源完成下载,然后再选择测试 PDF。
普通网站出现资源请求是正常的。真正的问题是:所选 PDF 字节是否发送到了应用上传或转换端点。
- 留意选择文件后出现的 POST 或 PUT。
- 在 DevTools 可见时检查 payload、form-data 和 multipart 字段。
- 检查 request URL,不要只看 response status。
- 导出时再次检查,因为有些产品在导出时才上传。
3. 不要只检查 fetch 和 XHR
只使用 Fetch/XHR 筛选可能遗漏其他传送路径。如果产品使用 Beacon、WebSocket 或 Service Worker,也要检查相关活动。Service Worker 可能代为处理请求,即使页面代码没有直接调用 fetch。
看不到请求,是对该浏览器会话和流程的证据;不是证明设备上其他软件不能读取文件。
- Beacon:检查保存、离开页面或导航时的调用。
- WebSocket:检查 frames 是否包含文件标记或文件名。
- Service Worker:检查注册状态和 worker 代办的网络活动。
- 在可见请求细节中搜索独特文件名和标记。
4. 重复操作并比较记录
用同一 fixture 测试相关操作,例如签署、合并、压缩、重排和删除,再用第二个独特标记重复一次。应用延迟加载代码时,一次干净的页面加载并不足够。
这也是 Sign X PDF 自动化隐私测试采用的原则:安装深层请求 hooks、执行操作,并对可疑文件上传模式失败关闭。公开测试代码展示了明确范围,而不是要求你只相信口号。
- 同时测试打开和导出。
- 测试每个对你的威胁模型重要的操作。
- 只有在不含机密内容时,才保存已遮蔽的 HAR 或截图。
这项检查不能证明什么
浏览器 Network 检查不能审计被入侵的操作系统、恶意软件、恶意扩展、可以读取文件的其他应用,或未来部署。如果服务器端行为不在浏览器记录中,也不能单靠这项检查确认保留政策。
请把结果视为有范围、可重复的观察。高风险流程仍应检查供应商源代码、隐私政策、保留条款和威胁模型。
我们如何验证
公开隐私 e2e 测试
Result: 测试在执行五项 PDF 流程前安装 request、Beacon、WebSocket 和 Service Worker hooks。
Scope: Repository Playwright fixtures 和已配置的应用路径
Limits: 不证明其他应用、恶意扩展、恶意软件或未来部署的行为。
Source: tests/e2e/privacy-no-upload.mjs
浏览器 Network 检查方法
Result: 独特文件名和标记提供可重复信号,方便检查 request URL 和 body。
Scope: 本指南描述的手动调查方法
Limits: DevTools 可见程度取决于浏览器和 Service Worker 行为;看不到请求不是普遍保证。
Source: https://developer.chrome.com/docs/devtools/network/
常见问题
Network 面板正常,就能证明 PDF 网站隐私安全吗?
不能。它只支持对已测试浏览器会话和流程作出结论,不覆盖恶意软件、扩展、操作系统、服务器保留或未来变更。
为什么使用独特文件名和标记?
独特文件名和文字标记让你更容易在 request URL、payload、multipart 数据或 WebSocket frame 中找到文件字节,而不必使用机密文件。
Sign X PDF 是否使用这种检查?
是。公开 Playwright 隐私测试在声明的范围内执行签署、合并、压缩、重排和删除,并观察 request、Beacon、WebSocket 和 Service Worker 路径。