Как предотвратить ложное срабатывание вирусной тревоги на моем программном обеспечении?
Возможный дубликат:
Антивирус ложный положительный в моем исполняемом файле
До сих пор у меня было более 15 ложных вирусов для моих программ. Большинство из них были из Касперского, который ВСЕГДА сообщает об одном и том же вирусе: Trojan-GameThief.Win32.Lmir.pcd. Есть 3 вопроса:
- Почему это появляется?
- Как это предотвратить?
- Как это обнаружить?
Что касается первого вопроса, поскольку он всегда обнаруживает один и тот же вирус, я полагаю, это потому, что одна из моих программ используется во всех моих программах. Но какой именно, я не знаю. Что касается второго вопроса, я подумал о том, чтобы немного изменить программу и перекомпилировать ее, достаточно, чтобы изменить код, чтобы антивирус больше не распознал ее и не выпустил новую версию. Третий вопрос - самый сложный. Как проверить ВСЕ мои программы на ВСЕ антивирусные программы в мире?
Обновить:
Кто-нибудь знает, как эта проблема может быть решена на законных основаниях? Кажется, что многие разработчики Delphi имеют ту же проблему. Безрассудные антивирусные компании зарабатывают деньги на нашей спине, показывая множество ложных срабатываний, заставляя своих клиентов думать, что они в безопасности, когда на самом деле опасности не было. Пока мы теряем клиентов - они делают клиентов. Я проинформировал антивирусную компанию о проблеме, но они исправили ее только для этой конкретной версии. В следующий раз, когда я выпускаю обновление, снова появляется ложная тревога. Им просто все равно.
У многих честных разработчиков возникают проблемы из-за неосторожного антивирусного программного обеспечения. См. Также: Как предотвратить ложное срабатывание вирусов на моем программном обеспечении?
Может быть, мы сможем объединиться против таких антивирусных продуктов и заставить их быть более осторожными в отношении ложно-положительных сигналов тревоги, даже чтобы получить некоторую прибыль от продаж, которые мы теряем из-за них. Мы должны подписать какую-то петицию, чтобы они знали, что мы больше не принимаем это. https://docs.google.com/forms/d/1H3_O1z1iEqfh9ZT9u3B0R1tGEj-Hc9o7rAE0LKPr33Y
Обновление 2017
* На прошлой неделе в моей программе коэффициент обнаружения составил около 50% для VirusTotal. Я удалил одну строку кода, и волшебным образом обнаружение упало до 2 из 61 (антивирусы). Удивительно, насколько случайны эти антивирусные продукты.
* Обнаружение НАМНОГО выше, когда программа компилируется в "Режим выпуска" (с оптимизацией компилятора), чем когда она компилируется в "Режим отладки".
* Обнаружение небесных ракет при использовании EurekaLog.
Вывод: в конце дня загрузите свой exe-файл в VirusTotal. Если коэффициент обнаружения внезапно скачет, просмотрите изменения, которые вы сделали в своем коде, и удалите "вредные".
2 ответа
Во-первых, убедитесь, что у вас нет вируса Delphi Win32.Induc, который изменяет SysConst.dcu, чтобы компилируемые вами приложения были заражены.
Используйте #3, чтобы сузить то, что в вашем коде вызывает ложное срабатывание. Вызовы API, которые изменяют память процесса, запускают эвристические сканеры. Даже включение имен некоторых функций API (таких как WriteProcessMemory) приведет к срабатыванию сканера. Внесите изменения в тестовое приложение и отправьте его в №3, пока проблема не сузится. Если вы используете упаковщик, то программное обеспечение AV, вероятно, все равно распакует его, но протестируйте с упаковкой и без нее.
Будет зависеть от # 1.
Virustotal используется разработчиками вирусов для проверки того, что их вирус не обнаружен, поэтому Virustotal отправит любой тестовый файл антивирусным людям для анализа. Раньше была возможность отключить это, но это было удалено несколько лет назад. Это может усугубить проблему, если вы подадите заявку несколько раз, поэтому я рекомендую использовать http://virusscan.jotti.org/ для первоначального тестирования.
Третий вопрос: существует веб-сайт под названием " Всего вирусов", который сканирует файлы с большим количеством антивирусных движков. У них есть API, так что вы можете сделать эту часть вашего процесса сборки.
Также могут помочь некоторые похожие вопросы:
Антивирус ложный положительный в моем исполняемом файле
Исправить антивирусное обнаружение моего программного обеспечения