                                       А.В.Сесса (MasterSoft)

         ПРОГРАММА ВАКЦИНИРОВАНИЯ ЗАГРУЗЧИКОВ "ВИТАМИН-Б"
__________________________________________________________________________

     Название программы - VITAMINB.EXE,
     Версия 1.6 ( Август 1991г.)

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

     Назначение программы - замена имеющегося загрузчика на
вакцинированный загрузчик, предотвращающий работу бутовых
вирусов.

     Язык программирования - ассемблер

     Вызов - VITAMINB без параметров. Программа запрашивает имя
диска, подлежащего вакцинированию.

     Ограничения и противопоказания:

    - при вакцинировании операционных систем версий 3.40 и выше
системный файл IBMBIO.COM (IO.SYS, DRBIOS.COM) должен размещаться в
самом начале диска (так, как это принято в предыдущих версиях ДОС);

    - вакцинирование жестких дисков IBM-несовместимых ПЭВМ (например,
"Robotron-1910") невозможно, о чем выдается диагностическое сообщение;

    - возможно зависание некоторых "неполноценных" ПЭВМ (в частности
"Amstrad PC 1640", "Искра 1030.11" и первых версий "Нейрона" с ROM-
BIOS версии 3.21) в момент загрузки с зараженной вакцинированной
дискеты, при этом вирус с дискеты не удаляется, но пользователь в
большинстве случаев все же успеет получить сообщение о наличии вируса;

    - загрузчик ВИТАМИН-Б непереносим, поэтому если Ваш системный
диск вакцинирован и Вы предпочитаете форматировать дискеты
нестандартной программой форматирования (SF, MAXI и т.п.),
то следует использовать встроенный (internal) вариант загрузчика и
обработать вновь отформатированную дискету ВИТАМИНОМ-Б.

     Что делает собственно VITAMINB.EXE:

     При инсталляции вакцины анализируется информация в существующем
загрузчике. При обнаружении некорректного загрузчика выводится
предупреждающее сообщение (рекомендуется проверить неопознанный
загрузчик на возможное наличие вируса). Полученые сведения вместе
с адресами обработчиков некоторых прерываний сохраняются в новом
вакцинированном загрузчике. При вакцинировании жесткого диска
кроме загрузчика анализируется содержимое нулевой дорожки, и при
возможности внедрить вакцину в MBR VITAMINB просит пользователя
подтвердить необходимость внесения изменений в эту область диска.
     Программа общается с пользователем сразу на двух языках -
альтернативном русском и английском (excuse me my bad English),
причем последний использован не столько для зарубежных потреби-
телей этой программы сколько для не имеющих альтернативного
знакогенератора отечественных.

     Взаимодействие вакцины с вирусом:

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

              Virus sterilized. Cure BOOT?

или MBR-сектора жесткого диска:

              Virus sterilized. Cure MBR?

     При желании провести исследование вируса пользователь может
отказаться от удаления вируса и продолжить загрузку, нажав клавишу
[n]. В этом случае и в памяти и на диске останутся безобидные копии
"стерилизованного" вируса. При загрузке с зараженной вакцинированной
дискеты на машине с жестким диском после нейтрализации вируса в памяти
и отказе удаления его из загрузчика блокируется доступ к "винчестеру".
Для возобновления возможности работы с жестким диском следует загрузиться
с жесткого диска или здоровой дискеты.
     Аналогично работает вакцинированный MBR.
     Традиционный путь переноса бутовых вирусов - загрузка с рабочей
дискеты, "забытой" в дисководе А: - будет блокирован, если все ваши
дискеты будут предварительно вакцинированы "ВИТАМИНОМ-Б".

     Выводимые на экран адреса захваченных вирусом прерываний
можно использовать для идентификации вирусов:

Int08-ХХХ0:0887 - LIBERTY (кроме указанных векторов этот файлово-бутовый
Int17-ХХХ0:0BF2   вирус перехватывает Int10-XXX0:0B2C и Int14-XXX0:0B7A;
Int1C-ХХХ0:0A44   ВИТАМИН-Б эти вектора не исправляет, но и с ними
Int13-ХХХ0:07EF   LIBERTY оказывается надежно стерилизованным)

Int08-ХХХ0:01CE - JOSHI
Int09-ХХХ0:010A
Int13-ХХХ0:04FA

Int08-ХХХ0:027B - DISK KILLER
Int13-ХХХ0:028F

Int09-ХХХ0:04D9 - DEN ZUK
Int13-ХХХ0:0526

Int09-ХХХ0:035D * FORM (Int09 перехватывает только 18 числа
Int13-ХХХ0:0346 	каждого месяца!)

Int1C-ХХХ0:051A * KEYDROP (Int1C перехватывает только при
Int13-ХХХ0:0592 	теплой перезагрузке!)

Int13-ХХХ0:0015 * STONED (Marijuana) и его многочисленные переделки

