Вы используете устаревший браузер!

Страница может отображаться некорректно.

Антивирусная неправда

Антивирусная неправда

Другие выпуски этой рубрики (45)
  • добавить в избранное
    Добавить в закладки

Миф об «Эйкаре»

Прочитали: 1206 Комментариев: 63 Рейтинг: 66

Интернет не перестает поражать. Иногда думаешь: ну все, меня уже ничем не удивить! И через некоторое время находишь что-то еще более примечательное.

«Касперский» ещё в далёком уже 2013ом году создали тестовый антивирус Eicar. Его предназначение - это просто взять под контроль систему, вывести на экран сообщение и снова отдать власть системе.

Первоисточника мы не знаем, этот текст встречается на многих сайтах. И текст этот, надо сказать, прекрасен:

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

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

  1. EICAR – это, в общем-то, вообще не вирус. Никаких функций саморазмножения, равно как и вредоносного функционала, в нем нет. И естественно, он никакую систему не захватывает. На данный момент это, по сути, текстовая строка, хотя формально – исполняемый файл формата .com (тип компактного исполняемого файла, широко использовавшийся во времена MS-DOS в качестве системных утилит). Под современными 64-битными версиями OS Windows этот файл уже не запускается.

  2. Длина EICAR – менее 100 символов.

    X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*

    Вот это и есть весь Eicar. И, как видно, большая часть его содержимого – текстовая строка "EICAR-STANDARD-ANTIVIRUS-TEST-FILE!", которую он выводит (выводил) при запуске. Но за видимой простотой скрывается интересный код.

    Интереснее сразу писать в машинных кодах. Например, EICAR получает код инструкции INT 21h (21CDh) как разницу между 2B48h ('H+') и 097Bh. В свою очередь 097Bh получается как 214Fh ('O!') xor 2834h ('4('). Итого: INT 21h ≡ 'H+' - ('O!' xor '4(')

    Весь код:

    pop  ax            ; 'X'   ; в стеке лежит двухбайтовое слово, равное 0
                       ; поэтому теперь ax = 0
    xor  ax, 214Fh         ; '5O!' ; ax = 214Fh
    push ax            ; 'P'
    and  ax, 4140h         ; '%@A' ; ax = 0140h
    push ax            ; 'P'
    pop  bx            ; '['   ; bx = 0140h
    xor  al, 5Ch           ; '4\'  ; ax = 011Ch
    push ax            ; 'P'
    pop  dx            ; 'Z'   ; dx = 011Ch
    pop  ax            ; 'X'   ; ax = 214Fh
    xor  ax, 2834h         ; '54(' ; ax = 097Bh
    push ax            ; 'P'
    pop  si            ; '^'   ; si = 097Bh
    sub  word ptr [bx], si ; ')7'  ; патчим loc_1: было 2B48h, стало 21CDh
                       ; теперь по адресу loc_1: инструкция int 21h
    inc  bx            ; 'C'
    inc  bx            ; 'C'   ; bx = 0142h
    sub  word ptr [bx], si ; ')7'  ; патчим следующие два байта после loc_1
                       ; было 2A48h, стало 20CDh
                       ; теперь по адресу loc_1+2 лежит инструкция int 20h
    jge  short loc_1       ; '}$'  ; результат неотрицательный, поэтому будет переход
                       ; пропускаем всё, что между loc_2 и loc_1
    loc_2:
    db 'EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$'
    loc_1:
    db 'H', '+'        ; 'H+'  ; пропатчено на db 0CDh, 21h
                       ; ah = 09h - вызов функции 9 DOS
                       ; строка берётся из DS:DX, конец строки - '$'
                       ; dx = 011Ch, т. е. PSP + 1Ch = loc_2
    db 'H', '*'        ; 'H*'  ; пропатчено на db 0CDh, 20h
                       ; функция завершения программы

    Источник (осторожно, присутствует нецензурная лексика!)

    Это вам не на языках высокого уровня писать!

  3. Правильно писать EICAR или точнее EICAR-Test-File, так как это сокращение от European Institute for Computer Antivirus Research.

  4. Большинство антивирусных продуктов детектируют EICAR, но не все.

    Забавно, что определяют его все антивирусы по-разному – единого названия (как и единого наименования для каждой из конкретных вредоносных программ) не существует.

  5. «Вирус» есть и на сайте Dr.Web.

    #drweb

    Но вообще-то у этого «вируса» есть и собственный официальный сайт, откуда скачать его можно в самых разных вариациях.

    #drweb

    Но все это будет, естественно, один и тот же файл. Разница – в расширениях и в том, упакован он или нет.

  6. С помощью EICAR не проверяют ни качество лечения, ни качество обнаружения вредоносных программ. Он нужен исключительно для проверки работоспособности антивируса. И на самом деле это очень важный тест. Например, когда у клиента перестали обнаруживаться вирусы или «сыплется» жесткий диск. Антивирусная программа установлена и вроде работает, а эффекта нет. В этих условиях EICAR, не являясь вредоносным файлом, позволяет проверить работоспособность продукта. Его главное достоинство – в том, что пользователь, получив на руки EICAR, не сможет ничего испортить или заразить.

  7. Несмотря на свою простоту, EICAR позволяет проверить очень многое. Кликнув по файлу, вы узнаете, работает ли файловый монитор SpIDer Guard. Послав его письмом, проверите, проверяется ли почта модулем SpIDer Mail, а попытавшись его скачать или отправить, выясните, работает ли проверка трафика SpIDer Gate.

  8. Как проверить работу антивируса с помощью EICAR, описано здесь.

  9. А еще EICAR можно использовать для экспериментов – например, так или так.

#миф #тесты_антивирусов

Dr.Web рекомендует

Антивирусные компании не пишут вредоносные программы. Это – уголовно наказуемое деяние, за которое пострадать можно мгновенно, и эффект будет поболее, чем за скачивание секретного троянца с домашнего компьютера. И уж тем более они не создают коллекции вирусов для тестов. Делать им больше нечего!

Получайте Dr.Web-ки за участие в проекте

Каждая активность = 1 Dr.Web-ка

Оцените выпуск

Сделайте репост

Поставьте «Нравится»

Чтобы получать награды надо войти на страницу выпуска через аккаунт на сайте «Доктор Веб» (или создать аккаунт). Аккаунт должен быть связан с вашим аккаунтом в социальной сети. Видео о связывании аккаунта.


Нам важно ваше мнение

10 Dr.Web-ок за комментарий в день выхода выпуска или 1 Dr.Web-ка в любой другой день. Комментарии публикуются автоматически и постмодерируются. Правила комментирования новостей «Доктор Веб».

Чтобы оставить комментарий, нужно зайти через свой аккаунт на сайте «Доктор Веб». Если аккаунта еще нет, его можно создать.

Комментарии пользователей


 
На страницу: