在 puppeteer, Headless Chrome 的 DOM 中获取凭证

Securing credential inside DOM of puppeteer, Headless Chrome

我正在设计一个提供的服务,

  1. 使用外部来源提供的凭据隐藏自动登录现有站点
  2. 通过启用可见功能将登录浏览器移交给用户

因此,此服务可在用户需要时立即提供登录浏览器。我正在考虑使用 puppeteer,我的问题是

Node.js与浏览器之间的通信

Node.js 环境和浏览器之间的通信默认不加密,因为它使用未加密的 Websocket 协议 (ws://) 而不是加密的 (wss://) .如果您的 puppeteer 实例从一台机器连接到另一台机器,这意味着人们可能能够嗅探连接 ()。

请记住,如果您的 Node.js 应用程序和浏览器 运行 在同一台机器上,这并不重要。当然,任何可以访问您的计算机和 运行 应用程序的攻击者也可以监控内存,甚至可以通过 WebSocket 直接连接到您的 运行 浏览器。

动态显示或隐藏浏览器

关于您的第二部分:无法使用人偶 API 将浏览器状态从 "visible" 更改为不可见(反之亦然)。但是您可以使用操作系统的 API 来执行此操作,或者序列化浏览器的状态并将状态传输到另一个浏览器实例 ()。