【问题标题】:SetWindowsHookEx - antivirus issueSetWindowsHookEx - 防病毒问题
【发布时间】:2016-12-07 16:27:52
【问题描述】:

我要做的任务是从键盘快捷键禁用窗口停靠
(VK_RWIN 或 VK_LWIN + 箭头)在单个应用程序中。

为此,我决定在此应用程序中完全阻止 VK_RWIN 和 VK_LWIN 虚拟按钮。
我已将 SetWindowsHookEx 与 LowLevelKeyboardProc 回调一起使用。
我正在检查我的应用程序是否已通过 WM_ACTIVATEAPP 消息激活。
在回调内部,如果应用程序处于活动状态,我将检查虚拟键并返回 1,
当按下 VK_RWIN 或 VK_LWIN 时。
正如预期的那样完美运行。

现在,我只是想知道防病毒软件是否可以检测到恶意软件之类的使用?

【问题讨论】:

  • 这可能有点太宽泛了。没有人知道所有流行的反恶意软件应用程序的所有启发式方法。挂钩其他应用程序肯定会被认为是可疑的。只挂钩你自己的进程可能不应该是可疑的,但谁知道是否所有的反恶意软件应用程序都能捕捉到这种细微差别?想要禁用此功能似乎很奇怪。桌面窗口管理器只是把它变成对窗口的大小和移动操作,用户无论如何都可以做。
  • 如果应用程序经过数字签名怎么办?
  • 签署应用程序可能会也可能不会修改 AV 行为。根据我自己的经验,我只能告诉你它没有帮助。

标签: winapi antivirus


【解决方案1】:

是的,当然。许多 AV 软件(可能是大多数)会将您的应用程序标记为恶意软件,因为它包含对 SetWindowsHookEx 的调用。例如,我有一些创建键盘挂钩的代码,我必须从 AV 扫描仪中排除该目录,否则它会在我构建它时立即隔离我的应用程序。我近年来使用的所有三种 AV 产品都是如此。

而且由于每个 AV 产品都有自己的应用程序白名单方式,因此您很难提前弄清楚用户必须做什么才能使用您的应用程序。

【讨论】:

    【解决方案2】:

    对您的应用程序进行数字签名,以免触发 AV 软件。

    【讨论】:

      猜你喜欢
      • 2016-07-10
      • 1970-01-01
      • 2013-05-08
      • 2010-11-26
      • 2017-09-20
      • 1970-01-01
      • 2010-10-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多