Определить наличие антивируса на машине
|
Anton93
|
Дата: Суббота, 05.10.2013, 16:35 | Сообщение # 1
|
Продвинутый
Зарегистрирован: 06.01.2010
Группа: Модераторы
Сообщений: 320
Статус: Offline
|
Доброго времени суток.
Возникла задача определить наличие установленного антивируса на машине. антивирус может быть любой.
проблема встала в методе определения. подскажите пожалуйста самый короткий и эффективный способ проверки. можно даже без конкретизации какой именно. банальное TRUE если установлен или FALSE если нет.
спасибо 
ICQ: 41896
|
|
|
|
|
oke
|
Дата: Суббота, 05.10.2013, 20:23 | Сообщение # 2
|
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
|
Собери имена процессов или окон и скань их, если есть возвращай тру и тд. Или же ищи в реестре записи ав, и тд. |
|
|
|
|
Anton93
|
Дата: Суббота, 05.10.2013, 21:15 | Сообщение # 3
|
Продвинутый
Зарегистрирован: 06.01.2010
Группа: Модераторы
Сообщений: 320
Статус: Offline
|
oke, с процессами вариант уже пробовал, но он долгий, как и вариант с реестром и требует постоянную актуальную базу.
я же прошу более общий метод. какой-нибудь признак наличия ав чтобы базу с собой не таскать.
ICQ: 41896
|
|
|
|
|
Born
|
Дата: Воскресенье, 06.10.2013, 14:48 | Сообщение # 4
|
Частый гость
Зарегистрирован: 01.10.2012
Группа: Пользователи
Сообщений: 49
Статус: Offline
|
Ищи папки с их ними названиями) if directoryexists ('c:\programfiles\Drweb') then
showmessage('Как же собака тебя обойти'))) эт самый простой варик.
Сообщение отредактировал Born - Воскресенье, 06.10.2013, 14:53
|
|
|
|
|
Anton93
|
Дата: Воскресенье, 06.10.2013, 16:04 | Сообщение # 5
|
Продвинутый
Зарегистрирован: 06.01.2010
Группа: Модераторы
Сообщений: 320
Статус: Offline
|
Born, прочти мой пост выше. твой метод тоже требует наличие базы аверов в теле
ICQ: 41896
|
|
|
|
|
xXxSh@dowxXx
|
Дата: Воскресенье, 06.10.2013, 16:11 | Сообщение # 6
|
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
|
Цитата (Born)
Ищи папки с их ними названиями) if directoryexists ('c:\programfiles\Drweb') then
Имена папок с файлами АВ время от времени так же изменяются, так что этот метод ровно такой же как и с процессами.
Цитата (Anton93)
с процессами вариант уже пробовал, но он долгий, как и вариант с реестром и требует постоянную актуальную базу.
я же прошу более общий метод. какой-нибудь признак наличия ав чтобы базу с собой не таскать
Интересно почему же метод с процессами тебе показался долгим?
Если ты хочешь найти какие то отличительные особенности ОС указывающие на то работает ли какой либо АВ в системе, то как мне кажется тут нужно копать в сторону так называемого "Центра обеспечения безопасности", как многие наверное помнят при установленном АВ винда автоматически адаптирует работу "Центра" под его статусы, и отключает собственный "дефолтный" фаерволл в пользу фаервола АВ.
Да и к тому же в любом случае для того что бы определить что все таки за АВ установлен в системе все равно понадобится база.
Сообщение отредактировал xXxSh@dowxXx - Воскресенье, 06.10.2013, 16:15
|
|
|
|
|
Anton93
|
Дата: Воскресенье, 06.10.2013, 16:45 | Сообщение # 7
|
Продвинутый
Зарегистрирован: 06.01.2010
Группа: Модераторы
Сообщений: 320
Статус: Offline
|
xXxSh@dowxXx, в начале тоже думал о центре безопасности, пока там глушняк, возможно плохо ищу 
да мне в принципе не важно какой ав, я упомянул там сверху. все дело в трудности определения вирутальной машины. я хочу сделать так, что если на машине обнаружен ав, чтобы определенные участки тупо не выполнялись, иначе эмулятор кода все испоганит.
ICQ: 41896
|
|
|
|
|
oke
|
Дата: Воскресенье, 06.10.2013, 21:52 | Сообщение # 8
|
Постоянный
Зарегистрирован: 15.01.2012
Группа: Пользователи
Сообщений: 124
Статус: Offline
|
Попробуй сканировать трей на ав, а насчет базы, она в любом случае нужна будет!
PS. Насчет ав можешь только самые известные добавить. |
|
|
|
|
xXxSh@dowxXx
|
Дата: Воскресенье, 06.10.2013, 23:13 | Сообщение # 9
|
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
|
Цитата (oke)
Попробуй сканировать трей на ав, а насчет базы, она в любом случае нужна будет!
У Anton93 немножко другая идея.
|
|
|
|
|
dolphin
|
Дата: Вторник, 08.10.2013, 08:25 | Сообщение # 10
|
Администратор
Сообщений: 904
Статус: Offline
|
(с) не помню откуда, сам не проверял
После того, как установили антивирус, всегда хочется узнать, а работает ли он?
Сделать это можно с помощью файла Eicar
Eicar — это файл, с помощью которого можно проверить ваш антивирус.
И так, что необходимо сделать.
Для начала необходимо скопировать ниже приведенный код в текстовой файл, и сохранить его с именем EICAR.COM и просканируйте его.
X5O!P%@AP[4\PZX54 (P^) 7CC) 7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
Примерный размер файла будет около 70 байт
Если ваш антивирус работает и правильно настроен , то он обнаружит этой файл как вирус.
PS: Данный файл не является вирусом. После тестирования удалите файл , если это не сделала за вас ваша антивирусная программа.
А вообще информация есть ли на компе какая либо защита хранится в реестре, не знаю где, но ключ там где то есть ведь когда антивируса нет центр уведомлений стремится нам об этом сообщить, значить искать нужно именно там.
Система: Windows 10 x64, Windows XP
Среды программирования: Delphi 7, Delphi 10 Seattle
Я не профессионал, я всего лишь любитель
Я не вредитель, я всего лишь теоретик
|
|
|
|
|
Anton93
|
Дата: Четверг, 10.10.2013, 06:54 | Сообщение # 11
|
Продвинутый
Зарегистрирован: 06.01.2010
Группа: Модераторы
Сообщений: 320
Статус: Offline
|
dolphin, метод рабочий, ав орет, однако он теперь эвристика проявляет интерес к файлу, создающему его, так что отпадает
ICQ: 41896
|
|
|
|
|
Hargen
|
Дата: Вторник, 22.10.2013, 12:31 | Сообщение # 12
|
Участник
Зарегистрирован: 08.05.2013
Группа: Пользователи
Сообщений: 66
Статус: Offline
|
Есть такая идея - много раз вызывать процедуру перехватываемую проактивкой и и сравнивать с нормальным
Главное - не изобретать велосипед
|
|
|
|
|
xXxSh@dowxXx
|
Дата: Вторник, 22.10.2013, 19:51 | Сообщение # 13
|
Авторитетный
Зарегистрирован: 22.01.2012
Группа: Модераторы
Сообщений: 702
Статус: Offline
|
Цитата Hargen ( )
Есть такая идея - много раз вызывать процедуру перехватываемую проактивкой и и сравнивать с нормальным
как знать, опять же быть может у разных аверов проактивка будет реагировать по разному.
|
|
|
|
|
Hargen
|
Дата: Пятница, 25.10.2013, 13:13 | Сообщение # 14
|
Участник
Зарегистрирован: 08.05.2013
Группа: Пользователи
Сообщений: 66
Статус: Offline
|
Цитата xXxSh@dowxXx ( )
проактивка будет реагировать по разному.
Мда опять все на базе данных об аверах завязано
Главное - не изобретать велосипед
|
|
|
|
|
Stertor
|
Дата: Четверг, 14.11.2013, 18:16 | Сообщение # 15
|
Группа: Удаленные
|
Гарантированный способ - с помощью WMI.
Set objSWbemServicesEx = GetObject("WinMgmts:{impersonationLevel=impersonate}!\\.\root\SecurityCenter")
Set collSWbemObjectSet_AntiVirusProduct = objSWbemServicesEx.ExecQuery("SELECT * From AntiVirusProduct") |
|
|
|
|