Вирусы и антивирусы
Компьютерным вирусом называется программа (некоторая совокупность выполняемого кода (инструкций), которая способна создавать свои копии (не обязательно полностью совпадающие с оригиналом) и внедрять их в различные объекты (ресурсы) компьютерных систем, сетей и т. д. без ведома пользователя. При этом копии сохраняют способность дальнейшего распространения. Вирусы можно разделить на классы по следующим признакам:
1. По среде обитания вирусы можно разделить на сетевые, файловые и загрузочные. Сетевые вирусы распространяются по компьютерной сети, файловые внедряются в выполняемые файлы, загрузочные – в загрузочный сектор диска или в сектор, содержащий системный загрузчик винчестера. Существуют сочетания – например, файлово-загрузочные вирусы, заражающие как файлы, так и загрузочные секторы дисков.
2. По способу заражения среды обитания вирусы делятся на резидентные и нерезидентные. Резидентный вирус при инфицировании компьютера оставляет в оперативной памяти свою резидентную часть, которая затем перехватывает обращение операционной системы к объектам заражения и внедряется в них. Резидентные вирусы находятся в памяти и являются активными вплоть до выключения или перезагрузки компьютера. Нерезидентные вирусы не заражают память компьютера и являются активными ограниченное время. Некоторые вирусы оставляют в оперативной памяти небольшие резидентные программы, которые не распространяют вирус. Такие вирусы считаются нерезидентными.
3. По деструктивным возможностям вирусы могут быть:
1) безвредными, т. е. никак не влияющими на работу компьютера (кроме уменьшения свободной памяти на диске в результате своего распространения);
2) неопасными, уменьшающими свободную память на диске и создающие графические, звуковые и пр. эффекты;
3) опасными, приводящими к серьезным сбоям в работе;
4) очень опасными, приводящими к потере программ, уничтожению данных, стиранию необходимой для работы компьютера информации, записанной в системных областях памяти.
4. По особенностям алгоритма можно выделить следующие группы
вирусов:
1) компаньоны – вирусы, не изменяющие файлы;
2) черви – вирусы, которые распространяются в компьютерной сети и, так же как и компаньоны-вирусы, не изменяют файлы или секторы на дисках. Они проникают в память компьютера из компьютерной сети, вычисляют сетевые адреса других компьютеров и рассылают по этим адресам свои копии;
3) паразитические – все вирусы, которые при распространении своих копий обязательно изменяют содержимое дисковых секторов или файлов.
К ним относятся вирусы, которые не являются «червями» или «компаньонами»;
4) студенческие – крайне примитивные вирусы, часто нерезидентные и содержащие большое число ошибок;
5) стелс-вирусы (вирусы-невидимки) – программы, которые перехватывают обращения операционной системы к пораженным файлам или секторам дисков и «подставляют» вместо себя незараженные участки информации. Такие вирусы при обращении к файлам часто используют достаточно оригинальные алгоритмы, позволяющие «обманывать» резидентные антивирусные мониторы;
6) полиморфические вирусы (вирусы-призраки) – трудно обнаруживаемые вирусы, не имеющие сигнатур, т. е. не содержащие ни одного постоянного участка кода;
7) макровирусы – используют возможности макроязыков, встроенных в системы обработки данных (текстовые редакторы, электронные таблицы и т. д.). В настоящее время наиболее распространены макровирусы, заражающие текстовые документы процессора MS Word.
Для борьбы с вирусами используются специальные антивирусные программы, которые просматривают все файлы на компьютере и ищут в них вирусы. Выделяют четыре поколения антивирусных программ.
Антивирусные программы-сканеры первого поколения для идентификации вирусов использовали характерные для соответствующих вирусов сигнатуры.
Сканеры второго поколения уже не были ориентированы на конкретные сигнатуры. В них применялся эвристический анализ, с помощью которого можно было сделать вывод о возможном наличии в программе вируса.
Программы третьего поколения представляли собой резидентные программы, выявляющие вирусы по выполняемым ими действиям, а не по их структуре в инфицированной программе. Преимуществом таких программ было то, что для них не требовалось постоянно обновлять базу данных сигнатур и эвристик для все большего числа вирусов. Вместо этого достаточно было определить относительно небольшой набор действий, характеризующих возможные проявления вируса.
Продукты четвертого поколения представляют собой пакеты, объединяющие все существующие антивирусные технологии. Такой подход, помимо выполнения сканирования и наличия компонентов, позволяющих регистрировать определенные действия вирусов, предполагает наличие средств управления доступом, с помощью которых можно ограничить возможности проникновения вирусов в систему и внесения изменений в файлы с целью распространения инфекции под видом обновления.
Существуют следующие правила безопасной работы на компьютере:
1. Не использовать программ, взятых с компьютера, где периодически обнаруживаются вирусы.
2. Создавать резервные копии основных утилит и важной информации на сменных носителях.
3. Проверять носители, побывавшие на чужом компьютере, на наличие вирусов, перед тем как запускать или копировать файлы с этих носителей.
4. Регулярно проверять компьютер на наличие вирусов.
5. Не допускать к работе за своим компьютером посторонних лиц, особенно с их носителями информации.
6. Работая в локальной сети, при возникновении подозрения о появлении вируса немедленно дать знать об этом администратору сети.
Базы данных
База данных – это набор структурированной информации, предназначенный для совместного использования несколькими пользователями одновременно. Отдельные элементы данных в базе данных связаны между собой логическими связями, взаимозависимы. Именно структурированность и возможность многопользовательского доступа отличают базу данных от простых файлов с данными, которые также являются наборами данных.
База данных состоит из таблиц.Таблица – это совокупность строк и столбцов. Каждый столбец должен иметь имя, уникальное в пределах этой таблицы. Строки в таблице могут быть расположены в любом порядке и не имеют номеров. Поэтому к каждой строке принято добавлять какой-нибудь уникальный идентификатор, чтобы потом ее было легко найти.
Для обеспечения механизма идентификации строк в таблице используются ключи.Ключ – это набор столбцов. Он может состоять из одного столбца или охватывать несколько столбцов таблицы. Выделяют потенциальные, первичные, внешние и альтернативные ключи. Потенциальным ключом называют такую комбинацию столбцов, которая обладает уникальностью (в таблице нет двух разных строк с одинаковыми значениями в потенциальном ключе) и не избыточностью (нельзя убрать один из столбцов из ключа, чтобы он не потерял уникальности).
Рассмотрим, например, следующую таблицу (табл. 1).
В качестве потенциального ключа можно взять комбинацию столбцов «Ф.И.О.» и «Дата рождения» или же столбец «Номер полиса».
Первичный ключ – это один из потенциальных ключей. При внесении в таблицу записи физически располагаются в порядке, определенным первичным ключом. Ключи, оставшиеся после выбора первичного ключа, называются альтернативными. Внешний ключ – это ключ, используемый для связи двух таблиц. Он используется для контроля ссылочной целостности. Нельзя удалить строку из главной таблицы, не удалив предварительно строку из подчиненной.
Таблица 1 | |||
Номер полиса | Ф. И. O. | Дата рождения | Диагноз |
12 АБ | Иванов И. И. | 10.10.1979 | Грипп |
34 УК | Петров П. П. | 11.01.1968 | Пневмония |
Для контроля вводимых в таблицу данных используются ограничения – правила, которые определяют взаимосвязи между таблицами и могут проверять данные в базе данных. Выделяют три вида ограничений:
1) первичный ключ;
2) внешний ключ;
3) проверки. На значение поля таблицы накладывается ряд условий, например, оно должно быть обязательно заполнено.
Для ускорения доступа к записям таблицы используются индексы. Индекс – это упорядоченный указатель на записи в таблице. Индекс содержит значения одного или нескольких полей в таблице и адреса страниц данных, на которых располагаются эти значения. По значению полей, входящих в индекс, можно быстро найти место в таблице, где располагается запись, содержащая это значение.
Существует более или менее универсальный способ манипуляции данными, поддерживаемый почти всеми системами управления базами данных. Этот способ – применение языка структурированных запросов SQL. SQL позволяет не только извлекать данные, но и определять их структуру, добавлять и удалять данные, ограничивать или предоставлять доступ к ним, поддерживать ссылочную целостность.
SQL сам по себе не является ни базой данных, ни отдельным продуктом. Это язык, применяемый для взаимодействия с базой данных и являющийся в определенном смысле ее неотъемлемой частью. Все современные системы управления базами данных содержат в своем составе утилиты, позволяющие выполнить SQL-предложение и ознакомиться с его результатом.
Рис. 13. Рабочее окно MS Access (версия 2007) |
Кнопка «Office» |
Таблицы базы данных |
Конструктор таблиц |
Ленты инструментов |
Для обеспечения безопасности данных используются представления. Представление – это виртуальная таблица, обычно содержащая набор колонок одной или нескольких таблиц. В действительности представление содержит не данные, а лишь SQL-запрос на выборку, указывающий, какие именно данные и из каких таблиц нужно взять при обращении к этому представлению. С этой точки зрения представление – это хранимый запрос. Некоторые категории пользователей могут иметь доступ к представлению, но не к таблицам, данные которых его формируют.
Для повышения производительности приложений используются хранимые процедуры – скомпилированный набор SQL-предложений, сохраненный в базе данных как именованный объект и выполняющийся как единый фрагмент кода. Хранимые процедуры могут принимать и возвращать параметры. Существует специальная разновидность хранимых процедур, триггеры, которые автоматически вызываются при добавлении, удалении или изменении данных в определенной таблице.
Для обеспечения целостности базы данных используются транзакции. Транзакция – это логический блок, объединяющий одну или более операций в базе данных и позволяющий подтвердить или отменить результаты всех операций в блоке.
В пакете Microsoft Office есть приложение для создания систем управления базами данных (СУБД) – MS Access (рис. 13).
Практическая работа 6. Разработка базы данных,
содержащей сведения о больных
Цель работы – разработка базы данных, содержащей сведения о больных. База данных состоит из двух таблиц. Первая, главная таблица содержит список больных. Вторая, подчиненная, содержит информацию об измерениях различных показателей. В задачи работы входит создание структуры базы данных, разработка экранных форм для ввода данных и отчета «Сведения о больных».
1. Открыть Microsoft Access.
2. Создать базу данных. Выполнить команду «Office/Создать/Новая база данных». В поле «Имя файла» окна «Файл новой базы данных» указать имя файла базы данных db1. Нажать «Создать».
3. Создать таблицу для хранения списка больных. Выполнить команду «Создание\Таблица». В окне «Новая таблица» выбрать строку «Конструктор». Нажать «ОK». В окне «Таблица1: Таблица» заполнить сведения о полях следующим образом:
Имя поля | Тип данных | Описание |
Name | Текстовый | Имя больного |
BirthDate | Дата / время | Дата рождения |
Diagnosis | Текстовый | Диагноз |
EntranceDate | Дата / время | Дата поступления |
ExitDate | Дата / время | Дата выписки |
Code | Счетчик | Индивидуальный код больного |
Установив курсор на строку с описанием поля Code, щелкнуть правой кнопкой мыши. Во всплывающем меню выбрать пункт «ключевое поле». Выполнить команду «Office/Сохранить». В возникшем окне «Сохранение» указать имя таблицы MainTbl.
4. Аналогично создать таблицу MeasureTbl для хранения значений различных параметров больных с полями:
Имя поля | Тип данных | Описание |
Code | Числовой | Индивидуальный код больного |
MeasureDate | Дата / время | Дата измерения |
Param | Текстовый | Измеряемый параметр |
Value | Числовой | Значение параметра |
В окне «Свойства поля» для поля Value установить размер поля – «Одинарное с плавающей точкой», число десятичных знаков – 2, значение по умолчанию – 36.6.
Рис. 14. Диаграмма рядов меченных клеток |
5. Создать связь по полю Code между двумя таблицами. Выполнить команду «Работа с базами данных/Схема данных». На вкладке «Таблицы» окна «Добавление таблицы» выбрать таблицы MainTbl и MeasureTbl. Нажать кнопку «Добавить». Выделить поле Code в окне с полями таблицы MainTbl. Удерживая левую кнопку мыши, переместить курсор к полю Code в окне с полями таблицы MeasureTbl. Отпустить левую кнопку мыши. В окне «Изменение связей» нажать кнопку «Создать». Сохранить изменение макета данных.
6. Создать форму для ввода данных в таблицы. Выполнить команду «Создание\Другие формы\Мастер форм». В качестве источника данных указать таблицу MainTbl. В окне «Создание форм» перенести на вкладку «Выбранные поля» все поля таблицы MainTbl и все поля, кроме поля Code, таблицы MeasureTbl. Выбрать стиль расположения главного и подчиненного
окна, схему расположения полей, а также цветовую схему окон, нажимая последовательно кнопку «Далее». Нажать кнопку «Готово».
Примерный вид окна показан на рис. 14.
7. Заполнить базу данных сведениями о больных и о параметрах их состояния (температура, давление и т. д.). Установив курсор на форму MainTbl, нажать Enter. Используя стрелки навигации по записям, ввести в базу данных сведения о 5 больных, по 5 измерений за различные даты для каждого больного.
8. Создать отчет «Список больных». Выполнить команду «Создание/Мастер отчетов». В качестве источника данных указать таблицу MainTbl. В окне «Мастер отчетов» перенести на вкладку «Выбранные поля» поля Name, BirthDate и Diagnosis. Последовательно нажимая кнопку «Далее», выбрать вид отчета. Нажать «Готово». Изменить заголовки страницы на «ФИО», «Дата рождения», «Диагноз». Нажать кнопку «Сохранить» на панели инструментов. Двойным щелчком мыши запустить отчет, выбрав его в списке отчетов.
9. Сохранить созданную базу данных.
Дата добавления: 2016-05-31; просмотров: 2455;