请问高手如何在VC的EDIT控件输入的时候防止被键盘钩子HOOK到。怎样才可以有效防止密码框输入时的后台木马泄密问题。

解决方案 »

  1.   

    一种方法是在驱动中挂钩NtUserSetWindowsHookEx,这种方式比较保险。
    另一种方法是挂钩进程自身的LoadLibraryExW,在挂钩函数中判断返回地址。如果返回地址位于User32.dll内的话,则说明本次加载是由SetWindowsHookEx引起的,予以制止。但是这种方法无法判断挂钩的类型。
      

  2.   

    //一种方法是在驱动中挂钩NtUserSetWindowsHookEx,这种方式比较保险。
    这种方法若后台监视程序比自身程序先启动,也可以拦截到吗
    //另一种方法是挂钩进程自身的LoadLibraryExW......
    如果非法程序不是监视特定程序的键盘输入,而是在进程中发现特定程序就开始键盘记录,这种方法是否还可行
      

  3.   

    > 这种方法若后台监视程序比自身程序先启动,也可以拦截到吗
    在ring0中,无所不能。
    > 如果非法程序不是监视特定程序的键盘输入,而是在进程中发现特定程序就开始键盘记录,这种方法是否还可行
    在ring3中,只能防止自身被挂钩,可以参考:http://www.vckbase.com/document/viewdoc/?id=1694
      

  4.   

    自己写一个activeX控件就可以了