У нас странная проблема на двух ПК с запущенным исполняемым файлом с цифровой подписью 120 Мб.
Если пользователь запускает .exe с цифровой подписью, то запускающий хост (например, Explorer или cmd.exe) будет вводить бесконечный (бесконечный) цикл, постоянно открывающий / закрывающий HKLM\System\CurrentControlSet\Control\Cryptography\Providers и HKLM\System\CurrentControlSet\ Управление \ Криптография \ Конфигурация ключей реестра. Стек вызовов указывает, что хост-процесс находится внутри функции CreateProcess (более конкретно - внутри NtCreateUserProcess), а целевой процесс "частично создан". Например, это видно в диспетчере задач, но в Process Monitor нет события "Процесс создан", и любая попытка открыть целевой процесс приведет к зависанию инструмента, который пытается его открыть.
Процесс запуска для Explorer/CMD выглядит следующим образом:
- Проверка HKLM\SOFTWARE\MICROSOFT\WINDOWS NT\CURRENTVERSION\ Опции выполнения файла изображения (не существует)
- Чтение всего .exe по 32 килобайтам
- Чтение разделов реестра в разделе HKLM\ System\ CurrentControlSet\ Control\ Cryptography\ и перечисление HKLM+HCU\SOFTWARE\MICROSOFT\ SystemCertificates\ Disallowed\ Certificates
- Бесконечный цикл с чтением вышеупомянутых разделов реестра начинается сразу после завершения перечисления HKU.DEFAULT\SOFTWARE\ Policies\ Microsoft\ SystemCertificates\ Disallowed\ Certificates
Цифровой сертификат - это обычный сертификат SHA1-RSA для подписи кода, выданный COMODO. Подписанный исполняемый файл с отметкой времени. Проблема не в конкретном исполняемом файле, так как все другие исполняемые файлы, подписанные этим сертификатом, имеют такую же проблему. Другие подписанные исполняемые файлы работают нормально.
Что мы попробовали:
- Хэш файла в порядке.
- На обоих ПК установлены MalwareBytes.
- Отключение антивируса и брандмауэра не решает проблему.
- Безопасный режим решает проблему.
- Сертификат в порядке, не истек, не отозван, certutil -f -urlfetch -verify не находит никаких проблем.
- Хэш сертификата не указан в перечисленных выше разделах различных разделов реестра Disallowed\Certificates.
- Удаление MS14-066/KB2992611 не помогает.
Есть идеи?