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

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

Я просто столкнулся с раздражающей проблемой. Внезапно Avira AntiVir начал отмечать один исполняемый файл из моего программного обеспечения как вирус.

Поскольку действие по умолчанию практически любого пользователя - это нажать ОК, и Avira предлагает поместить вирус в карантин, большинство моих пользователей удаляют этот исполняемый файл.

Ну, пусть не будет высокомерным и проверьте, действительно ли я не инфицирован. Я отправил файл в http://www.virustotal.com, а из всего антивируса только Avira помещает его как зараженную. Кроме того, я просмотрел свой компьютер с помощью двух разных антивирусов, и он чист.

Я уже отправил почту своим пользователям, объясняя, что происходит, но это накладные расходы на мою поддержку, которую я действительно не хочу.

ОК, вопрос: есть ли способ избежать такого поведения? Я не могу думать иначе, чем подписывать файлы (не знаю, решит ли он), но давайте посмотрим, есть ли у вас креативная идея.

4b9b3361

Ответ 1

На удивление распространено, что приложения Delphi сообщаются как потенциально опасные для AV-приложений. Это случилось со мной некоторое время назад, используя Delphi 2009, см. http://en.wikipedia.org/wiki/Wikipedia:Reference_desk/Archives/Computing/2010_March_20#Delphi.2FAVG_Issue.

В SO мы также имеем

и многие другие.

Это может быть фактический Induc Virus. Но, скорее всего, это ложный позитив.

Ответ 2

Андреас отвечает отлично; это просто случается с приложениями Delphi.

Код подписи не имеет никакого значения - у меня NOD32 выдавал ложные срабатывания на подписанный код Delphi.

Если бы были какие-либо методы, которые позволили бы избежать ложных срабатываний, авторы вирусов будут использовать их, чтобы избежать обнаружения.

Я нашел, что лучший способ действий, к сожалению, скорее реактивный, чем инициативный. У всех поставщиков AV есть возможность сообщать о ложных срабатываниях, и я обнаружил, что они реагируют на отчеты.

Ответ 3

В качестве решения вы можете:

1 - Убедитесь, что ваш компилятор Delphi не заражен
2 - Проверьте, что ваши источники и библиотеки не закалены (это было MO для Induc Virus)
3 - Проверьте (гарантированный) чистый EXE с помощью AV. Если они сообщают о ложном положительном результате, свяжитесь с ними, чтобы они могли исправить свои тесты.

4 - Если вам нужно распространять до того, как есть возможность исправить AV файлы, подпишите exe, чтобы ваши пользователи могли проверить его на чистоту.

Ответ 4

Существует несколько причин, по которым продукт Anti Virus может запускаться на выпущенном Delphi exe, несколько общих причин:

  • В Delphi написано много вирусов, поэтому ваш exe может иметь некоторые части кода, которые выглядят так же, как существующие вирусы.
  • Таблица импорта вашей программы используется для определения того, что может сделать ваш exe, например, ссылка на функции Credentials Management или Disk Management запускает некоторые AV файлы.

Как было предложено, прежде чем пытаться сканировать свою версию выпуска с помощью онлайн-сервисов, таких как Virustotal или Jotti и всегда сообщайте свои ложные срабатывания поставщикам вместо того, чтобы пытаться помешать ложному срабатыванию. Мой опыт заключается в том, что поставщики AV довольно быстро реагируют на передачу.

Ответ 5

В Free Pascal/Lazarus и bugtracker такие сообщения происходят почти каждый выпуск и/или месяц.

Обычно мы рекомендуем пользователям игнорировать все "общие" или "эвристические" типы сканирования и придерживаться сканирования подписи (как это делают большинство корпоративных вирусов).

Это потому, что это почти всегда эвристические сигналы тревоги, а не конкретные вредоносные программы. Это легко увидеть в том факте, что обнаруженный "вирус/троян" почти всегда относится к "родовому" типу. Обычно virusscanners также являются типичными "домашними" vivusscanners или домашними изданиями общих vivusscanners (Norton был особенно плохим, в настоящее время он в основном представляет собой "дешевые" домашние сканеры меньшего масштаба)

Однако мы общаемся в основном с разработчиками и уже имеем проблемы с получением этого сообщения. Я могу себе представить, что при распространении незнакомых конечных пользователей это настоящее сложное сообщение для общения.

Тем не менее, другого пути нет.

Ответ 6

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

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

Обновление:
Недавно я заметил, что:

  • Количество ложных срабатываний на VirusTotal.com НАМНОГО больше, когда программа компилируется в "Режим выпуска" (с оптимизацией компилятора), чем когда она компилируется в "Режим отладки".
  • Обнаружение небесных ракет при использовании EurekaLog.

Поэтому отправьте заявку в VirusTotal, прежде чем публиковать свою программу!


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