
                   АНТИВИРУСНЫЙ БАРЬЕР - 2


     В этой небольшой заметке мне бы хотелось еще раз обратиться
к другой небольшой заметке, которая была предложена вниманию чи-
тателей "Софтпанорамы" несколько месяцев  тому назад - в ней шла
речь о программе-защитнике системных областей  жесткого диска. С
тех пор у автора упомянутой программы  возникли некоторые сомне-
ния по поводу  корректности ее работы,  и эти сомнения были под-
креплены  несколькими  письмами от коллег-программистов, которые
в мягкой и конкретной форме указали  на  обнаруженные проколы. В
частности, существенные замечания высказали г.г. Рабец и Лупиль-
цев,  которых мне  хотелось бы поблагодарить за это.  Им  и всем
тем, кто прочтет эти строки,  предлагается  переработанная и до-
полненная версия "Барьера", а также  обещанная ранее программка-
нейтрализатор, которая - предупреждаю - не будет работать с пер-
вой версией ( я был бы рад, если бы о ней поскорее забыли ).
     Несколько слов о том,  что же появилось нового.  Во-первых,
несколько гибче решен вопрос перехвата обращений к диску,  в ре-
зультате чего работоспособность "Барьера"  стала менее зависящей
от версии ДОС (а именно с этой  проблемой столкнулся г-н Лупиль-
цев).  Во-вторых, теперь "Барьер" состоит из двух фактически не-
зависимых частей : первая по-прежнему оберегает винчестер от не-
прошенных гостей, а вторая - новая - является простым, но эффек-
тивным ревизором оперативной памяти.  Принцип его действия осно-
ван на том, что в обычных условиях вектора таких прерываний  как
Int 08h, Int 13h, Int 21h  должны указывать на адрес,  принадле-
жащий одному из корректно распределенных  блоков памяти.  Если в
какой-нибудь момент это оказывается не так,  то явно с распреде-
лением памяти что-то не то, и нужно выяснять, из-за чего так по-
лучилось.  Так вот, факт такого несоответствия  и позволяет выя-
вить вторая часть предлагаемой версии "Барьера".  Процесс скани-
рования оперативной памяти производится каждый раз,  когда любая
программа завершает свое выполнение, и, если выясняется, что хо-
тя бы один из поднадзорных векторов  указывает на подозрительный
участок памяти, "Барьер"  оповещает Вас сигналом, похожим на си-
рену, после чего - заметьте! - проверку отключает, чтобы в даль-
нейшем Вас не утомлять.  Не поленитесь, запустите AidsTest,  а в
случае  отсутствия  сообщений о вирусах  все равно  постарайтесь
найти причину происшедшего.  До очередной  перезагрузки "Барьер"
уже не будет сканировать память,  поэтому  Вы можете  воспользо-
ваться простенькой программой  Mem_Scan, которая аналогичным об-
разом тестирует память.
     Если Вы не хотите, чтобы "Барьер" проверял память, Вы може-
те в файле Config.Sys указать опцию /M , в результате чего  опи-
санная вторая часть "Барьера"  загружаться в  оперативную память
не будет.  Однако,  я все-таки возьму на себя дерзость посовето-
вать Вам использовать "Барьер" на полную мощность - пару раз мне
удавалось обнаружить вирусы,  не отлавливаемые имевшейся  на тот
момент версией AidsTest'a.  Честно говоря,  при  подготовке этой
статьи я боролся с искушением предложить  Вам запустить одну за-
раженную программу (AidsTest v.410 от 3.11.92  ничего не обнару-
живает) c загруженным "Барьером", но побоялся быть расстрелянным
за распространение вирусов.
     Программа-нейтрализатор (Unbarr.Com)  работает в режиме пе-
реключателя : после одного запуска  "Барьер"  отключается, после
второго - включается, и так далее.

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

                           С уважением  Ивинских В.Р.

----------------------------------------------------------------

  P.S.  Опять же, это было написано  давненько и предназначалось
для "Софтпанорамы", даю как есть.
                                         13.05.1994,  ИВР.


     Fido: 2:5021/4.2      Voice/Fax: (08222) 2-99-58

----------------------------------------------------------------