指纹
BotBrowser 的 WebAuthn 指纹保护
BotBrowser 如何通过基于配置文件的指纹保护控制 WebAuthn 和 FIDO API 信号。
隐私风险
WebAuthn API 无需用户许可即可暴露设备和平台信息。这些信号与其他数据点结合后,可用于浏览器指纹追踪。
BotBrowser 如何控制 WebAuthn 信号
BotBrowser 在浏览器引擎层面管理 WebAuthn 相关信号。当通过 --bot-profile 加载配置文件时,浏览器的 WebAuthn 能力会匹配配置文件的目标平台。
chrome --bot-profile="/profiles/windows-chrome-122.enc" \
--user-data-dir="$(mktemp -d)"
配置文件控制平台认证器可用性、算法支持、扩展支持和传输类型行为。所有值均从真实设备采集,确保内部一致性。
跨平台一致性
在 Linux 上运行 Windows 配置文件,BotBrowser 确保 WebAuthn 信号匹配配置文件的平台,而非宿主机。
有头/无头模式一致性
BotBrowser 在有头和无头模式下保持一致的 WebAuthn 行为。
验证
启动后,验证 WebAuthn 信号是否匹配预期平台:
const { chromium } = require('playwright-core');
const browser = await chromium.launch({
executablePath: '/path/to/botbrowser/chrome',
args: ['--bot-profile=/profiles/macos-chrome-122.enc'],
headless: true,
});
const page = await (await browser.newContext()).newPage();
const webauthnInfo = await page.evaluate(async () => {
const results = {};
results.platformAuth = await PublicKeyCredential
.isUserVerifyingPlatformAuthenticatorAvailable();
results.conditionalUI = await PublicKeyCredential
.isConditionalMediationAvailable();
return results;
});
console.log('WebAuthn signals:', webauthnInfo);
await browser.close();
结果应匹配加载的配置文件所指示的平台。
开始使用
#webauthn#fido#fingerprinting#authentication#privacy