如何以可靠的方式检测按键记录器?

如何以可靠的方式检测按键记录器?

我总是无法在自己不信任的电脑上输入密码(比如非技术朋友的电脑),尽管我通常可以避免这样做,但有时我还是需要使用它们。我最担心的是我的密码被按键记录器窃取。

所以我的问题是 - 有没有可靠的方法来检测按键记录器?

我知道一些硬件按键记录器,比如密钥幽灵但我最感兴趣的是基于软件的。

答案1

随着问题标题的重点变为“如何以可靠的方式检测击键记录器?”,我下面的大部分回答都无关紧要。简而言之,我不相信你能以可靠的方式检测击键记录器。有一些方法可以检测其中一些,一些对策可以限制它们的有效性,还有一些方法可以绕过它们,我在下面相当过时的答案中讨论了其中一些,但没有可靠的检测它们的方法。请阅读维基百科关于键盘记录方法和对策的文章

这不是一个简单的问题。

软件键盘记录

可以通过使用屏幕键盘或从基于屏幕的数据中进行剪切和粘贴来绕过在按下和释放按键时拾取键码的软件,但这不适用于在较低级别工作的软件(在某些时候,操作系统必须将“模拟按键”提供给等待输入的应用程序)。

使用不太可能成为键盘记录软件攻击目标的操作系统可以进一步降低风险。

如果这确实很重要,并且硬件没有日志记录设备,那么值得考虑启动已知干净操作系统的只读副本(例如经过校验的实时 CD 或 DVD),前提是硬件/网络所有者允许这样做,并且 CD/DVD 包含您需要的应​​用程序,并且您知道所需的设置参数(密码和数据可以放在加密的 USB 记忆棒上,在类 Unix 系统中安装,不允许文件执行)。使用您自己的硬件/软件,遵循良好的安全实践,并定期从干净、可信、经过校验的媒体重建是另一种前进的方式。

建议的机制旨在降低系统中存在键盘记录软件的风险。如果键盘记录器进入系统,那么强大的防火墙策略可能检测键盘记录器试图通过网络将数据发送回其“所有者”,但这通常需要繁琐的手动参与防火墙过程(例如,调整系统以允许特定应用程序使用特定 IP 端口和地址)。最后,除了系统上的键盘记录器外,如果数据通过网络传输或文件系统的物理完整性受到损害,则输入的部分内容可能会被看到。如何缓解这些问题超出了本问题的范围,但在考虑应用程序和系统完整性时必须包括在内。但是,监控网络可以显示敏感数据是否正常传输,也有助于识别意外传输。

一次性密码、在密码可能被泄露时迅速更改密码、使用键盘记录软件检测器(扫描电脑以查找已知键盘记录软件签名的软件)也是可能的对策,但所有对策都有弱点。

硬件和其他键盘记录

虽然这些超出了你的问题的直接范围,但需要牢记。它们包括观察网络流量、键盘和 PC 之间连接的设备、偷窥、摄像机、声学或电磁或振动监控(例如参见暴风雨措施)或检查 RAM 内容以获取信息,如果有人对您输入的内容足够感兴趣。检测这些内容的范围从容易到不可能。

一般的

有一篇很有帮助的文章维基百科上有关键盘记录方法和对策的内容非常值得一读。

答案2

这不是一个容易的问题,因为维基百科进入,而“可靠”似乎至今还遥不可及。 但有些人正在尝试(其中还包含“100% 高效可靠”的语言,这让我对他们说的一切都持怀疑态度)。

答案3

击败键盘记录程序的一种方法是输入带有额外字符的密码,然后使用鼠标选择并删除这些额外字符。由于键盘记录程序只是记录按键,因此它会得到一个不起作用的密码。

答案4

为了安全起见,我会设置安全密码,有时密码长度可达 70 个字符。然后,例如,如果是在 Windows 设置中,我会在 ENTRY 和 RE ENTRY 字段之间交替。

除此之外,我还会单击或向后箭头并插入字符(即,我永远不会按顺序输入密码 [如果我担心安全问题])

如果您担心键盘记录,您也可以在屏幕外打字。

我使用字母、数字和符号的组合,并将它们分成块。然后,我为这些块分配数值,表示该块中包含多少个字符,以便实现和跟踪前面提到的单击和箭头方法,因为它可能会造成混淆。如果这不太清楚,我很抱歉,我会根据需要澄清部分。

因此,假设您将密码分成 16 个不同(或一致的字符串长度)的部分。我将这 16 个部分分成 4 行,然后从那里开始实施。此外,在设置密码时,我不会像在密码输入字段中那样实施这 4 行的顺序。这就是我认为可靠的安全性,对于任何人来说,要想推断出您的密码将需要付出巨大的努力,如果可能的话。

相关内容