Сегодня исполнилось 27 лет советскому антивирусу Aidstest. Легендарная программа была написана 17 ноября 1988 года Дмитрием Николаевичем Лозинским во время его работы в Главном вычислительном центре Госплана СССР, где был обнаружен вирус Vienna.
Про компьютерные вирусы к тому времени советские программисты уже слышали, но не сталкивались с ними на практике. Сам термин «вирус» был ещё новым и обсуждали его на уровне теоретически возможных алгоритмов или единичных курьёзов. К примеру, когда в 1987 году самораспространяющаяся программа братьев Алви вышла из-под контроля, её эффект назвали эпидемией компьютерного вируса Brain. Вместо того, чтобы наказать местных софтверных пиратов в Пакистане, она заразила свыше 18 тысяч компьютеров по всему миру.
На следующий год в Австрии появились сообщения о нерезидентном вирусе, заражающем файлы с расширением .com. Он был написан на Ассемблере, поэтому весь его код умещался в 648 байт. Несмотря на изолированность компьютеров (Релком и Фидонет появились в СССР только в 1990 году), Vienna быстро распространялся через заражённые дискеты. Дмитрию Лозинскому предстояло найти и обезвредить вирус, заразивший ГВЦ.
На счастье, обнаружить его присутствие в системе удавалось даже невооружённым глазом. Внимание на себя обращала необычная метка, которую он ставил на заражённые файлы. Время их создания менялось на невозможное: xx минут, xx часов и 62 секунды.
Вирус Vienna стал хорошим стимулом и доказательством реальности угрозы нового типа. Он был удалён, но мог вернуться вновь, причём – в другом обличии. Его исходный код опубликовал в своей книге «Computer Viruses: A High Tech Desease» один из первых вирусных аналитиков Ральф Бургер, а затем это же сделал автор книги «Библия Хакера 2» Бернд Роберт Фикс и другие.
Модификации Vienna посыпались как из рога изобилия. Некоторые из них вполне могли стать основой самостоятельных штаммов. На конференциях появились и первые сообщения о принципиально новых вирусах. К примеру, Suriv-2 умел заражать не только .com, но и .exe файлы.
Для защиты от вирусов требовалось устранять очаги инфекции – регулярно запускать Aidstest на разных компьютерах и развивать утилиту. Со временем она научилась определять другие вирусы, из-за чего её прозвали полифагом. Под влиянием Aidstest с конца восьмидесятых – начала девяностых свои варианты полифагов пишут Олег Котик, Игорь Сысоев, Игорь Данилов и другие отечественные разработчики.
Количество вирусов быстро росло, и бороться с ними программистам-одиночкам становилось всё труднее, как и поддерживать свои творения бесплатно. Первого октября 1990 года Дмитрий Лозинский передал права на продажу Aidstest компании «ДиалогHаука». Официально версия № 44 стоила 3 рубля, но реально утилита распространялась в России и за рубежом (под названием V-Hunter) по разным каналам – в том числе и по-прежнему бесплатно.
На первой Всесоюзной конференции «Методы и средства защиты от компьютерных вирусов в MS-DOS» программа Aidstest была признана самой популярной антивирусной программой в СССР.
Через три года после выхода первой версии Aidstest был установлен рекорд скорости выпуска обновлений – два раза в неделю. Спустя ещё год появилась услуга «срочный заказ». Алгоритм для удаления нового вируса по обращению клиента добавлялся в течение суток. Это был очень серьёзный шаг, поскольку такого понятия как «вирусные базы» на тот момент ещё не было. Все процедуры поиска и лечения для каждого вируса добавлялись вручную в тело самой программы.
Дмитрий Лозинский отмечает, что по-настоящему интересных вирусов в то время было очень мало. Например, в начале 1994 года пользователи из Великобритании сообщили о полиморфном вирусе SMEG.Pathogen, который не могли полностью вычистить антивирусы.
В сентябре того же года началась эпидемия файлово-загрузочного вируса «3APA3A», внедрявшегося в BS активного раздела диска и создававшего заражённую копию системного файла IO.SYS. Удалить его стандартными средствами было невозможно даже с загрузочной дискеты.
Основная же масса вирусов писалась по давно известным шаблонам, но даже в них авторы умудрялись делать грубые ошибки. Добавлять их в базы для Лозинского и его коллег было рутиной, а не битвой интеллектов. «Мне в жизни чаще удавалось свалить скучную часть работы на других. Зато борьба с вирусами навалила на меня огромный объем самой нудной работы», – сетовал он.
Продолжая выпускать новые версии Aidstest, Дмитрий Лозинский стал председателем совета директоров «ДиалогНаука». На одной из конференций он познакомился с Игорем Анатольевичем Даниловым и помог ему ускорить развитие перспективной программы Doctor Web.
В четвёртой версии «полифага нового поколения» они совместно реализовали внешнюю базу с описанием известных вирусов, а затем разработали частично автоматизированный метод добавления новых сигнатур, который повысил скорость реагирования.
С появлением в 1992 году полиморфных вирусов актуальность Aidstest стала падать. Вскоре он стал распространяться как бесплатная утилита в составе антивирусного комплекта компании «ДиалогHаука». В нём также находился полифаг Doctor Web Игоря Данилова и дисковый ревизор ADInf Дмитрия Юрьевича Мостового, чья реклама была встроена в Aidstest.
Благодаря резидентному модулю DrWeb мог препятствовать заражению, чем принципиально отличался от сканера Aidstest, определявшего и лечившего уже инфицированные файлы. Также у него был мощный эвристический эмулятор, который как раз помогал в борьбе с полиморфными вирусами. Программы из набора от «ДиалогНаука» стали прообразом трёхкомпонентной системы защиты: сканера с эмулятором, модуля резидентного мониторинга и дискового ревизора.
Вместе они справлялись с большинством существовавших в диком виде вирусов и даже противостояли неизвестным модификациям, обнаруживая характерные изменения. Однако успешность определения вируса часто зависела от непрерывности контроля за состоянием компьютера и скорости обновления баз. При получении управления резидентный полиморфный вирус Alias.6943 блокировал запуск Aidstest и Dr.Web, а Asch.1121 устанавливал таймер на дисковое прерывание INT 13h и препятствовал работе ADInf.
Последняя версия программы Aidstest вышла 27 сентября 1997 года. Её номер 1723 отражает количество детектируемых вирусов. Сейчас она сама определяется как вирус пятью сканерами, и это ложноположительное срабатывание по какой-то причине остаётся без исправления уже не первый год.
C 2004 года Дмитрий Лозинский перешёл в компанию «Доктор Веб», где занял пост заместителя генерального директора. Он перестал заниматься изучением кода вирусов, оставшись в роли наставника для молодых аналитиков.