标签: windows-defender

Windows Defender防病毒软件从C#扫描[AccessViolation exception]

我们正在编写一个代码,使用Windows Defender API对C#中的文件进行按需扫描.

        [DllImport(@"C:\Program Files\Windows Defender\MpClient.dll")]
        public static extern int WDStatus(out bool pfEnabled);

        [DllImport(@"C:\Program Files\Windows Defender\MpClient.dll")]
        public static extern int MpManagerOpen(uint dwReserved, out IntPtr phMpHandle);

        [DllImport(@"C:\Program Files\Windows Defender\MpClient.dll")]
        public static extern int MpScanStart(IntPtr hMpHandle, uint ScanType, uint dwScanOptions, IntPtr pScanResources, IntPtr pCallbackInfo, out IntPtr phScanHandle);

        [DllImport(@"C:\Program Files\Windows Defender\MpClient.dll")]
        public static extern int MpHandleClose(IntPtr hMpHandle);

        private void DoDefenderScan_Click(object sender, EventArgs e)
        {
            try
            {
                bool pfEnabled;
                int result = WDStatus(out pfEnabled); //Returns the defender status - It's working properly.
                ErrorHandler.ThrowOnFailure(result, VSConstants.S_OK); …
Run Code Online (Sandbox Code Playgroud)

c# windows antivirus dllimport windows-defender

18
推荐指数
1
解决办法
4487
查看次数

如何使用 GPO 永久禁用 Windows Defender 实时保护?

我喜欢在 Windows 10 专业版上通过 GPO 禁用 Windows Defender 实时保护。当我配置 GPO 时,实时保护显示为关闭。然而,重新启动后,保护再次神奇地启用。

GPO 设置没有改变。我正在尝试禁用实时保护,以便能够分析和逆向工程恶意软件。

此外,即使 Windows 告诉我实时保护由管理员管理,它仍然在后台启用。

我真的想知道是否有办法完全禁用 Windows Defender + 实时保护,或者微软是否使这成为不可能。

gpo windows-defender

18
推荐指数
2
解决办法
4万
查看次数

Windows Defender Antivirus API

阅读windows defender API的文档,例如在MpManagerOpenFunction中:

https://msdn.microsoft.com/en-us/library/windows/desktop/dn920115(v=vs.85).aspx

我看到所需的包含文件是MpClient.h.但是我无法在任何地方找到它.有没有人知道在哪里可以找到这个文件,或者只是如何在没有它的情况下使用API​​(没有将原型和结构复制到我自己的代码中),在C程序中?

提前致谢.

c windows winapi antivirus windows-defender

11
推荐指数
1
解决办法
1617
查看次数

Windows Defender实时保护服务减慢了Visual Studio等

在过去两个月左右的时间里,我一直在观察实时保护服务的一个奇怪现象,该服务捆绑在Windows 10的Windows Defender中.

当此服务设置为ON时,Visual Studio构建需要花费极长的时间才能完成.Visual Studio本身需要永远推出.此外,如果Outlook中安装了托管加载项(使用Visual Studio Tools For Office,VSTO编写),则Outlook需要13-14秒才能启动!禁用此服务后,Outlook将在两秒钟左右再次启动.

我已经在Twitter上通过Windows支持提出了这个问题,并尝试在线与Microsoft支持人员讨论这个问题一小时没有任何解决方案.环顾互联网,我可以看到有些用户报告了同样的问题

http://ardalis.com/speed-up-visual-studio-build-times

开发期间的页面刷新时间较慢

我已经注意到这只有两个月左右了.我尝试在Azure等中启动新的虚拟机来测试这个,并且在每个实例中我都注意到这个真正的时间保护服务是罪魁祸首.我的主要问题是Outlook加载时间说实话.

我试图在微软的答案的网站上发布这个位置,但到目前为止没有运气.我希望这里的任何人都知道如何在不为实时保护服务中的Outlook添加例外的情况下解决此问题(之后加载项按预期在200毫秒内加载).

windows vsto visual-studio-2015 windows-defender

10
推荐指数
1
解决办法
2887
查看次数

Android开发哪些Windows Defender排除的文件夹?

我排除了Windows Defender中的以下文件夹,但“ Antimalware Service可执行文件”仍使用大量cpu。

  • C:\Program Files\Android\Android Studio
  • C:\Users\ME\.android
  • C:\Users\ME\MyAndroidProjects
  • C:\Users\ME\AppData\local\Android

我忘记了哪个文件夹/文件?

android android-emulator android-studio windows-defender

10
推荐指数
2
解决办法
1943
查看次数

Windows Defender - 以编程方式添加排除文件夹

为了研究目的,我正在检查不同的键盘记录器,偶然发现了Refog:

https://www.refog.com/keylogger/

这个程序可以捕获很多系统事件,但真正引起我注意的是其他东西.该程序创建了一个名为Mpk的隐藏文件夹,路径为C:\ Windows\SysWOW64\Mpk.它被标记为操作系统文件文件夹,因为在我取消标记之前它是不可见的Hide protected operating system files (recommended).我想,这可以通过像这样的attrib命令完成,attrib +s +h "C:\Windows\SysWOW64\Mpk"所以没有什么革命性的.

隐藏

但是,他们还为Windows Defender添加了此文件夹的排除项.他们怎么能以编程方式执行此操作?我正在运行Windows 10 Pro x64.

排除

windows windows-10 windows-defender

9
推荐指数
3
解决办法
1万
查看次数

代码签名 EV 证书仅对 SmartScreen 有帮助,对 Windows Defender 没有任何作用

我们的组织最近获得了EV code signing certificate. 它确实给了我们即时SmartScreen信任,但仍然发生了两件事:

\n
    \n
  1. 一个小烦恼是,它向前几个下载者Chrome发出了警告file.exe is not commonly downloaded and may be dangerous,但它在一天之内就消失了,我们没有采取任何措施。

    \n
  2. \n
  3. 一个更大的问题是Windows Defender。它的作用如下:

    \n
  4. \n
\n

当我们的用户安装该程序时,它会标记并锁定所需的关键组件。大多数用户都会遇到这种情况。

\n

我们在上传之前在本地扫描了程序组件,没有发现任何问题。我们的Virus & threat protection是最新的。当我们从网站下载相同的文件并像普通用户一样安装时,我们也不会触发防病毒保护。为什么它的行为如此不一致,以至于当我们从互联网下载到内部 PC\xe2\x80\x99s 上时,它不会标记文件\xe2\x80\x99s,但大多数外部用户都会发生这种情况?

\n

到目前为止,我们一直在从用户那里收集这些通用威胁名称和文件名,并将其提交给微软进行分析:https://www.microsoft.com/en-us/wdsi/filesubmission \n令人非常钦佩的是微软的分析师在一天内查看这些文件,但不好的是他们似乎只更新检测到的威胁名称的防病毒定义,而不是将整个文件标记为无害。这个问题变得更加令人沮丧,因为我们经常更新我们的安装程序,因为程序正在积极开发中。

\n

我还担心这些带有 MS 威胁定义的更新没有足够快地正确传播给世界各地的 Windows 用户。如果用户不更新其定义或将其关闭,会发生什么情况?

\n

有什么我们尚未采取但可以采取的措施来减少这些误报问题吗?

\n

EV代码签名证书由DigiCert颁发,价格非常昂贵。MS 多次扫描签名文件并提高证书的信任评分后,这些问题会消失吗?我的意思是,它会减少尚未提交分析的未来构建的误报吗?

\n

code-signing windows-security windows-defender digicert ev-certificate

9
推荐指数
0
解决办法
634
查看次数

如何实现 IAmsiStream 以支持在 Windows 上流上运行恶意软件扫描

当实现IAmsiStream以使用 Windows Defender 执行扫描时,对于大于 ~20MB 的文件,它会失败并显示Value does not fall within the expected range..

这个实现中缺少什么?

    public class AmsiStream : IAmsiStream
    {
        private readonly Stream _input;
        private readonly string _name;
        private static readonly byte[] _nullPtr = new byte[Marshal.SizeOf(IntPtr.Zero)];

        public AmsiStream(Stream input, string name)
        {
            _input = input ?? throw new ArgumentNullException(nameof(input));
            _name = name ?? throw new ArgumentNullException(nameof(name));
        }

        public int GetAttribute(AMSI_ATTRIBUTE attribute, int dataSize, byte[] data, out int retData)
        {
            const int E_NOTIMPL = unchecked((int)0x80004001);
            const int …
Run Code Online (Sandbox Code Playgroud)

c# windows-defender antimalware

8
推荐指数
1
解决办法
940
查看次数

Windows Defender 减慢 Electron 的启动速度

语境

我已经设置了一个简单的 Electron 应用程序,它显示了一个纯 html 文件,并且它始终需要超过两秒钟才能启动。关键的性能测量是:

  • 170 ms:屏幕上出现一个空白窗口
  • 2800 ms:窗口显示指定的 HTML

经过询问,我发现问题是由 Windows Defender 引起的。禁用其实时保护可以获得可接受的启动速度:

  • 150 ms:屏幕上出现一个空白窗口
  • 500 ms:窗口显示指定的 HTML

虽然这种加速完全解决了问题,但要求用户禁用 Windows Defender 以加快启动速度是行不通的。

我观察到一些流行的 Electron 应用程序(例如 Visual Studio Code)具有正常的启动时间,因此我认为有一种方法可以在不禁用 Windows Defender 的情况下实现这一目标。问题是:如何?

我唯一想到的是签署电子二进制文件,希望它能解决问题。但是由于签名证书要花钱,所以我宁愿在走这条路之前确定我需要它。如果有这方面经验的人能插话就太好了!

要求

我正在寻找一种不需要告诉我的用户修改他们的环境的解决方案。

javascript windows performance electron windows-defender

7
推荐指数
1
解决办法
246
查看次数

使用 Inno Setup 安装的程序被视为特洛伊木马 (Wacatac.B!ml)

我的软件是.NET 应用程序。使用 Visual Studio 编译的原始 .exe 工作正常,Microsoft Defender 对此或任何依赖项没有任何说明。

我用 Inno Setup 制作了一个安装程序,到目前为止,它在许多不同的机器上都运行良好。

安装程序部署我的两个 .exe(主应用程序和一个管理工具)和我自己的库、一些其他库(Helix Toolkit、Triangles.net)以及 .NET 5.0 中的一些库(因此不需要该框架)离线安装)。

从今天早上开始,我有以下几点:

  • 其中一个已安装的 .exe 被 Microsoft Defender 视为特洛伊木马,并被隔离;
  • 当我手动将原始.exe放回Program Files目录时,没有检测到木马(即使我手动测试目录)。

需要明确的是:

  • 安装程序中未检测到恶意软件
  • 原始文件中未检测到恶意软件
  • 仅涉及 Inno Setup 安装的文件

Inno Setup 是否有可能将该木马放入我的 exe 中?如果是这样,我可以采取什么措施来预防或规避它?

我调查得越多,我就越不了解 Inno Setup 的作用。我的原始 exe 文件只有 280 Ko,而 Inno Setup 安装的 exe 文件重 132 Mo。而且,该木马仅在 inno setup 安装的 exe 中检测到。

屏幕截图(抱歉法国操作系统):

在此输入图像描述

木马描述为:
https://www.microsoft.com/en-us/wdsi/threats/malware-encyclopedia-description ?name=Trojan%3aScript%2fWacatac.B!ml&threatid=2147735503

Inno Setup 安装程序现在被视为包含木马并被隔离。

在此输入图像描述

inno-setup trojan windows-defender

7
推荐指数
1
解决办法
1万
查看次数