我想直接在内存文件中扫描恶意软件内容,我想知道哪种方法最好。
我负责改进我们在 .net core 和 Angular 中开发的 Web 应用程序的网站安全策略
我阅读了 OWASP 的建议,其中之一是扫描文件中的恶意软件我已经确定了两种扫描文件的方法:从云调用第三方 API 或调用 AMSI 接口。通过互联网呼叫第三方对我来说不是一个选择,因为客户希望在本地完成验证。
什么是 AMSI:
Windows 反恶意软件扫描接口 (AMSI) 是一种通用接口标准,它允许您的应用程序和服务与机器上存在的任何反恶意软件产品集成。AMSI 为您的最终用户及其数据、应用程序和工作负载提供增强的恶意软件保护。Windows AMSI 界面已打开。这意味着任何应用程序都可以调用它;并且任何注册的反恶意软件引擎都可以处理提交给它的内容。
我选择从 .net 核心调用 AMSI 接口来分析恶意软件内容的 http 请求,但我的测试在某些安装了 Symantec 端点保护作为防病毒提供程序和 AMSI 订阅者的服务器上不起作用。AMSI 似乎被绕过了。
当我使用 eicar 标准内容测试对 AMSI 的调用时,即使我发布了包含恶意软件内容的帖子,AMSI 也会返回结果,就好像没有检测到恶意软件一样。这就是为什么似乎绕过了 AMSI 的原因。
你知道我能做些什么来修复它吗?为什么绕过 AMSI?我应该检查或考虑什么?
开发一个从队列中扫描文件并运行 .bat 以向防病毒程序发出命令以扫描文件的 Windows 服务会更好吗?是否有任何可以在本地安装的第三方 Web api?