Подтвердить что ты не робот

Как предотвратить ложноположительную вирусную сигнализацию на моем программном обеспечении?

Possible Duplicate:
Antivirus False positive in my executable

До сих пор у меня было более 15 ложных вирусов для моих программ. Большинство из них были из Касперского, который ВСЕГДА сообщает об одном и том же вирусе: Trojan-GameThief.Win32.Lmir.pcd. Есть 3 вопроса:

  1. Почему это появляется?
  2. Как это предотвратить?
  3. Как это обнаружить?

Что касается первого вопроса, поскольку он всегда обнаруживает один и тот же вирус, я полагаю, это потому, что одна из моих программ используется во всех моих программах. Но какой именно, я не знаю. Что касается второго вопроса, я подумал о том, чтобы немного изменить программу и перекомпилировать ее, чтобы изменить код, чтобы антивирус больше не распознал ее и не выпустил новую версию. Третий вопрос - самый сложный. Как проверить ВСЕ мои программы на ВСЕ антивирусные программы в мире?


Обновление:
Кто-нибудь знает, как эта проблема может быть решена на законных основаниях? Кажется, что многие разработчики Delphi имеют ту же проблему. Безрассудные антивирусные компании зарабатывают деньги на нашей спине, показывая множество ложных срабатываний, заставляя своих клиентов думать, что они в безопасности, когда на самом деле опасности не было. Пока мы теряем клиентов - они делают клиентов. Я проинформировал антивирусную компанию о проблеме, но они исправили ее только для этой конкретной версии. В следующий раз, когда я выпускаю обновление, снова появляется ложная тревога. Им просто все равно.

У многих честных разработчиков возникают проблемы из-за неосторожного антивирусного программного обеспечения. См. также: Как предотвратить ложную срабатывание вируса на моем программном обеспечении?

Может быть, мы сможем объединиться против таких антивирусных продуктов и заставить их быть более осторожными в отношении ложно-положительных сигналов тревоги, даже чтобы получить некоторую прибыль от продаж, которые мы теряем из-за них. Мы должны подписать петицию, чтобы сообщить им, что мы больше не принимаем это.

Обновление 2017 года
 * На прошлой неделе у моей программы коэффициент обнаружения был близок к 50% на VirusTotal. Я удалил одну строку кода, и волшебным образом обнаружение упало до 2 из 61 (антивирусы). Удивительно, насколько случайны эти антивирусные продукты.
 * Обнаружение НАМНОГО выше, когда программа компилируется в "Режим выпуска" (с оптимизацией компилятора), чем когда она компилируется в "Режим отладки".
 * Обнаружение небесных ракет при использовании EurekaLog.

Обновление 2019
Это почти 9 лет спустя и не намного улучшилось.
К сожалению, InnoSetup также не обошли стороной. Я создал фиктивный установщик с помощью InnoSetup и загрузил его в VirusTotal. 5 из 52 программ сообщили о ложном срабатывании!

Вывод:

  • В конце дня загрузите свой exe файл в VirusTotal. Если коэффициент обнаружения внезапно скачет, просмотрите изменения, которые вы сделали в своем коде, и удалите "вредные".
  • Используйте WinRar 3 в качестве установщика. Он поднимает меньше флагов, чем WinRar 5 или InnoSetup.
4b9b3361

Ответ 1

Во-первых, убедитесь, что у вас нет вируса Win32.Induc delphi, который изменяет SysConst.dcu, так что файлы, которые вы компилируете, будут заражены.

  • Используйте # 3, чтобы сузить то, что в коде вызывает ложное срабатывание. API-вызовы, которые изменяют память процесса, будут запускать эвристические сканеры. Даже включая имена некоторых функций API (таких как WriteProcessMemory), будет запускаться сканер. Внесите изменения в тестовое приложение и отправьте на # 3, пока не решите проблему. Если вы используете упаковщик, тогда программное обеспечение AV, вероятно, все равно распакует его, но с упаковкой и без упаковки.

  • Будет зависеть от # 1.

  • Virustotal используется разработчиками вирусов для проверки того, что их вирус не обнаружен, поэтому Virustotal отправит любой тестовый файл антивирусным людям для анализа. Раньше был вариант отключить это, но он был удален несколько лет назад. Это может сделать проблему хуже для вас, если вы отправляете заявку несколько раз, поэтому я бы рекомендовал использовать http://virusscan.jotti.org/ для вашего первоначального тестирования.

Ответ 2

Третий вопрос: существует веб-сайт под названием Всего вирусов, который сканирует файлы с большим количеством антивирусных движков. У них есть API, так что вы можете сделать эту часть вашего процесса сборки.

также могут помочь некоторые похожие вопросы:

Антивирус ложно-положительный в моем исполняемом файле

Вирус в Delphi 7

fooobar.com/info/107226/...  (Снимок удаленного вопроса)

Случайно создал вирус?