.Exe, который я создаю, в настоящее время распознается Avast как «Файл может быть опасным». Это не ложно положительный потому что антивирусное программное обеспечение, наконец, не обнаруживает в нем никакого вируса, а просто вызывает тревогу, говоря, что этот файл «редко загружается».
Я связался с Avast, но они, похоже, не предлагают решение, кроме как отправить им .exe для белого списка.
Вещи, которые я пробовал, но это не решило проблему:
Иметь надлежащий resource.rc
файл в Visual C ++, с подробной информацией о .exe: BLOCK "StringFileInfo", VALUE "CompanyName", "MyCompany\0"
, так далее.
использование makecert
, certutil
, signtool
как подробно в этом ответе: Как создать самозаверяющий сертификат для подписи кода в Windows?
Вещи, которые не будут работать:
Добавить в локальное исключение avast (я не могу попросить каждого клиента сделать это!)
Повторите «Отправить файл в Avast Lab для проверки» для каждой новой сборки .exe. Нельзя масштабировать, чтобы повторно отправлять .exe в Avast (и все другие 50+ антивирусных программ!) Для каждой новой сборки.
Платить $ 200 в год за подпись кода (это может быть работать, но я не считаю справедливым $ ххх выкуп в год только для того, чтобы быть в белом списке)
Существуют ли распространенные решения, которые могут помочь избежать «Редко загружаемых файлов / файлов может быть подозрительным» антивирусных сигналов?
Примечание: я прочитал Как предотвратить распознавание моего .exe как вредоносного?, Как я могу сделать так, чтобы мое программное обеспечение не было обнаружено антивирусом?, но это действительно не охватывает тему здесь.
Примечание 2: я прочитал эти руководящие принципы, и т.д., но в настоящее время это не помогло.
Это зависит от того, что это exe
собираюсь сделать. Я видел эти воздушные шары два раза.
Во-первых, когда я добавляю некоторый скомпилированный ассемблерный код в (подписанный?) Исполняемый файл, а другой происходит, когда я развертываю общесистемный хук, чтобы перехватывать все нажатия клавиш в системе, пока приложение неактивно (exe
были не достаточно для этого и были собственные dll
).
Других решений пока нет …