Microsoft исправила 5-летнюю ошибку в Защитнике Windows, затрагивающую производительность Firefox

2023-04-07 10093 комментарии
Компания Microsoft исправила ошибку в Microsoft Defender (Защитник WIndows), которая вызывала повышенное потребление ресурсов процессора при запуске Firefox. Устранение проблемы заняло почти 5 лет

Microsoft исправила 5-летнюю ошибку во встроенном в Windows антивирусе, Защитнике Windows, повышавшую потребление ЦП при запуске Firefox. Решение снижает использование ресурсов процессора на 75%. Обновление выпущено 4 апреля 2023 года, дополнительных действий от пользователей не требуется.

Повышенное потребление ресурсов ЦП при открытии Firefox из-за ошибки Защитника Windows

Ранее при запуске Firefox служба Antimalware Service Executable вызывала значительное увеличение использования ресурсов процессора. Некоторые пользователи жаловались, что производительность была настолько плохой, что компьютер даже периодически зависал. Проблема наблюдалась именно в Firefox, в Chrome и Edge все работало нормально. В мае 2018 года в баг-трекере Bugzilla был создан отчет об ошибке. Таким образом, проблема затрагивает не только Windows 11, но и Windows 10.

Инженеры Mozilla установили источник проблемы — службу Antimalware Service Executable, а точнее ее исполняемый файл Msmpeng.exe (Microsoft Malware Protection Engine). Они обнаружили, что исполняемый файл обращается к sechost.dll для запуска ProcessTrace, то есть обрабатывает ETW (отслеживание событий для Windows) из других процессов. По сути, он генерировал слишком много событий ETW, чем обычно, и использовал в 5 раз больше ресурсов процессора в случае с Firefox по сравнению с Chrome и другими браузерами.

В ходе дальнейшего расследования выяснилось, что защита в режиме реального времени Защитника Windows несколько раз вызывала VirtualProtect. Инженеры Mozilla работали совместно с командой Microsoft над решением проблемы. Было установлено, что вызовы VirtualProtect были аномально многочисленными, что, в свою очередь, приводило к проблемам с производительностью. Согласно Mozilla, отключение JIT (на странице about:config) смягчило проблему, но не решило ее полностью. Позже ошибка была устранена Microsoft при выпуске бета-версии ядра Defender (1.1.20200.2). Исправление тестировалось некоторое время, и теперь оно отправлено в стабильный канал антивирусных определений.

Инженер Mozilla Яннис Джугларет (Yannis Juglaret) предоставил сравнительную диаграмму, которая наглядно показывает, что исправление оказывает огромное влияние на производительность системы. Согласно диаграмме, использование ресурсов ЦП снизилось на 75%.

Пользователям не нужно ничего дополнительно предпринимать. Ошибка исправлена в обновлении за март 2023 года, которое было выпущено 4 апреля 2023 года. Обновление увеличивает номер версии клиента антивредоносной программы до 4.18.2302.x и версию подсистемы до 1.1.20200.4. Исправление доступно в новой версии файла mpengine.dll. Оно также развертывается для пользователей Windows 7 и Windows 8.1, хотя проблема их не затронула.

Как проверить, установлена ли у вас последняя версия DLL? Перейдите в папку: C:\ProgramData\Microsoft\Windows Defender\Definition Updates. В ней должна быть еще одна папка с длинным буквенно-цифровым именем, откройте ее и щелкните правой кнопкой мыши файл mpengine.dll. Выберите «Свойства», перейдите на вкладку «Подробно» и проверьте версию продукта. Его версия должна быть 1.1.20200.4 (или выше).

Патч применяется только в Microsoft Defender, но не к другим антивирусным программам. Тем не менее, некоторые пользователи сообщают об аналогичной проблеме с другими антивирусами, в частности Norton Antivirus. Mozilla уже работает над дополнительными изменениями, чтобы исправить проблему с другими приложениями безопасности.

А вы замечали такую проблему на своем ПК?

© .
Комментарии и отзывы

Нашли ошибку?

Новое на сайте