会读输入框的软件,如何保证不碰你的密码

一个会记录输入内容的工具,如果对密码框没有明确的处理规则,那它迟早会记下密码。

这是一个必须被正面回答的问题

任何读取输入框的软件,都会被问到同一个问题:你会不会把我的密码记下来?

含糊其辞的回答(「我们非常重视安全」)等于没回答。有价值的回答必须落在具体机制上。

为什么这件事比想象中严重

密码泄露最主流的路径其实不是被黑客攻破,而是被自己电脑上的软件顺手记下来:

  • 大量工具会把采集到的内容存在本地数据库里
  • 这些数据库通常是明文的——SQLite 文件,用任意工具都能打开
  • 用户往往不知道它记了什么,直到某天整理文件时打开一看

换句话说:风险不在于「被攻击」,而在于你根本不知道自己的密码被存下来过。

正确的处理方式:在写入前就跳过

关键在于时机。密码要在进入数据库之前就被排除,而不是事后再去过滤:

  1. 识别控件性质。操作系统和辅助功能接口通常会暴露输入框的性质,包括它是否为密码输入。识别到密码性质的控件,直接跳过。
  2. 不缓存、不落临时文件。跳过要发生在采集的最前端。如果先把内容拿到内存、再判断要不要存,中间就多了一段风险窗口。
  3. 对整类应用直接排除。密码管理器、网银、身份认证类应用,应该整类进排除清单,不依赖逐框识别。

词盾采用的就是这三层:密码框识别后直接跳过、不入库、不落盘;同时对 25 个隐私类应用默认整类排除。

第二层防线:哪些应用不该被读

光识别密码框不够。很多敏感内容存在于普通文本框里:

  • 聊天软件里的对话(含客户报价、家庭事务、证件信息)
  • 办公软件里的合同条款、财务数据
  • 身份信息、表单里的证件号码

所以还需要一份默认排除清单。词盾默认排除 74 个应用:

  • 29 个聊天类——微信排在第一位
  • 20 个办公类
  • 25 个隐私类——密码管理器、网银、认证类工具

为什么微信一定排第一?因为绝大多数人的微信里,装着最不该被自动记录的东西。这类内容一旦被归档,风险不是「泄露」,而是你根本不会意识到它被存下来了。

第三层:不碰剪贴板

有一个容易被忽略的采集路径是剪贴板。有些工具会轮询剪贴板来「顺便」获取内容——而你在复制密码时,密码就短暂地待在剪贴板里。

除了安全风险,轮询剪贴板还会带来一个日常困扰:它会干扰你正常的复制粘贴,出现「刚复制就被清掉」之类的问题。

词盾不读取剪贴板,不参与也不会影响你的复制粘贴。

第四层:本地存储意味着这些数据不会外传

即使前面三层都做对了,还存在一个假设需要澄清:存下来的内容会不会被传走。

词盾的数据只在本机:%APPDATA%\WordShield\data\prompts.db,没有账号体系,没有任何远程调用,断网照常工作。你随时可以打开那个文件看里面到底有什么。

你可以自己做的四项自查

  1. 在一处密码输入框里输入一些内容,然后去库里搜那几个字,确认搜不到
  2. 打开排除清单,看看微信、密码管理器、网银在不在里面
  3. 找到数据目录,用任意 SQLite 工具打开数据库,亲眼确认里面存的是什么
  4. 断开网络使用一轮,确认功能完整

这四件事都不需要相信开发者。一个把安全当真的工具,应该经得起这样检查。

一条设计原则

能读到什么,是能力问题;主动放弃读什么,是态度问题。后者才是你该看的地方。

词盾 WordShield · Windows 10 / 11

约 50 MB,解压即用。免费版即可长期使用,可见最近 100 条;终身版 ¥199 一次性买断。

了解并下载
← 返回全部文章