from
https://lib.co.ua/edu/bezrukovnn/kompyternajavirusologijach.p01.jsp Компьютерная вирусология ч. 1
На правах рукописи
БЕЗРУКОВ НИКОЛАЙ НИКОЛАЕВИЧ
КОМПЬЮТЕРНАЯ ВИРУСОЛОГИЯ
Часть 1: Общие принципы функционирования,
классификация и каталог наиболее распространенных
вирусов в операционной системе MS DOS
Киев 1990
БЕЗРУКОВ Н.Н. КОМПЬЮТЕРНАЯ ВИРУСОЛОГИЯ. Часть 1: Общие принципы
функционирования, классификация и каталог наиболее распространенных
вирусов в операционной системе MS DOS / Редакция 5.5 от
10.11.90.- 1990. - 450 с. Ил. 11, список лит.: 340 назв., прил. 9.
Данная редакция заменяет предыдущие редакции (1.0-1.4, 2.02.9,
3.0-3.7, 4.0-4.8, 5.0-5.4), и большинство описываемых в ней
программных продуктов уже опубликованы в вышедших в свет выпусках
электронного бюллетеня СОФТПАНОРАМА. Некоторые из упоминаемых
"свежих" версий программных средств защиты от вирусов, распространяемых
бесплатно (FREEWARE), а также средств, разработка которых
частично финансируется пользователями (SHAREWARE), были переданы
автору для ознакомления и тестирования и будут опубликованы в последующих
выпусках СОФТПАНОРАМЫ.
В редакции 5.5 исправлен ряд ошибок и опечаток, несколько
изменена структура главы 1 и переработана глава 10.
В редакции 5.4 уточнены сведения о некоторых вирусах, внесены
изменения в приложение 6.
В редакции 5.3 переработаны глава 6 и глава 8.
В редакции 5.2 уточнены сведения по последним обнаруженным
вирусам, исправлено оглавление, доработана гл.2, исправлена и дополнена
таблица в прил.1. Введен термин техно-крыса применительно
к разработчикам компьютерных вирусов, сознательно распространяющим
свои продукты.
В редакции 5.1 исправлены мелкие опечатки, а также неточности
в описании вируса RCE-04096.
В редакции 5.0 классификационные таблицы вынесены в приложения,
внесен ряд изменений в структуру книги, в частности, переработана
гл.1. Добавлены сведения про файловые вирусы С-257, С-1024,
RС-394, RС-488 и бутовые вирусы Stone Rostov, Print Screen.
В редакции 4.8 польская подгруппа выделена в отдельную группу
файловых нерезидентных вирусов. Исправлен ряд ошибок и опечаток.
В редакции 4.7 уточнен ряд сведений в табл.1, а также сведения
про вирус Joshy.
В редакции 4.6 переработан раздел 2.4. В связи с обнаружением
стелс-вирусов в СССР соответствующий раздел перенесен в гл.5, а
информация, относящаяся к вирусу RCE-04096, уточнена. Исправлен
ряд ошибок и неточностей в прил.2 и 3.
В редакции 4.5 в табл.3 для ряда вирусов внесены сигнатуры,
использованные в полидетекторе TNTVIRUS фирмы CARMEL. Исправлены
некоторые опечатки и неточности.
В редакции 4.4 полностью переработано приложение 4 и добавлено
приложение 5. Уточнены сведения по вирусу RC-492.
В редакции 4.3 внесен ряд изменений в приложения 2 и 3, уточнено
изложение некоторых пунктов глав 4 и 10.
В редакции 4.2 добавлены описания вирусов RCE-1600 (Пакость-3)
и WM-1F (Joshy). Полностью переработаны приложение 2 и
приложение 3. Дополнен список литературы. В текст внесено много
мелких изменений и уточнений. В связи с положительными отзывами на
"оживляж" в виде эпиграфов, добавлен ряд новых эпиграфов, а некоторые
неудачные заменены.
Купить
В редакции 4.1 изменена структура книги: глава 4 (КЛАССИФИКАЦИЯ
МЕТОДОВ ЗАЩИТЫ) объединена с главой 8 (ТЕХНОЛОГИЯ ПРИМЕНЕНИЯ
СРЕДСТВ ЗАЩИТЫ ОТ ВИРУСОВ). Предполагается, что в дальнейшем эта
глава будет вынесена из данной части и войдет во вторую часть данной
работы. В свою очередь табл.1 и табл.2 сокращены: в них оставлены
только вирусы, найденные в CCСР. Вирусы, известные по литературе,
вынесены в отдельные таблицы (табл.3 и табл.4), которые существенно
переработаны и дополнены сведениями из файла VIRUSSUM
П.Хоффман. Глава 5 (КАТАЛОГ НАИБОЛЕЕ РАСПРОСТРАНЕННЫХ ФАЙЛОВЫХ ВИРУСОВ)
в связи со своим большим объемом разбита на три: нерезидентные
файловые вирусы, обнаруженные в СССР, резидентные файловые
вирусы, обнаруженные в СССР, и вирусы, известные только по литературе.
Глава 6 (КАТАЛОГ НАИБОЛЕЕ РАСПРОСТРАНЕННЫХ БУТОВЫХ ВИРУСОВ)
разбита на две: бутовые вирусы, обнаруженные в СССР, и вирусы, известные
только по литературе. Несколько переработана структура дескриптора
файлового и бутового вируса. Доработано приложение 1.
В редакции 4.0 текст глав 1-4 и 7 существенно переработан и
дополнен. Исключены табл.3-8. Некоторые изменения и уточнения сделаны
в главе 5, в частности, сокращен и заменен ряд дампов. Вместо
термина "фильтр" в качестве названия этого класса антивирусных
программ теперь используется термин "сторож". Это сделано во избежание
путаницы с соответствующим термином MS DOS и UNIX. Как обычно,
переработаны и дополнены табл.1-2: в них внесены сведения о
дате обнаружения вируса, его распространенности, а для файловых
вирусов дополнительно приводятся J-сигнатуры. Кроме того, несколько
изменена структура дескриптора. В процессе подготовки материала
к публикации к некоторым главам с целью "оживления" изложения добавлены
эпиграфы.
В редакции 3.7 расширены и дополнены табл.1-2, добавлено описание
вируса RC-492. Понятие J-сигнатуры обобщено и на файловые
вирусы. Восстановлено приложение 1, которое теперь содержит каталог
опубликованных в бюллетене СОФТПАНОРАМА антивирусных средств,
распространяемых бесплатно.
В редакции 3.6 глава 5 разбита на три главы по типам вирусов
(файловые, бутовые и сетевые), а также снято приложение 1, как устаревшее.
В редакции 3.5 расширены и исправлены табл.1-2, добавлены
описания вирусов RC-600, Den Zuk, Merphy, EXE, Muzikant, уточнены
сведения о RCE-2000, внесен ряд изменений и добавлений в гл.4
и 6. В редакции 3.4 исправлены табл.1-7, добавлено описание группы
Datacrime и уточнен ряд сведений о других вирусах. В редакции 3.3
добавлено описание вирусов группы IV, а также вставлен ряд недостающих
дампов штаммов, а некоторые, не совсем удачные, дампы заменены.
В редакции 3.2 переработаны табл.1-2, уточнен ряд полей дескриптора,
добавлено описание вируса RCE-2000. В редакции 3.1 исправлены
неточности, допущенные при подготовке табл.1-2 редакции
3.0, и добавлен дамп штамма Brain86 (Ashar) пакистанской группы
вирусов.
В редакции 3.0 значительно переработана структура книги. Изменено
правило для определения длины файловых вирусов (в качестве
эталонной программы теперь принимается не COMMAND.COM PC DOS версии
3.3 с длиной 25307 байтов, а программа, длина которой кратна
16; это приводит к уменьшению на 5 числовых значений в используемой
числовой классификационной характеристике для всех вирусов,
которые выравнивают свое тело на начало параграфа). В связи с возрастанием
количества вирусов материал, относящийся к файловым вирусам,
перегруппирован и разбит на группы (Венская, группа Каскад,
Иерусалимская и группа TP). Кроме того, изменены классификационные
коды: для файловых вирусов буква R вынесена в префикс, а для бутовых
вирусов в качестве характеристики теперь используется значение
второго байта бутсектора.
(С) 1989, 1990 Безруков Н.Н.
Разрешается бесплатное копирование и распространение при
условии сохранения целостности материала и отсутствия прямой
коммерческой выгоды. Авторам антивирусных программ разрешается
бесплатное воспроизведение в документации табл.1-4 независимо
от того, является ли данная программа бесплатной или
коммерческой. Для распространения с целью получения
коммерческой выгоды, включая поставку в качестве части
документации к продаваемым программным продуктам, использование
на платных курсах и т.д., необходимо заключение
соответствующего договора с автором.
ПРЕДИСЛОВИЕ
"Читатель, вот мои "Досуги"...
Суди беспристрастно!
Издаю пока отрывок."
Козьма Прутков
По мере развития и усложнения компьютерных систем и программного
обеспечения возрастает объем и повышается уязвимость хранящихся
в них данных. Одним из новых факторов, резко повысивших эту
уязвимость, является массовое производство программно-совместимых
мощных персональных ЭВМ, которое явилось одной из причин появления
нового класса программ-вандалов - компьютерных вирусов. Наибольшая
опасность, возникающая в связи в опасностью заражения программного
обеспечения компьютерными вирусами, состоит в возможности искажения
или уничтожения жизненно-важной информации, которое может привести
не только к финансовым и временным потерям, но и вызвать человеческие
жертвы.
В последние три года в зарубежной печати наблюдается активное
развитие исследований, посвященных проблеме защиты компьютеров от
вирусов. О размахе работ по рассматриваемой тематике свидетельствует
ряд фактов: библиография работ, затрагивающих или целиком посвященных
данной проблеме, исчисляется сотнями наименований, появился
ряд монографий, как американских, так и европейских авторов
(см. приведенный в данной работе список источников, хотя он, естественно,
является неполным и включает только публикации, доступные
в СССР). Состоялось несколько конференций по проблеме защиты от
вирусов, а на большинстве представительных конференций имеются секции,
так или иначе связанные с этой тематикой. Появился ряд фирм,
для которых разработка антивирусных средств стала основным направлением
их деятельности. Все это ставит вопрос о формировании новой
инженерной дисциплины "компьютерной вирусологии", рассматриваемой
как совокупность методов и приемов изучения компьютерных вирусов и
разработки эффективных средств защиты от них.
Можно выделить три основных направления исследований в компьютерной
вирусологии: теоретические исследования, разработка методов
анализа и разработка средств защиты. Теоретические исследования
связаны с выявлениями закономерностей, присущих эпидемиям компьютерных
вирусов, анализом "точек проникновения" и созданием неспецифической
методики выявления вирусов в компьютерных программах.
Исследование этих проблем наталкивается на значительные трудности,
частично связанные с их новизной и необычностью, а частично с нечеткостью
самой проблемы. Например, проблема выделения вируса в
компьютерной программе может с теоретической точки зрения рассматриваться
как задача распознавания образов, однако такой абстрактный
подход непросто увязать с практическими проблемами детектирования
вирусов.
Разработка методов анализа связана с проблемой дизассемблирования
программного обеспечения, не имеющего исходных текстов. К
проблеме дизассемблирования в академических кругах незаслуженно
относились пренебрежительно, а те немногие статьи, которые писались
по данной тематике, часто отвергались редакциями журналов как
"ненаучные" и связанные с "пиратством". На самом же деле проблема
дизассемблирования является частью проблемы реконструкции программного
обеспечения. Последнее время это направление усиленно развивается
за рубежом и есть надежда, что постепенно оно будет признано
и нашей "официальной" наукой.
Наибольшие результаты в настоящее время достигнуты в третьем
направлении - создании конкретных антивирусных программ и методик
их применения. Ряд разработок доведен до уровня программных продуктов
и широко используются пользователями. Не случайно этой теме
посвящена значительная часть "антивирусных публикаций".
Конечно, компьютерная вирусология быстро развивается и в последнее
время в разных ее разделах получены новые интересные результаты,
которые еще не нашли отражения в данной работе.
Данная рукопись представляет собой исправленный и дополненный
текст лекций, прочитанных автором на Киевском семинаре "Системное
программирование", начиная с апреля 1989 г., и является первой частью
запланированной автором работы, посвященной вопросам, связанным
с компьютерными вирусами. В ней излагаются общие принципы функционирования
вирусов, предлагаемая автором классификация и кратко
описываются наиболее распространенные (на период подготовки настоящей
редакции) компьютерные вирусы. Содержание книги охватывает
достаточно широкий круг вопросов без излишней детализации. Необходимые
термины определяются неформально и могут быть восприняты на
интуитивном уровне. Для понимания основного содержания книги достаточно
некоторого знакомства с операционной системой MS DOS (например,
в объеме, приводимом в книге В.Э.Фигурнова [Фигурнов90]) и
не требуется знания языка ассемблера. Хотя изложение ориентировано
на MS DOS, большинство излагаемых приемов анализа и методов защиты
применимы, с соответствующими модификациями, и для других операционных
систем.
Предполагается, что вся работа будет состоять их трех частей.
В частности, во второй части работы будут рассмотрены проблемы
трассировки, дизассемблирования и реконструкции загрузочных модулей,
а в третьей - вопросы классификации, использования и конструирования
средств защиты от компьютерных вирусов, Они будут опубликованы
в последующих выпусках бюллетеня СОФТПАНОРАМА.
Относительно компьютерных вирусов существует много мифов, поэтому
очень важно наличие объективной "первичной" информации. Дело
в том, что как в публикациях, так и в "программистском фольклоре"
встречаются неточные или вообще неверные утверждения относительно
эффектов, вызываемых тем или иным вирусом, и оптимального выбора
методов защиты. Следует также отметить, что некоторые авторы брошюр
на эту тему, появившихся в массовых изданиях и научно-популярных
журналах, не обладают достаточной квалификацией в области системного
программирования и, стараясь придать материалу сенсационный
характер, скатываются при описании вирусов на уровень "фильмов
ужасов".
Поскольку научные интересы автора в последнее время были сосредоточены
на вопросах разработки эффективных методов дисассемблирования,
обратной трансляции и реконструкции программного обеспечения
[Безруков88], новый тип программ - вирусы сразу привлек внимание
как один из возможных полигонов для отработки разрабатываемых
методов и средств. В рамках проводимых автором исследований
автором выполнено дизассемблирование и реконструкция исходных текстов
ряда компьютерных вирусов [Безруков89,90а,90б,90в]. Дополнительно
к дизассемблированию и статическому анализу, работа вирусов
трассировалась и их поведение изучалось в контролируемой среде.
Приводимые ниже сведения дают достаточно подробную информацию об
особенностях, механизме распространения и типах наносимого ущерба
этой новой, сравнительно мало исследованной разновидности системных
программ. Автор надеется, что эта систематизация и последовательное
изложение имеющегося фактического материала поможет более
эффективной борьбе как с уже известными, так и с новыми типами компьютерных
вирусов.
Поскольку настоящая публикация является предварительной, в
ней пропущена часть иллюстративного материала, недостаточно подробно
описаны средства защиты, ряд сведений о распространяющихся в
СССР вирусах носит фрагментарный характер. Кроме того, текст, повидимому,
нуждается в литературном редактировании. Тем не менее,
учитывая отсутствие систематических сведений по данному вопросу и
срочность публикации, я считаю возможным предложить данную работу
"как есть", сознавая недостатки стиля изложения и принятой схемы
построения работы. Появление канала обратной связи в виде реакции
участников семинара и читателей безусловно послужит стимулом устранения
имеющихся недостатков, и в последующих номерах бюллетеня
СОФТПАНОРАМА будет приведена очередная "исправленная и дополненная"
редакция данной работы.
С начала 1989 года в Киеве действует ежемесячный семинар "Системное
программирование" (семинар проходит во второй четверг каждого
месяца в ауд.4-205 КИИГА; начало в 15.00), работа которого в
какой-то мере координирует усилия разработчиков антивирусных
средств. По материалам семинара под редакцией автора этих строк
ежемесячно (точнее, 10 раз в год) выходит электронный бюллетень
СОФТПАНОРАМА, в котором регулярно публикуются новые версии антивирусных
программ, распространяемых бесплатно, документация к ним и
сообщения о новых вирусах и их штаммах.
В настоящее время десятки коллективов и отдельных программистов
разрабатывают эффективные антивирусные средства. В частности,
значительной популярностью пользуются программы, разработанные
участниками семинара и распространяемые через бюллетень СОФТПАНОРАМА
(CHECK21, SBM, VL и др.). Редакция СОФТПАНОРАМы предлагает
сотрудничать с ней авторам бесплатных антивирусных программ. При
этом переданная в редакцию версия, как правило, включается в очередной
выпуск бюллетеня, т.е. задержка в публикации составляет менее
месяца (а для приезжающих на семинар иногородних разработчиков
- несколько часов). Кроме того, помещаются демонстрационные версии
коммерческих программ, если они представляют интерес для пользователей.
Все это позволяет оперативно реагировать на появление новых
разновидностей компьютерных вирусов и в пределах месяца обеспечивать
участников семинара и читателей бюллетеня доработанными, с
учетом появившихся вирусов, версиями антивирусных программ, а их
авторов - соответствующей долей общественного уважения.
Знакомства.Новые.
Кроме того, все опубликованные в бюллетене СОФТПАНОРАМА антивирусные
программы участвуют в конкурсе на лучшую антивирусную
программу, проводимом с 1990 г. (призовой фонд первого конкурса,
проведенного в январе-феврале 1990 г. составил 1500 руб.).
В ходе проведения первой Всесоюзной конференции "Методы и
средства защиты от компьютерных вирусов в операционной системе MS
DOS" планируется проведение следующего, второго конкурса бесплатных
антивирусных программ (конференция пройдет с 14 по 17 ноября в
Киеве, на базе КИИГА). Программы, представляемые на конкурс, должны
быть переданы в оргкомитет не позднее 12 сентября.
Конкурс пройдет в трех классах программ:
- фаги (включая самообучающиеся);
- детекторы и ревизоры (включая резидентные, а также модули и
заготовки на языках высокого уровня, обеспечивающие
самотестирование на заражение);
- вакцины и сторожа (включая специализированные драйверы и
самоизлечивающиеся оболочки).
Для победителей в каждом классе программ установлены следующие
премии:
- по классу фагов:
I премия - 1500 руб.,
II премия - 900 руб.,
III премия - 600 руб.
- по классу детекторов и ревизоров:
I премия - 1200 руб.,
II премия - 750 руб.,
III премия - 450 руб.
- по классу вакцин и сторожей:
I премия - 1200 руб.,
II премия - 750 руб.,
III премия - 450 руб.
Жюри будет состоять из независимых специалистов, продолжительное
время работающих в данной области, но не участвующих в конкурсе.
Помимо премий жюри будет также установлен ряд дополнительных
премий.
В рамках конференции будут организованы секции:
- классификация вирусов и методы анализа вирусоподобных программ,
инструментальные средства вирусолога: разработка и использование
средств дизассемблирования, трассировки и других методов
анализа загрузочных модулей; (руководитель секции Н.Н.Безруков);
- вопросы конструирования, сравнительный анализ и перспективные
методы усиления фагов (руководитель секции Д.Н.Лозинский);
- вопросы конструирования детекторов, эвристические методы
детектирования вирусов, организация входного контроля, конструирование
ревизоров и алгоритмы самотестирования программ;
- конструирование резидентных программ защиты, методы контроля
"on the fly", нетрадиционные методы защиты от вирусов, незаражаемые
и самоизлечивающиеся программы (руководитель секции А.Водяник);
- методы и алгоритмы защиты от несанкционированного копирования
коммерческого ПО (руководитель секции В.Герасимов);
- меры воздействия и возможные санкции против разработчиков и
распространителей вирусов (общая дискуссия);
Поскольку в настоящее время компьютерная вирусология переживает
своего рода бум, имеется определенная потребность в унификации
терминологии и оперативном обмене информацией между разработчиками
и пользователями с одной стороны и между самими разработчиками.
Например, на начальном этапе практически каждый разработчик
антивирусных средств разрабатывал собственную классификацию компьютерных
вирусов, которая обычно оказывалась никак не согласованной
с классификацией других разработчиков. Сейчас эта ситуация несколько
меняется и среди неформальных названий стандартными постепенно
становятся названия, используемые в полидетекторе SCAN фирмы
McAfee Associates (США). Однако этим неформальным названиям присущ
тот недостаток, что они охватывают только вирусы, детектируемые
текущей версией программы SCAN, а набор вирусов, распространяющихся
в США, отличается о советского.
Партнерская программа для Вебмастера
Поэтому наряду с неформальной классификацией необходима и формальная,
попытка создания которой предпринята в предлагаемой ниже
работе. Сейчас уже практически никто не сомневается в важности создания
формальной классификационной схемы; споры вызывает лишь выбор
конкретной иерархии признаков (очевидно, что система классификации
компьютерных вирусов, как и любая другая классификационная
система, должна предполагать иерархию признаков, т.е. выбор в отношении
порядка критериев и их значимости). Предлагаемый автором
подход является предельно прагматическим и ориентирован прежде
всего на однозначную идентификацию вирусов рядовыми пользователями,
что, естественно, накладывает определенные ограничения на выбор
классификационных признаков (свойств). Данная классификационная
система находит все более широкое применение и в настоящее
время используется рядом разработчиков. Однако, к сожалению, никто
из них не реализовал диалоговую подсказку на базе разработанного
автором дескриптора, хотя это существенно повысило бы качество выдаваемой
пользователю информации.
Следует подчеркнуть, что всем разработчикам как бесплатных,
так и коммерческих антивирусных средств разрешается включение копий
прил.1-5 в текст документации или в виде приложений к последней.
Хотя предложенная классификация не лишена недостатков, все же
по мнению автора важнее во-время сделать ставку на какой-то более
или менее приемлемый вариант, чем тратить собственное время и силы
на разработку более удачной альтернативы. Поскольку автор регулярно
обновляет предложенные классификационные таблицы вирусов, корректировка
документации (и оперативной подсказки пользователям !)
разработчиками антивирусных средств, использующих эти таблицы, может
быть выполнена путем простой замены предыдущей редакции таблиц
на текущую. Это можно даже сделать автоматически с помощью специального
препроцессора. Кроме того, такое решение разработчиков существенно
облегчает жизнь пользователям, которые могут использовать
данную работу как дополнение к используемой антивирусной программе.
Наряду с классификацией, важное значение имеет создание каталога
описаний наиболее распространенных компьютерных вирусов, из
которого можно было бы выяснить свойства, степень опасности и основные
приемы борьбы с этой новой разновидностью компьютерного вандализма,
а также разработать собственную методику работы в "вирусоопасной"
обстановке. Автор попытался в меру своих сил выполнить
эту задачу в предлагаемой вашему вниманию части работы. Насколько
эта попытка удалась, судить читателю.
В процессе работы автор опирался на помощь и поддержку участников
киевского семинара "Системное программирование", студентов -
сотрудников ТК NEATAVIA (В.Пономаренко, И.Свиридов, О.Суворов), а
также разработчиков антивирусных программ. Обмен информацией с
Е.Н.Касперским, Д.Н.Лозинским, А.А.Сессой и А.А.Чижовым и другими
разработчиками отечественных антивирусных программ позволил оперативно
включать в очередные версии сведения о появлявшихся вирусах.
Кроме того, при написании работы использовалась неопубликованная
документация к антивирусным программам указанных автором (Д.Н.Лозинского,
О.Котика, А.Сессы, Е.Касперского и др.). В.Герасимов передал
автору Virus Information Summary List, составленный Патрицией
М. Хоффман (Patricia M. Hoffman).
Особую благодарность автор выражает сотруднику ВЦ АН СССР
Ю.П.Лященко, который на протяжении всего времени работы над данной
книгой оказал существенную помощь в работе, в особенности в вопросах,
связанных с совершенствованием структуры книги, унификацией
терминологии и систематизацией изложения материала. Кроме того,
Ю.П.Лященко помог автору с копированием литературы по данной тематике,
высказал ряд полезных замечаний по тексту рукописи и выполнил
трудоемкую работу по составлению и редактированию библиографии
и приложения 5.
Ряд читателей данной работы прислали свои замечания и предложения,
учет которых позволил повысить качество изложения и исправить
ошибки и неточности. Всем им автор выражает свою искреннюю
благодарность.
В то же время именно автор несет ответственность за все ошибки
и неточности, имеющиеся в работе, и будет благодарен всем, приславшим
свои замечания и предложения. Их следует направлять по адресу:
252006, Киев-6, Красноармейская 124а, кв. 85 или сообщать по
телефону (044) 268-10-26 с 9 до 10 часов утра. Я постараюсь их
учесть при подготовке очередной редакции данной работы. Если не
оговорено обратное, то письма, адресованные автору, рассматриваются
как поступившие в адрес редакции бюллетеня СОФТПАНОРАМА. Наиболее
интересные из них публикуются в очередном номере бюллетеня.
Партнерская программа для Вебмастера
Редакция оставляет за собой право редактирования содержания писем.
Первая версия данной работы была выпущена в сентябре 1989 года
и в дальнейшем обновлялась ежемесячно, к очередному семинару. Поскольку
она распространяется, в основном, стихийно, нередко
(Далее публикация этого исторически интересного материала будет продолжена. - Пруль)
Комментариев нет:
Отправить комментарий