Int13-ХХХ0:001F * BLOODY

Int13-ХХХ0:0095 - PRINT SCREEN (Abs-1)

Int13-ХХХ0:0276 - BRAIN/ASHAR

Int13-ХХХ0:0346 * FORM (см. выше)

Int13-XXX0:03A0 - FILL

Int1С-ХХХ0:03A8 - FLIP (файлово-бутовый вирус при загрузке заводит
                  еще и собственное прерывание Int9F-XXX0:04F8;
                  для нейтрализации вируса при загрузке ДОС
                  достаточно исправить вектор Int1C)

Int13-ХХХ0:04B0 - STARSHIP (файлово-бутовый)

Int13-ХХХ0:0592 * KEYDROP (см. выше)

Int13-ХХХ0:7CD0 - BALL (Italian)
	        - TYPO-boot

Int13-ХХХ0:7D38 * LOVECHILD b3

здесь ХХХ0 - обозначает сегмент вируса, который может различаться
на разных машинах в зависимости от объема доступной ДОСу памяти.
Звездочкой помечены вирусы инфицирующие жесткий диск в фазе своей
инсталляции, то есть до запуска вакцинированного загрузчика - для
защиты от этих вирусов желательно вакцинировать не только дискеты,
но и "винчестер".

     Некоторые неприятные ситуации после вакцинирования:

    - если Вы не обратили внимание на противопоказания или
предупреждения во время запуска программы VITAMINB, то скорее
всего после вакцинирования Ваша система зависнет при первой же
загрузке. В этом случае Вам уже обязательно придется загрузиться
с дискеты и исправить загрузчик, выполнив команду SYS;

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

     Отличия новой версии от предыдущих:

Версия 1.6:
    - появилась спустя 4 (четыре!) месяца после предыдущей версии
(до этого ВИТАМИН-Б обновлялся ежемесячно) всвязи с обнаружением ошибки,
не позволявшей вакцинировать разделы жесткого диска, смещенные более
чем на 32 Мб от начала диска;
    - внесены два изменения в загрузчик - первое вернет возможность
загрузки с дискеты формата 720 Кб, там где это поддерживается BIOS'ом,
а второе будет использовано в ВИТАМИНЕ-Б 2.0, который ожидается к
концу октября;
    - преодолена проблема вакцинирования жеского диска для ПК типа
"Amstrad 1640".

Версия 1.5:
    - снова изменен способ определения обработчика Int13 в ROM-BIOS
и теперь ВИТАМИН-Б способен работать в системах с HighRAM, например
с DOS версии 5.0;
    - почти снято ограничение на вакцинирование MBR при отсутствии
свободных секторов между MBR-сектором и началом первого раздела диска.

Версия 1.4:
    - измены загрузчик и MBR, что позволило отлавливать вирусы, не
изменяющие вектор Int13;
    - при согласии пользователя на удаление из Boot-сектора
обнаруженного вируса после восстановления загрузчика выполняется
"холодная" перезагрузка.

Версия 1.3x:
    - исправлен алгоритм вакцинирования разделов объемом более
32 Мбайт и некоторые ошибки предыдущих версий.

Версия 1.2:
    - изменен способ определения обработчика тринадцатого прерывания
в ROM BIOS, что позволило снять ограничения на версии ДОС, с которыми
может работать VITAMINB;
    - за счет некоторой оптимизации программы загрузчика появилась
возможность при загрузке контролировать еще два вектора прерываний.

Версия 1.1х:
    - вслед за MS DOS 4.01 ВИТАМИН-Б преодолел 32-мегабайтный барьер
для загружаемых дисков (имеется ввиду как размер раздела, так и его
смещение относительно начала жесткого диска);
    - для полной совместимости с MS DOS 4.01 создаваемый программой
ВИТАМИН-Б расширеный MBR теперь позволяет иметь на жестком диске
до 8-ми(!) разделов и загружаться со второго жесткого диска.

Версия 1.0 - первая распространявшаяся версия.


     Права распространения программы:

     VITAMINB.EXE версии 1.6 может свободно распространяться в
некоммерческих целях (желательно при этом не терять ее описание).
Если же программа понравится Вам настолько, что Вы рискнете стать
зарегистрированным пользователем (это стоит 10 рублей), то Вы
будете со временем вознаграждены получением новой версии программы
(стоимость дискеты и пересылки оплачивается наложеным платежом).
В этом случае Вы можете также расчитывать на получение консультаций.
Автор будет очень рад, если VITAMIN-B сможет поймать новый вирус
(не упомянутый в этом описании) - в этом случае Вы можете переслать
дискету с вирусом и бесплатно стать зарегистрированным пользователем.

Взносы, вирусы и замечания направлять по адресу:

           320130 Днепропетровск
           пер.Фестивальный 12, кв.54
           Сессе Александру Владимировичу
