Инструменты пользователя

Инструменты сайта


msx:antivirus:mastersoft

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
msx:antivirus:mastersoft [2020-12-21 22:48]
GreyWolf [Введение]
msx:antivirus:mastersoft [2022-08-05 21:49] (текущий)
GreyWolf
Строка 34: Строка 34:
 Начнем с того, что вирусы делятся на два типа: Начнем с того, что вирусы делятся на два типа:
   - Файловые вирусы   - Файловые вирусы
-  - Вирусы загрузочного сектора (BOOT﹣вирусы)+  - Вирусы загрузочного сектора (Boot﹣вирусы)
  
 Отличительной особенностью файловых вирусов является то, что они размножаются в файловой среде, т.е. вирус поражает файл путем подклейки к нему. Файловые вирусы делятся еще на два подтипа:​ Отличительной особенностью файловых вирусов является то, что они размножаются в файловой среде, т.е. вирус поражает файл путем подклейки к нему. Файловые вирусы делятся еще на два подтипа:​
Строка 66: Строка 66:
 ==== 2.2.1. Резидентные вирусы ==== ==== 2.2.1. Резидентные вирусы ====
  
-Конкретный пример резидентного вируса — это DOS﹣вирус,​ поражающий файл SXDOS.SYS. После загрузки и перед запуском системы он, подобно вирусам загрузочного сектора резервирует себе область памяти,​ куда себя и записывает. Затем уже запускается система и после её инициализации вирус изменяет её так, чтобы он мог проконтролировать все вызовы BDOS. В повседневной работе Вам наверняка часто приходилось копировать и удалять файлы. Каждая такая операция связана с вызовом соответствующих подпрограмм в базовой дисковой операционной системе (BDOS). Так как вирус установил контроль за этими вызовами,​ то опознав,​ скажем операцию создания файла, он ищет на диске файл MSXDOS.SYS и заражает его.+Конкретный пример резидентного вируса — это DOS﹣вирус,​ поражающий файл ​''​SXDOS.SYS''​. После загрузки и перед запуском системы он, подобно вирусам загрузочного сектора резервирует себе область памяти,​ куда себя и записывает. Затем уже запускается система и после её инициализации вирус изменяет её так, чтобы он мог проконтролировать все вызовы BDOS. В повседневной работе Вам наверняка часто приходилось копировать и удалять файлы. Каждая такая операция связана с вызовом соответствующих подпрограмм в базовой дисковой операционной системе (BDOS). Так как вирус установил контроль за этими вызовами,​ то опознав,​ скажем операцию создания файла, он ищет на диске файл ​''​MSXDOS.SYS'' ​и заражает его.
 Подобная схема может быть использована любыми вирусами,​ она не накладывает ограничений на количество и качество внешних проявлений вирусов. Например,​ вышеописанный вирус при вызове подпрограммы удаления файлов (а файлы, как известно,​ могут удаляться по маске, для этого используются символы "​*"​ и "?"​) уменьшает внутренний счетчик на единицу и при определенном значении счетчика заменяет части или все имя удаляемого файла на "?",​ что вызывает удаление не только требуемых файлов,​ но и некоторых других (по маске). Это особенно обидно,​ когда уничтожается купленная Вами программа или документация. Подобная схема может быть использована любыми вирусами,​ она не накладывает ограничений на количество и качество внешних проявлений вирусов. Например,​ вышеописанный вирус при вызове подпрограммы удаления файлов (а файлы, как известно,​ могут удаляться по маске, для этого используются символы "​*"​ и "?"​) уменьшает внутренний счетчик на единицу и при определенном значении счетчика заменяет части или все имя удаляемого файла на "?",​ что вызывает удаление не только требуемых файлов,​ но и некоторых других (по маске). Это особенно обидно,​ когда уничтожается купленная Вами программа или документация.
  
Строка 76: Строка 76:
  
 Заражение файла обычно происходит одним из двух путей: Заражение файла обычно происходит одним из двух путей:
- +  * Первый:​ помещение в первые три байта (обыкновенно,​ но у вируса JUST это не так) перехода на рабочую часть вируса. После работы вируса эти байты восстанавливаются для нормальной работы программы﹣носителя. 
-Первый:​ помещение в первые три байта (обыкновенно,​ но у вируса JUST это не так) перехода на рабочую часть вируса. После работы вируса эти байты восстанавливаются для нормальной работы программы﹣носителя. +  ​* ​Второй:​ помещение вируса целиком перед самой программой. После работы вируса программа передвигается в памяти на свои адреса.
- +
-Второй:​ помещение вируса целиком перед самой программой. После работы вируса программа передвигается в памяти на свои адреса.+
  
  ​Цель основной (рабочей) части нерезидентных вирусов состоит в том, чтобы произвести за один запуск хотя бы одно заражение файла. Способ заражения — это уже детали конкретной реализации вируса,​ но обычно это приводит к заметному увеличению интервала времени между окончанием загрузки программы и началом её видимой работы. Этот способ накладывает еще меньше ограничений на размер кода вируса,​ чем у резидентных вирусов,​ поэтому по желанию разработчиков вредные эффекты могут быть достаточно изощренны. При высоком мастерстве разработчика последствия инфекции могут быть совершенно непредсказуемыми.  ​Цель основной (рабочей) части нерезидентных вирусов состоит в том, чтобы произвести за один запуск хотя бы одно заражение файла. Способ заражения — это уже детали конкретной реализации вируса,​ но обычно это приводит к заметному увеличению интервала времени между окончанием загрузки программы и началом её видимой работы. Этот способ накладывает еще меньше ограничений на размер кода вируса,​ чем у резидентных вирусов,​ поэтому по желанию разработчиков вредные эффекты могут быть достаточно изощренны. При высоком мастерстве разработчика последствия инфекции могут быть совершенно непредсказуемыми.
