问题标签 [keylogger]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
1493 浏览

c# - 是否有可能拥有带有内置 Anti-Keylogger 的 C# Winform?

每个安全系统都有其局限性。我知道硬件键盘记录器无法被击败,因为它连接到硬件本身。在这一点上也不是一个问题,因为大多数时候程序员和道德黑客使用它来记录自己,除此之外,大多数时候谨慎的用户将能够在视觉上识别任何不需要的硬件(忘记政府机构)。

但是作为开发人员,保护用户通常是一个问题!那么,作为一名程序员,我是否有可能在我的 Windows 窗体中集成一层安全性,通过实施某种反钩子技巧,能够禁用用户系统上的任何活动按键记录器(即基于软件)?加上现在大部分软件按键记录器都支持“截图”,有什么办法可以逃脱吗?

0 投票
2 回答
5161 浏览

python - 每次按下一个键时都会回调一个函数(不管哪个窗口有焦点)?

我想在 Linux(Ubuntu Linux 9.10)上编写一个程序(在 python 中),它将跟踪我每秒/分钟的按键次数。这包括普通字母键和控制/移位/空格/等。

有什么方法可以连接到 X,这样我就可以说“当按下一个键时调用这个函数?”。由于我想在我正常工作时让它在后台运行,所以这个函数调用必须能够知道所有程序的所有按键。我想它有点像键盘记录器。

这只是个人的事情,所以我不关心让它在 Windows/OSX 上运行,我也不关心人们什么时候有花哨的远程 X 会话等。

0 投票
3 回答
1661 浏览

java - 在 Java 中的另一个窗口上操作时如何记录击键?

我希望在各种网站的浏览器窗口中记录击键和鼠标位置,但我不确定如何在 SWING(或其他一些 GUI)窗口之外执行此操作。

当另一个应用程序的窗口处于活动状态时,如何记录击键?

0 投票
3 回答
10323 浏览

c# - 后台应用程序读取用户按下的键

我想做一个在后台工作的应用程序并读取用户按下的所有键并将其保存在文件中。我开始在 Win 表单中编写它并使用键 Pressed 事件,但是当表单聚焦时它可以工作:/

这是另一种方法吗?我听说过 Windows 服务,但我从不使用它:/

0 投票
2 回答
1539 浏览

vb.net - .NET 中的密钥记录

是否可以在 Visual Basic.NET 中编写键盘记录器?这是使用正确的语言吗?

到目前为止,我已经获得了一个控制台应用程序来读取输入并附加到文件中。

1)如何让 .NET 程序“捕捉”所有键盘输入?

2)如何让任务管理器中不显示进程?

这不是针对病毒,而是针对特定客户的家长控制程序。这里没有恶意。

0 投票
1 回答
1313 浏览

x11 - Xorg/X11 记录扩展的示例代码失败

我正在使用最新版本的 Ubuntu 上的 RECORD 扩展来编译一个基本示例(就像使用裸 X 可能很简单......)X11,我收到以下错误:

关于出了什么问题的任何提示?

0 投票
1 回答
1150 浏览

multithreading - 在我的线程上下文中调用“SetWindowsHookEx”函数

为了SetWindowsHookEx在 GUI 应用程序中使用,您通常希望在发生事件时在线程中调用一个函数。

因此,例如,如果我正在制作一个软件来显示系统上所有被按下的键,我希望我的 GUI 应用程序以某种方式AddKeyToList(int vkeycode)在按下某个键时调用该函数。

我不是 Windows 内部的专家,但如果我正确理解了文档,则安装的钩子SetWindowsHookEx会在导致它们钩子的事件的线程上下文中被调用。因此,为了做到我所描述的,需要:

  1. 创建一个包含钩子函数的 DLL,并在那里创建一个共享内存区域,所有线程将通过它共享和相互通信。

  2. pInvoke在钩子函数和 GUI 程序中创建类似的机制。在我们的示例中,钩子函数会将按下的键发送到我们的 GUI 程序,GUI 程序将在其自己的上下文中调用该AddKeyToList函数。

这对于一个相对简单的类来说是非常复杂的(与 unix 世界中的 XRecord 扩展相比),如果你使用类似Qt.

是否有任何库(最好是开源的)已经实现了这些机制,并使我能够使用“外观”,例如,每当发生 a时,它将在我的线程上下文中WH_KEYBOARD_LL调用一个函数?

我的分析是否正确,还是有更简单的方法来实现我所描述的?

Qt图书馆可以帮我完成这项任务吗?

0 投票
1 回答
908 浏览

python - 在 Python 中创建键盘命令

我正在根据我在网上找到的脚本编写自己的简单键盘记录器。但是,我正在尝试编写一个键命令,以便在键入此命令时关闭记录器程序。我该怎么办?(我也知道它根本不安全,但这不是这个程序的问题)

例如 Ctrl + 'exit' 将关闭程序。

此外,它有时不会在它创建的 .log 文件中正确打印某些字符,这可能是什么原因造成的?(我认为字符编码类型可能会导致这个问题)

这是在 Windows 7 中,顺便说一句。

0 投票
2 回答
5321 浏览

.net - 使用 VB.Net 捕获所有键盘事件

我编写了一个带有简单文本框的应用程序,它试图从用户的打字习惯中识别用户(按键之间的间隔、按住持续时间键、击键之间的时间,即对于某些用户来说 a->s 比 a->v 快,对于其他人来说更短,具体取决于打字风格)。它远非完美,但它确实能正确识别出风格上的适度差异。

我希望将其用作安全监视器的一种形式 - 如果用户的打字风格不符合公认的模式,请向中央服务器报告。

当然,测试的下一步是开始捕捉“常规”打字习惯——即在浏览、在应用程序之间切换等时。

我不知道该怎么做是捕获所有应用程序的键盘输入(不包括登录/欢迎屏幕、备用桌面等 - 我没有理由解析它,而且可能没有足够的输入来分析)

免责声明:是的,我知道这非常接近于编写一个被禁止的键盘记录器,但如果我想这样做,我会用 C++ 编写一个键盘驱动程序——我相信它会比它更精简、更容易混淆一个庞大的 .Net MSIL 程序集。我毫不怀疑我会抵制“那是一个键盘记录器”的评论,但我已经碰壁了,需要在某个地方问......

我不需要隐藏应用程序 - 但理想情况下希望能够在没有明确用户确认的情况下捕获输入(除了由管理员安装) - 如果需要用户确认,我可以忍受(只是)如果它可以一次性,我有一些方法来监控和报告拒绝。

这在.Net中甚至可能吗?我能够找到的唯一示例是通过为每个键添加事件挂钩来操作,这看起来很笨重,我想这很容易出错。- 或 - 他们轮询键盘状态以确定按下的键。这对我没有好处,因为 a)我需要精确的按键时间,所以按键向上/向下事件是必须的,并且 b)它很讨厌。

如果该框架旨在明确禁止这种情况,我不会感到惊讶,在这种情况下,我将不得不回退到一些非托管代码来提供事件。我显然更喜欢一直使用托管代码。

任何帮助表示赞赏。

编辑:感谢 Hans Passant 的回答,这是迄今为止我找到的最好的资源:http: //www.codeguru.com/columns/vb/article.php/c4831

0 投票
1 回答
3683 浏览

c# - 全局挂钩键盘记录问题

它当前将密钥记录到文本框,因此很安全。

问题问题是当我在虚拟机或我朋友的笔记本电脑上运行它时,它在按下一定数量的键(随机)后挂起。它在我的运行得非常好。

http://i34.tinypic.com/29o1im8.jpg