作为试图描述间谍软件构成的威胁以及如何减轻它的一部分,我一直在寻找关于目前各种常见的间谍软件特洛伊木马程序如何捕获密码数据的信息。我最好的猜测是,它们要么记录击键,要么拦截浏览器提交,要么拦截GUI消息。
我想要一些更明确的信息,但是还没有找到。我在哪里可以找到这种分析?
发布于 2014-02-11 02:16:58
大多数恶意软件(我指的是高级恶意软件)都是用ASM或C++编写的。它们中的许多都使用Windows高级API来将用户按键时的键盘按键活动与当前窗口挂钩。
例如,对于键盘活动,它们大多使用带有WH_KEYBOARD_LL钩子的SetWindowsHookEx函数
他们还使用GetActiveWindow应用程序接口来检测当前活动窗口的标题。所以在键盘记录器中,你通常会看到类似这样的东西:
[Gmail - Google Chrome Browser]
testuser@gmail.com {TAB} testpassword因此,接收密钥日志的人将阅读它,正如您在上面看到的那样。
另一种方法是在浏览器中注入一些特别编写的DLL或扩展,我主要在Internet explorer中看到过,他们使用BHO DLL来接收所有的GET/POST数据,所以你不需要任何正在运行的EXE文件,只需要一个DLL,它会在你打开Internet explorer时运行,DLL会直接将你所有的POST/GET数据直接发送到黑客的服务器。它大部分是在同一时间完成的,BHO不存储任何东西(主要是),并将你在同一时间发送到银行的相同POST/GET数据发送到黑客的服务器。但是其他的键盘记录器大多存储键盘日志,直到它达到一定的大小,例如5kb,然后特洛伊木马将键盘日志提交给黑客。
还有一些“不太常见”的技巧来捕获击键,那就是有一个低级的驱动程序,它运行在环-0(内核模式)中并捕获键盘数据,它更复杂,更难检测,但也很难被黑客使用,你需要另一个协作的环-3(用户模式)应用程序来获取当前窗口,当前键盘布局(英文,中文,阿拉伯语等)。在内核接收键盘的同时,因为不知道键盘布局和用户按下这些键的窗口,它将“几乎”无用。
我还看到了一种“非专业”的方法来捕获击键,那就是使用GetAsynKeyState应用编程接口。它们主要编写循环函数,并通过每100毫秒(例如)调用此API来捕获关键事件。
所以我想我已经介绍了很多键盘记录器用来捕捉按键的技术,如果你有更具体的问题,请让我知道。
https://stackoverflow.com/questions/464511
复制相似问题