2009-01-21 55 views
2

作为试图描述间谍软件构成的威胁以及如何缓解威胁的一部分,我一直在寻找关于当前野外各种常见间谍软件木马如何捕获密码数据的信息。我最好的猜测是,他们要么记录击键,拦截浏览器提交或拦截GUI消息。间谍软件行为信息

我想要一些更明确的信息,但一直未能找到它。我在哪里可以找到这种分析?

回答

0

大多数恶意软件(我的意思是高级)都是用ASM或C++编写的。他们中的很多人在用户按下按键时使用Windows高级API将当前窗口中的键盘按键活动挂钩。

例如键盘活动大多是他们使用SetWindowsHookEx功能与WH_KEYBOARD_LL

此外,他们使用GetActiveWindow API,以便检测当前活动窗口的标题。所以在键盘记录器,大多是你会看到这样的事情:

[Gmail - Google Chrome Browser] 
[email protected] {TAB} testpassword 

那么,谁收到keylogs会读它,你可以在上面看到的人。

另一种方法是在浏览器中注入一些专门写入的DLL或扩展,我主要看到它用于Internet Explorer,它们使用BHO DLL来接收所有GET/POST数据,因此您不需要任何主动运行EXE文件,只是一个运行时打开Internet Explorer的DLL,DLL将直接发送所有POST/GET数据,因为它是黑客的服务器。它大多在同一时间完成,BHO不会存储任何内容(主要是),并将您发送到银行的相同POST/GET数据同时发送给黑客服务器。但其他键盘记录器大多存储键盘记录直到达到一个大小,例如5kb,然后木马将键盘记录提交给黑客。

还有一些“不是很常见”的技巧来捕获击键,并且有一个低级别的驱动程序,它运行在ring-0(内核模式)并捕获键盘数据,它更复杂,更难以检测,但也对于黑客来说很难使用,您需要在内核接收键盘的同一时间获得当前窗口,当前键盘布局(英文,中文,阿拉伯文等)的另一合作环3(用户模式)应用程序,因为不知道键盘布局和用户按下这些键的窗口,它将“几乎”无用。

我也看到了一种“非专业”的方式来捕捉关键敲击,这是使用GetAsynKeyState API。他们主要编写一个循环函数,并通过每100毫秒调用一次该API来捕获关键事件(例如)。

所以我想我已经涵盖了很多键盘记录器用来捕获按键的技巧,如果你有更具体的问题,请让我知道。