Строка 86: Строка 84:
 ====== 3. Общий обзор некоторых АнтиВирусов ====== ====== 3. Общий обзор некоторых АнтиВирусов ======
  
-Сегодня уже существует определенный набор антивирусных программ. Они делятся на два класса:​ Детекторы вирусов и Фаги. Детекторы вирусов — это программы,​ которые лишь обнаруживают вирусы. Фаги — это программы,​ способные не только обнаружить,​ но и удалить вирусы. Рассмотрим несколько ​ антивирусных программ разных авторов+Сегодня уже существует определенный набор антивирусных программ. Они делятся на два класса:​ Детекторы вирусов и Фаги. Детекторы вирусов — это программы,​ которые лишь обнаруживают вирусы. Фаги — это программы,​ способные не только обнаружить,​ но и удалить вирусы. Рассмотрим несколько ​ антивирусных программ разных авторов: 
- +  ​* ​Virus Control Program version 2.0 (C) 1989 by I.Vasilyev \\ Это программа проверяет загрузочный сектор на зараженность и в случае вируса по желанию пользователя записывает стандартный либо скоростной загрузочный сектор. 
-Virus Control Program version 2.0 (C) 1989 by I.Vasilyev +  ​* ​Speed test (C) by I.Vasilyev \\ Проверяет загрузочный сектор аналогично вышеописанной программе,​ некоторые ячейки памяти и тестируются файлы на FC﹣инфекцию. Вирус из файла не удаляет. 
-\\ Это программа проверяет загрузочный сектор на зараженность и в случае вируса по желанию пользователя записывает стандартный либо скоростной загрузочный сектор. +  ​* ​Virus Killer version 1.0 \\ Проверяет загрузочный сектор на два вируса,​ при обнаружении записывает стандартный загрузочный сектор. 
- +  ​* ​Virus Detector version 1.0 (C) 1989 by Vlad \\ Проверяет файлы на FC﹣инфекцию. При обнаружении вируса предлагает стереть этот файл с диска. Тест некорректен. 
-Speed test (C) by I.Vasilyev +  ​* ​[[antivirus#​VD.COM|Virus Detector versions 1.1, 1.2, 2.1+ (C) 1989, 1990 by MasterSoft]] \\ Проверяет загрузочный сектор на любой вирус загрузочного сектора. Проверяет некоторые ячейки памяти. Файлы проверяются на DOS﹣вирус,​ KANA﹣вирус и FC﹣инфекцию. Вирусы не вычищает. 
-\\ Проверяет загрузочный сектор аналогично вышеописанной программе,​ некоторые ячейки памяти и тестируются файлы на FC﹣инфекцию. Вирус из файла не удаляет. +  ​* ​Virus Detector (C) 1990 by OmegaSoft \\ Тестирует ​''​MSXDOS.SYS'' ​на DOS﹣вирус. Вычищает его из файла. 
- +  ​* ​AntiVirus version 2.6 (C) Vesta Soft, PowerSoft \\ Проверяет загрузочный сектор на вирус. При нестандартном загрузочном секторе записывает фирменный загрузочный сектор. Тестирует ловушки на любое использование,​ кроме межслотовых вызовов в ПЗУ. При обнаружении выдаёт нестандартное имя ловушки и первый байт команды. Обнаруживает FC﹣инфекцию,​ KANA﹣ и MOSCOW﹣вирусы. В версии Vesta Soft авторы пытались удалять вирусы KANA и MOSCOW, но, к сожалению,​ АнтиВирус зависал,​ а восстанавливаемая программа портилась. 
-Virus Killer version 1.0 +  ​* ​ANTI-virus Utility version 2.0 (C) 1990 by I.Vasilyev \\ Оконный АнтиВирус. Проверяет загрузочный сектор,​ при нестандартном секторе записывает стандартный. Проверяет некоторые ячейки памяти. Достаточно корректно проверяет FC﹣инфекцию и удаляет её из файлов.
-\\ Проверяет загрузочный сектор на два вируса,​ при обнаружении записывает стандартный загрузочный сектор. +
- +
-Virus Detector version 1.0 (C) 1989 by Vlad +
-\\ Проверяет файлы на FC﹣инфекцию. При обнаружении вируса предлагает стереть этот файл с диска. Тест некорректен. +
- +
-[[antivirus#​VD.COM|Virus Detector versions 1.1, 1.2, 2.1+ (C) 1989, 1990 by MasterSoft]] +
-\\ Проверяет загрузочный сектор на любой вирус загрузочного сектора. Проверяет некоторые ячейки памяти. Файлы проверяются на DOS﹣вирус,​ KANA﹣вирус и FC﹣инфекцию. Вирусы не вычищает. +
- +
-Virus Detector (C) 1990 by OmegaSoft +
-\\ Тестирует MSXDOS.SYS на DOS﹣вирус. Вычищает его из файла. +
- +
-AntiVirus version 2.6 (C) Vesta Soft, PowerSoft +
-\\ Проверяет загрузочный сектор на вирус. При нестандартном загрузочном секторе записывает фирменный загрузочный сектор. Тестирует ловушки на любое использование,​ кроме межслотовых вызовов в ПЗУ. При обнаружении выдаёт нестандартное имя ловушки и первый байт команды. Обнаруживает FC﹣инфекцию,​ KANA﹣ и MOSCOW﹣вирусы. В версии Vesta Soft авторы пытались удалять вирусы KANA и MOSCOW, но, к сожалению,​ АнтиВирус зависал,​ а восстанавливаемая программа портилась. +
- +
-ANTI-virus Utility version 2.0 (C) 1990 by I.Vasilyev +
-\\ Оконный АнтиВирус. Проверяет загрузочный сектор,​ при нестандартном секторе записывает стандартный. Проверяет некоторые ячейки памяти. Достаточно корректно проверяет FC﹣инфекцию и удаляет её из файлов.+
  
 Кроме перечисленных АнтиВирусов упомянем такие, как: Кроме перечисленных АнтиВирусов упомянем такие, как:
   * [[antivirus#​VIRKIL.COM|Detector & killer for C-368 virus (C) V1.01 Magus 1991]]   * [[antivirus#​VIRKIL.COM|Detector & killer for C-368 virus (C) V1.01 Magus 1991]]
   * [[antivirus#​HALT.COM|Virus Halter 1.0 Copyright 1991 by Senatorov & Sildos]]   * [[antivirus#​HALT.COM|Virus Halter 1.0 Copyright 1991 by Senatorov & Sildos]]
-  * Virus killer version 2.0+  * [[antivirus#​VRCH.COM|Virus killer version 2.0]]
   * AntiVirus v3.0 Copyright (C) 1989 by I.Vasilyev   * AntiVirus v3.0 Copyright (C) 1989 by I.Vasilyev
 но все они являются АнтиВирусами прошлого поколения. но все они являются АнтиВирусами прошлого поколения.
Строка 150: Строка 132:
  
 После заставки включаются в работу многочисленные тесты. Сначала проверяется тип компьютера:​ После заставки включаются в работу многочисленные тесты. Сначала проверяется тип компьютера:​
-\\ так как на MSX﹣компьютерах в системе [[msx:​dos|MSX-DOS]] и на IBM﹣совместимых компьютерах в системе [[ms_dos:​ms_dos|MS DOS]] выполняемые файлы имеют одинаковое расширение:​ ''​.COM''​.+\\ так как на MSX﹣компьютерах в системе [[msx:dos:|MSX-DOS]] и на IBM﹣совместимых компьютерах в системе [[ms_dos:​ms_dos|MS DOS]] выполняемые файлы имеют одинаковое расширение:​ ''​.COM''​.
 Вследствие этого, если Вы работаете и на тех и на других машинах,​ Вы можете случайно запустить наш АнтиВирус на IBM﹣компьютере. Не волнуйтесь,​ ничего опасного не произойдет. АнтиВирус выдаст фразу: Вследствие этого, если Вы работаете и на тех и на других машинах,​ Вы можете случайно запустить наш АнтиВирус на IBM﹣компьютере. Не волнуйтесь,​ ничего опасного не произойдет. АнтиВирус выдаст фразу:
 |<100% 45% 55%>| |<100% 45% 55%>|
Строка 224: Строка 206:
  
 Как известно,​ в ПЗУ нельзя ничего записать или изменить и, поэтому,​ для того, чтобы программы,​ записанные в ПЗУ можно было расширять и надстраивать,​ в компьютерах MSX программистам предоставлена возможность использования так называемых ловушек (англ. hook — крючок). В различных местах ПЗУ существуют вызовы подпрограмм в старших адресах ОЗУ. А на месте этих подпрограмм оставлено три или пять байтов,​ заполненных командами ''​RET''​ (возврат из подпрограммы,​ код: C9h). Как известно,​ в ПЗУ нельзя ничего записать или изменить и, поэтому,​ для того, чтобы программы,​ записанные в ПЗУ можно было расширять и надстраивать,​ в компьютерах MSX программистам предоставлена возможность использования так называемых ловушек (англ. hook — крючок). В различных местах ПЗУ существуют вызовы подпрограмм в старших адресах ОЗУ. А на месте этих подпрограмм оставлено три или пять байтов,​ заполненных командами ''​RET''​ (возврат из подпрограммы,​ код: C9h).
-Любая программа может заменить эти команды на свои для достижения поставленных целей. Например,​ ловушки используются ​RAM﹣дисками,​ сетевыми операционными системами для подключения драйвера дополнительного диска (драйвер — это программа управления чем﹣либо). Вирусы тоже пользуются этими ловушками,​ чтобы производить свои вредные эффекты (размножение,​ порча дискет,​ искажение информации и т.п.).+Любая программа может заменить эти команды на свои для достижения поставленных целей. Например,​ ловушки используются дисками ​ОЗУ, сетевыми операционными системами для подключения драйвера дополнительного диска (драйвер — это программа управления чем﹣либо). Вирусы тоже пользуются этими ловушками,​ чтобы производить свои вредные эффекты (размножение,​ порча дискет,​ искажение информации и т.п.).
  
 Тест ловушек выявляет те ловушки,​ которые используются программами,​ находящимися резидентно в ОЗУ и указывающие на подпрограммы,​ не находящиеся в ядре дисковой операционной системы. То есть как раз те ловушки,​ на которые следует обратить особое внимание. При обнаружении такой ловушки следует сообщение:​ Тест ловушек выявляет те ловушки,​ которые используются программами,​ находящимися резидентно в ОЗУ и указывающие на подпрограммы,​ не находящиеся в ядре дисковой операционной системы. То есть как раз те ловушки,​ на которые следует обратить особое внимание. При обнаружении такой ловушки следует сообщение:​
Строка 240: Строка 222:
 если ответ был — ''​N'',​ то удаление производиться не будет. если ответ был — ''​N'',​ то удаление производиться не будет.
  
-Одной из возможных целей удаления может быть нейтрализация действия вируса в памяти,​ например,​ некоторые вирусы используют ловушку F270h. Однако,​ удалением следует пользоваться осторожно,​ так как ловушки используются не только вирусами! Например,​ некоторые драйвера ​RAM﹣дисков используют ту же самую ловушку и очищение ее в этом случае крайне нежелательно. Для этого в АнтиВирусе предусмотрено автоматическое детектирование и очищение ловушек используемых известными нам вирусами,​ это особенно будет полезно обыкновенным пользователям. Данная возможность включается по умолчанию и отменяется ключом (''/​c''​) — ручное удаление ловушек.+Одной из возможных целей удаления может быть нейтрализация действия вируса в памяти,​ например,​ некоторые вирусы используют ловушку F270h. Однако,​ удалением следует пользоваться осторожно,​ так как ловушки используются не только вирусами! Например,​ некоторые драйвера дисков ​ОЗУ ​используют ту же самую ловушку и очищение её в этом случае крайне нежелательно. Для этого в АнтиВирусе предусмотрено автоматическое детектирование и очищение ловушек используемых известными нам вирусами,​ это особенно будет полезно обыкновенным пользователям. Данная возможность включается по умолчанию и отменяется ключом (''/​c''​) — ручное удаление ловушек.
  
 {{anchor:​n425}} {{anchor:​n425}}
Строка 259: Строка 241:
 Следующие пять сообщений выводятся тестом драйверов,​ который был автономным тестом в AntiVirus﹣Fag v3.4. Следующие пять сообщений выводятся тестом драйверов,​ который был автономным тестом в AntiVirus﹣Fag v3.4.
 |<100% 40% 60%>| |<100% 40% 60%>|
-|''​RAM drive is ON''​|Подключен ​RAM﹣диск|+|''​RAM drive is ON''​|Подключен диск ​ОЗУ|
 |''​FDD function modified''​|Изменена функция флоппи﹣дискового драйвера| |''​FDD function modified''​|Изменена функция флоппи﹣дискового драйвера|
 |''​FD drive is OFF''​|Драйвер флоппи диска драйвер отключен (программно)| |''​FD drive is OFF''​|Драйвер флоппи диска драйвер отключен (программно)|
 |''​FD drive x: allocated in RAM''​|Драйвер диска x: размещен в ОЗУ| |''​FD drive x: allocated in RAM''​|Драйвер диска x: размещен в ОЗУ|
 |''​FDD slot for x: is off-line''​| Слот драйвера флоппи﹣диска x: отключен (т.е. драйвер отключен аппаратно)| |''​FDD slot for x: is off-line''​| Слот драйвера флоппи﹣диска x: отключен (т.е. драйвер отключен аппаратно)|
-|''​Base RAM at xxxxh presented as ROM!''​|Базовая страница ОЗУ с адреса xxxxh представлена как ПЗУ! \\ Это означает,​ что при перезагрузке компьютера программа инициализации посчитает эту страницу (16К) ОЗУ страницей ПЗУ и произведет ее инициализацию,​ которая заключается в запуске программы,​ находящейся в этой странице с адреса,​ который лежит по адресу xxxxh+2. Тем самым еще до того, как на Вашем компьютере загрузится [[ms_dos:​ms_dos|]],​ вирус получит управление! Но на это следует обращать внимание только тогда, когда вы знаете,​ что после сброса (RESET) ничего не должно оставаться,​ так как это может быть и не вирус а, скажем,​ программа [[msx:​nd:​nd|ND]],​ которая тоже остается после перезагрузки.|+|''​Base RAM at xxxxh presented as ROM!''​|Базовая страница ОЗУ с адреса xxxxh представлена как ПЗУ! \\ Это означает,​ что при перезагрузке компьютера программа инициализации посчитает эту страницу (16 Кбайт) ОЗУ страницей ПЗУ и произведет её инициализацию,​ которая заключается в запуске программы,​ находящейся в этой странице с адреса,​ который лежит по адресу xxxxh+2. Тем самым еще до того, как на Вашем компьютере загрузится [[ms_dos:​ms_dos|]],​ вирус получит управление! Но на это следует обращать внимание только тогда, когда вы знаете,​ что после сброса (RESET) ничего не должно оставаться,​ так как это может быть и не вирус а, скажем,​ программа [[msx:​nd:​nd|ND]],​ которая тоже остается после перезагрузки.|
 |''​Invalid VRAM size''​|Недействительный размер видеопамяти \\ Это сообщение указывает на то, что действительный размер видеопамяти и тот, который указан в системных ячейках,​ не совпадают. Это может быть проявление программы GFI или драйвера какого﹣нибудь диска ОЗУ, но не исключено,​ что и авторы вирусов могут применить этот способ (изменить размер VRAM).| |''​Invalid VRAM size''​|Недействительный размер видеопамяти \\ Это сообщение указывает на то, что действительный размер видеопамяти и тот, который указан в системных ячейках,​ не совпадают. Это может быть проявление программы GFI или драйвера какого﹣нибудь диска ОЗУ, но не исключено,​ что и авторы вирусов могут применить этот способ (изменить размер VRAM).|
 |''​DANGEROUSE SIZE OF FREE MEMORY''​|Опасный размер свободной памяти это сообщение указывает на то, что верхняя граница системной памяти,​ отведенной для исполняемых программ расположена ниже 8100h. Так как обычно эта граница используется,​ как начальное значение указателя стека, то стек может быть заслонен ПЗУ при вызове каких﹣либо функций [[msx:​yamaha_local_network:​yamaha_local_network|]] или [[msx:​basic:​|]],​ что неизбежно приведет к зависанию.| |''​DANGEROUSE SIZE OF FREE MEMORY''​|Опасный размер свободной памяти это сообщение указывает на то, что верхняя граница системной памяти,​ отведенной для исполняемых программ расположена ниже 8100h. Так как обычно эта граница используется,​ как начальное значение указателя стека, то стек может быть заслонен ПЗУ при вызове каких﹣либо функций [[msx:​yamaha_local_network:​yamaha_local_network|]] или [[msx:​basic:​|]],​ что неизбежно приведет к зависанию.|
 |''​Different FDD & BASIC HIMEM''​|FDD HIMEM и BASIC HIMEM различны \\ это означает,​ что указатели на верхний предел свободной памяти BASIC HIMEM (FC4Ah) и FDD ROM HIMEM (F349h) указывают не на одну и ту же границу. Это может быть вирус, который зарезервировал себе кусок памяти. Но могут быть и некоторые другие программы,​ которые резервируют себе память перед MSX-DOS или в [[msx:​basic:​|]],​ но забывают дублировать эти ячейки. Однако в некоторых случаях эти значения не должны совпадать,​ тогда это сообщение не выводится.| |''​Different FDD & BASIC HIMEM''​|FDD HIMEM и BASIC HIMEM различны \\ это означает,​ что указатели на верхний предел свободной памяти BASIC HIMEM (FC4Ah) и FDD ROM HIMEM (F349h) указывают не на одну и ту же границу. Это может быть вирус, который зарезервировал себе кусок памяти. Но могут быть и некоторые другие программы,​ которые резервируют себе память перед MSX-DOS или в [[msx:​basic:​|]],​ но забывают дублировать эти ячейки. Однако в некоторых случаях эти значения не должны совпадать,​ тогда это сообщение не выводится.|
-|''​Wrong DOS HIMEM relativity FDD HIMEM''​|Неправильный адрес DOS HIMEM относительно FDD HIMEM \\ это означает,​ что указатель на верхний предел свободной памяти в DOS — DOS HIMEM (F34Bh) указывает выше FDD HIMEM (что вообще ошибочно),​ или одинаков с ним. Это, опять же, может быть или вирус, загрузившийся перед ​MSX-DOS или программы,​ подобные ​RAM﹣диск.|+|''​Wrong DOS HIMEM relativity FDD HIMEM''​|Неправильный адрес DOS HIMEM относительно FDD HIMEM \\ это означает,​ что указатель на верхний предел свободной памяти в DOS — DOS HIMEM (F34Bh) указывает выше FDD HIMEM (что вообще ошибочно),​ или одинаков с ним. Это, опять же, может быть или вирус, загрузившийся перед ​[[ms_dos:​ms_dos|MS ​DOS]] или программы,​ подобные диску ОЗУ.|
  
 Следующие три сообщения выводит тест Вызовов BIOS: Следующие три сообщения выводит тест Вызовов BIOS:
 |<100% 40% 60%>| |<100% 40% 60%>|
-|''​BIOS call xxh is suspicious!''​|Подозрительный вызов BIOS'​а ​xxh! \\ означает,​ что переход на вызов BIOS'​а ​указывает не в то место, которое уготовила ему система,​ а в какое﹣то другое. Вирус может использовать это когда, например,​ он желает проявлять свой вредный эффект при соответствующем вызове BIOS или от таймера…| +|''​BIOS call xxh is suspicious!''​|Подозрительный вызов BIOS xxh! \\ означает,​ что переход на вызов BIOS указывает не в то место, которое уготовила ему система,​ а в какое﹣то другое. Вирус может использовать это когда, например,​ он желает проявлять свой вредный эффект при соответствующем вызове BIOS или от таймера…| 
-|''​BIOS call xxh is OFF!''​|Вызов BIOS xxh отключен! \\ это значит что данный вызов BIOS'​а ​не будет работать,​ т.е. первый байт обработчика ​это команда RET (возврат). Если АнтиВирус обнаружил,​ что отключен BIOS 38h, то это может быть всего навсего сделано для ускорения работы с диском (в некоторых нестандартных системах).| +|''​BIOS call xxh is OFF!''​|Вызов BIOS xxh отключен! \\ это значит что данный вызов BIOS не будет работать,​ т.е. первый байт обработчика ​— это команда ​''​RET'' ​(возврат). Если АнтиВирус обнаружил,​ что отключен BIOS 38h, то это может быть всего навсего сделано для ускорения работы с диском (в некоторых нестандартных системах).| 
-|''​BIOS call xxh is BAD!''​|Очень нестандартный вызов BIOS'​а ​xxh! \\ это значит,​ что первая команда обработчика BIOS не переход на основное свое тело (так, как должно быть), а какая﹣либо другая команда (за исключением RET)|+|''​BIOS call xxh is BAD!''​|Очень нестандартный вызов BIOS xxh! \\ это значит,​ что первая команда обработчика BIOS не переход на основное свое тело (так, как должно быть), а какая﹣либо другая команда (за исключением RET)|
 |''​Now IM2! Interrupt hooked at xxxxh''​|Включен режим прерываний 2! Прерывание перехвачено по адресу xxxxh \\ Всего на MSX компьютерах есть три режима прерываний:​ <​WRAP>​ |''​Now IM2! Interrupt hooked at xxxxh''​|Включен режим прерываний 2! Прерывание перехвачено по адресу xxxxh \\ Всего на MSX компьютерах есть три режима прерываний:​ <​WRAP>​
-  * IM0 - при прерывании выполняется команда с шины данных;​ (но так как никто эту команду специально не посылает,​ на шине оказывается байт 0FFh, что в переводе на ассемблер означает ''​RST 38h'',​ то есть происходит вызов программы с адреса 0038h. Там у системы есть соответствующий обработчик. +  * [[microprocessor_kit_z80-book1:​06#​im0|IM0]] — при прерывании выполняется команда с шины данных;​ (но так как никто эту команду специально не посылает,​ на шине оказывается байт 0FFh, что в переводе на ассемблер означает ''​RST 38h'',​ то есть происходит вызов программы с адреса 0038h. Там у системы есть соответствующий обработчик. 
-  * IM1 - при прерывании просто выполняется программа с адреса 0038h; как видим, режимы прерываний 0 и 1 практически идентичны. +  * [[microprocessor_kit_z80-book1:​06#​im1|IM1]] — при прерывании просто выполняется программа с адреса 0038h; как видим, режимы прерываний 0 и 1 практически идентичны. 
-  * IM2 - при прерывании выполняется программа,​ адрес адреса которой вычисляется микропроцессором следующим образом : младший байт берется с шины данных (в нашем случае это 0FFh), а старший ​из внутреннего регистра Z80, имеющего имя Q (или I); видно, что вирусы могут ​ использовать это свойство в своих целях, скажем "​висеть"​ на прерываниях (которые происходят 60 раз в секунду) и это не будет заметно. Этот тест как раз и предназначен для обнаружения этого режима прерываний и выводит адрес нового обработчика прерываний.+  * [[microprocessor_kit_z80-book1:​06#​im2|IM2]] — при прерывании выполняется программа,​ адрес адреса которой вычисляется микропроцессором следующим образом:​ младший байт берется с шины данных (в нашем случае это 0FFh), а старший ​— из внутреннего регистра Z80, имеющего имя Q (или I); видно, что вирусы могут ​ использовать это свойство в своих целях, скажем "​висеть"​ на прерываниях (которые происходят 60 раз в секунду) и это не будет заметно. Этот тест как раз и предназначен для обнаружения этого режима прерываний и выводит адрес нового обработчика прерываний.
 </​WRAP>​| </​WRAP>​|
-|''​INTERRUPT code changes. See xxxxh''​|изменяется код обработчика прерываний. Смотри по адресу xxxxh \\ Возможны вирусы,​ которые вешаются на прерывания посредством изменения кода обработчика и используют прерывания для своих вредных целей. По этому адресу находится первая команда изменяющегося участка кода.| +|''​INTERRUPT code changes. See xxxxh''​|Изменяется код обработчика прерываний. Смотри по адресу xxxxh \\ Возможны вирусы,​ которые вешаются на прерывания посредством изменения кода обработчика и используют прерывания для своих вредных целей. По этому адресу находится первая команда изменяющегося участка кода.| 
-|''​INTERRUPT is idle''​|прерывание работает вхолостую. \\ Это значит,​ что при прерывании не выполняется программа обработчика ​ прерываний в BIOS|+|''​INTERRUPT is idle''​|Прерывание работает вхолостую. \\ Это значит,​ что при прерывании не выполняется программа обработчика ​ прерываний в BIOS|
 |Вышеприведенные два сообщения не выводятся в случае, ​ если ​ вызов BIOS 38h выключен.|| |Вышеприведенные два сообщения не выводятся в случае, ​ если ​ вызов BIOS 38h выключен.||
 |''​CALSLT code changes. See xxxxh''​|изменяется код обработчика подпрограммы| |''​CALSLT code changes. See xxxxh''​|изменяется код обработчика подпрограммы|
-|''​BIOS CALSLT RST 30 code changes. See xxxxh''​|изменяется код обработчика ''​RST 30''​. Смотри по адресу xxxxh \\ Следует отметить,​ что вызов BIOS ''​CALSLT''​ и прерывание ''​RST 30''​ используется для межслотовых вызовов каких﹣либо подпрограмм. Вирус, отслеживая эти ​ вызовы,​ может подменять функцию BIOS и т.п. Если вирус меняет код обработчика,​ то АнтиВирус выдаст соответствующее сообщение и адрес первой команды изменяющегося участка кода.| +|''​BIOS CALSLT RST 30 code changes. See xxxxh''​|изменяется код обработчика ''​RST 30''​. Смотри по адресу xxxxh \\ Следует отметить,​ что вызов BIOS ''​CALSLT''​ и прерывание ''​RST 30''​ используется для межслотовых вызовов каких﹣либо подпрограмм. Вирус, отслеживая эти вызовы,​ может подменять функцию BIOS и т.п. Если вирус меняет код обработчика,​ то АнтиВирус выдаст соответствующее сообщение и адрес первой команды изменяющегося участка кода.| 
-|''​RDSLT code changes. See xxxxh''​|изменяется код обработчика подпрограммы BIOS ''​RDSLT''​ \\ Вызов BIOS ''​RDSLT''​ нужен для чтения информации с других слотов. Если ​ изменяется код обработчика RDSLT, то АнтиВирус ​ выдаст ​ вышеприведенное ​ сообщение.|+|''​RDSLT code changes. See xxxxh''​|изменяется код обработчика подпрограммы BIOS ''​RDSLT''​ \\ Вызов BIOS ''​RDSLT''​ нужен для чтения информации с других слотов. Если изменяется код обработчика ​''​RDSLT''​, то АнтиВирус выдаст вышеприведённое сообщение.|
  
 {{anchor:​n426}} {{anchor:​n426}}
Строка 293: Строка 275:
 |<100% 40% 60%>| |<100% 40% 60%>|
 |''​BDOS is checking!''​|BDOS контролируется!| |''​BDOS is checking!''​|BDOS контролируется!|
-Например,​ при запуске программы в отладчике [[msx:xdbg:xdbg|DBG]] контролируется BDOS. Также BDOS'​ы ​контролируются DOS﹣вирусом (см. [[#​n221|2.2.1]]),​ когда он находится в памяти.+Например,​ при запуске программы в отладчике [[msx:dbg:dbg|DBG]] контролируется BDOS. Также BDOS контролируются DOS﹣вирусом (см. [[#​n221|2.2.1]]),​ когда он находится в памяти.
 Сущность этого вируса мы описали выше. Сущность этого вируса мы описали выше.
  
-Этот тест достаточно универсален,​ он ВЫЯВЛЯЕТ ЦЕЛЫЙ КЛАСС ВИРУСОВ. ​ Также при обнаружении в памяти DOS﹣вируса последний удаляется. При ​ этом ​ на  экране появляется надпись:​+Этот тест достаточно универсален,​ он ВЫЯВЛЯЕТ ЦЕЛЫЙ КЛАСС ВИРУСОВ. Также при обнаружении в памяти DOS﹣вируса последний удаляется. При этом на экране появляется надпись:​
 |<100% 40% 60%>| |<100% 40% 60%>|
 |''​DOS-Virus. Erased''​|DOS﹣вирус. Удален| |''​DOS-Virus. Erased''​|DOS﹣вирус. Удален|
  
-Также возможны вирусы,​ которые изменяют код DOS. В случае присутствия такого вируса в памяти,​ при вызове BDOS'​ов ​программа DOS выполняется нелинейно в силу изменения ее кода. В этом случае АнтиВирус выведет следующее сообщение:​+Также возможны вирусы,​ которые изменяют код DOS. В случае присутствия такого вируса в памяти,​ при вызове BDOS программа DOS выполняется нелинейно в силу изменения её кода. В этом случае АнтиВирус выведет следующее сообщение:​
 |<100% 40% 60%>| |<100% 40% 60%>|
 |''​DOS code changes. See xxxxh''​|Код DOS изменяется. Смотри по адресу xxxxh \\ По этому адресу находится первая команда изменяющегося участка кода.| |''​DOS code changes. See xxxxh''​|Код DOS изменяется. Смотри по адресу xxxxh \\ По этому адресу находится первая команда изменяющегося участка кода.|
-Кроме того этот тест также ​ отображает ​ состояние ​ дисковой ​ операционной системы. При обнаружении каких﹣либо несоответствий возможны сообщения:​+Кроме того этот тест также отображает состояние дисковой операционной системы. При обнаружении каких﹣либо несоответствий возможны сообщения:​
 |<100% 40% 60%>| |<100% 40% 60%>|
 |''​Non-standard DOS error trap''​|Нестандартная обработка ошибок диска \\ При этой ошибке могут неправильно обрабатываться дисковые ошибки.| |''​Non-standard DOS error trap''​|Нестандартная обработка ошибок диска \\ При этой ошибке могут неправильно обрабатываться дисковые ошибки.|
-|''​Non-standard ^C trap''​|Нестандартная обработка комбинаций ​ <​key>​CTRL+c</​key> ​ или <​key>​CTRL+STOP</​key>​ \\ При этой ошибке может неправильно обрабатываться нажатие <​key>​CTRL+c</​key>​.| +|''​Non-standard ^C trap''​|Нестандартная обработка комбинаций <​key>​CTRL+c</​key>​ или <​key>​CTRL+STOP</​key>​ \\ При этой ошибке может неправильно обрабатываться нажатие <​key>​CTRL+c</​key>​.| 
-|''​DOS restart is not into DOS. See xxxxh''​|Переход на рестарт DOS'​а ​не внутрь DOS, а на подпрограмму по адресу xxxxh| +|''​DOS restart is not into DOS. See xxxxh''​|Переход на рестарт DOS не внутрь DOS, а на подпрограмму по адресу xxxxh| 
-Кто﹣то изменил переход на рестарт DOS'​a ​в свою программу,​ находящуюся вне DOS. Возможно,​ это вирус, активизирующийся после работы программы,​ но,  например,​ STS﹣COMMAND изменяет это. Его подпрограмма находится с адреса FA80h.+Кто﹣то изменил переход на рестарт DOS в свою программу,​ находящуюся вне DOS. Возможно,​ это вирус, активизирующийся после работы программы,​ но, например,​ STS﹣COMMAND изменяет это. Его подпрограмма находится с адреса FA80h.
 |<100% 40% 60%>| |<100% 40% 60%>|
-|''​DOS restart is above DOS kernel. See xxxxh''​|Переход на рестарт DOS'​а ​указывает выше ядра DOS, на подпрограмму с адреса xxxxh|+|''​DOS restart is above DOS kernel. See xxxxh''​|Переход на рестарт DOS указывает выше ядра DOS, на подпрограмму с адреса xxxxh|
  
 Возможно вирус запустится так, что не может быть отделим от DOS. Для этого включен этот дополнительный тест на то, что он указывает не в ядро. А смысл его тот же, что и у предыдущего сообщения. Возможно вирус запустится так, что не может быть отделим от DOS. Для этого включен этот дополнительный тест на то, что он указывает не в ядро. А смысл его тот же, что и у предыдущего сообщения.
Строка 317: Строка 299:
 |''​DOS restart is used''​|Занят "​теплый"​ рестарт DOS| |''​DOS restart is used''​|Занят "​теплый"​ рестарт DOS|
  
-Это означает,​ что кто﹣то изменил переход на рестарт DOS, но  он  все﹣таки указывает внутрь ядра DOS.+Это означает,​ что кто﹣то изменил переход на рестарт DOS, но он все﹣таки указывает внутрь ядра DOS.
  
 |<100% 40% 60%>| |<100% 40% 60%>|
Строка 323: Строка 305:
 |''​BDOS entry conflict''​|Ошибка входа в BDOS| |''​BDOS entry conflict''​|Ошибка входа в BDOS|
  
-При этой ошибке невозможна нормальная работа системы с  batchфайлами,​ в COMMAND.COM и т.д.+При этой ошибке невозможна нормальная работа системы с пакетными(batchфайлами,​ в COMMAND.COM и т.д.
  
 |<100% 40% 60%>| |<100% 40% 60%>|
-|''​BDOS entry is Bad''​|Плохой вход в обработчик BDOS'​а ​\\ Это значит,​ что команда в начале DOS'​а ​не безусловный переход на обработчик BDOS'​а ​(JP), а какая﹣либо другая.| +|''​BDOS entry is Bad''​|Плохой вход в обработчик BDOS \\ Это значит,​ что команда в начале DOS не безусловный переход на обработчик BDOS (''​JP''​), а какая﹣либо другая.| 
-|''​BDOS jump is not into DOS. See xxxxh''​|Переход на обработку BDOS'​а ​указывает не в тело DOS      (*) \\ Это означает,​ что вирусы,​ контролирующие BDOS, могут переделать переход сначала на себя, а уж затем в тело DOS.| +|{{anchor:​a1}} ​''​BDOS jump is not into DOS. See xxxxh''​|Переход на обработку BDOS указывает не в тело DOS (*) \\ Это означает,​ что вирусы,​ контролирующие BDOS, могут переделать переход сначала на себя, а уж затем в тело DOS.| 
-|''​BDOS jump is above DOS kernel. See xxxxh''​|Переход на обработку BDOS'​а ​указывает выше ядра DOS|+|''​BDOS jump is above DOS kernel. See xxxxh''​|Переход на обработку BDOS указывает выше ядра DOS|
  
-Если вирусы инициализируются сразу перед DOS'ом то  они ​ могут ​ сделать так, что тело вируса будет как бы продолжением самого DOS. Поэтому сообщение (*) выводиться не будет. Для этого введена дополнительная проверка, ​ указывает ли переход на ядро DOS, как его ​ можно ​ определить ​ для ​ стандартной ​ системы. +Если вирусы инициализируються сразу перед DOS, то они могут сделать так, что тело вируса будет как бы продолжением самого DOS. Поэтому сообщение ​[[#a1|(*)]] выводиться не будет. Для этого введена дополнительная проверка,​ указывает ли переход на ядро DOS, как его можно определить для стандартной системы. 
-Поэтому,​ если система ​ уж  очень ​ нестандартно ​ устроена ​ внутри, ​ или ​ вообще ​MSX-DOS - несовместимая,​ то на данное сообщение не следует обращать внимание.+Поэтому,​ если система уж очень нестандартно устроена внутри,​ или вообще ​[[msx:​dos:​|]]–несовместимая,​ то на данное сообщение не следует обращать внимание.
  
-Как Вы уже заметили, ​ после ​ сообщения ​ об  ошибке ​ имеется ​ фраза:+Как Вы уже заметили,​ после сообщения об ошибке имеется фраза:
 |<100% 40% 60%>| |<100% 40% 60%>|
-|''​See xxxxh''​|Смотри по адресу xxxxh, \\ где xxxxh это адрес, куда указывает переход на обработку BDOS. Скорее всего, по этому адресу Вы обнаружите вирус.|+|''​See xxxxh''​|Смотри по адресу xxxxh, \\ где xxxxh — это адрес, куда указывает переход на обработку BDOS. Скорее всего, по этому адресу Вы обнаружите вирус.|
  
 {{anchor:​n427}} {{anchor:​n427}}
Строка 404: Строка 386:
  
 Кроме этого Вы можете в любой момент приостановить печать нажатием комбинации <​key>​CTRL+s</​key>,​ следующее нажатие той же комбинации приводит к печати следующего символа,​ нажатие других клавиш возобновит нормальную печать. Кроме этого Вы можете в любой момент приостановить печать нажатием комбинации <​key>​CTRL+s</​key>,​ следующее нажатие той же комбинации приводит к печати следующего символа,​ нажатие других клавиш возобновит нормальную печать.
- 
  
  
 {{tag>​MSX Antivirus Application}} {{tag>​MSX Antivirus Application}}
- 
msx/antivirus/mastersoft.1608580095.txt.gz · Последние изменения: 2020-12-21 22:48 — GreyWolf