информационные технологии. 104- Информационные технологии_Корнеев, Ксандопуло, Машурцев_Уче. Информационные технологии И. К. Корнеев, Г. Н. Ксандопуло, В. А. Машурцев
![]()
|
Глава 8 ОСНОВЫ ЗАЩИТЫ ИНФОРМАЦИИ В ВЫЧИСЛИТЕЛЬНЫХ СИСТЕМАХ 8.1. Необходимость защиты информации При хранении, поддержании и предоставлении доступа к любому информационному объекту его владелец либо уполномоченное им лицо накладывает набор правил по работе с ним. Умышленное их нарушение классифицируется как атака на информацию. Каковы возможные последствия атак на информацию? Прежде всего это экономические потери: раскрытие коммерческой информации может привести к серьезным прямым убыткам на рынке; известие о краже большого объема информации обычно серьезно влияет на репутацию фирмы, приводя косвенно к потерям в объемах торговых операций; фирмы-конкуренты могут воспользоваться кражей информации, если та осталась незамеченной, для того чтобы полностью разорить фирму, навязывая ей фиктивные либо заведомо убыточные сделки; подмена информации как на этапе передачи, так и на этапе хранения в фирме может привести к огромным убыткам; многократные успешные атаки на фирму, предоставляющую какой-либо вид информационных услуг, снижают доверие к фирме у клиентов, что сказывается на объеме доходов. Естественно, компьютерные атаки могут принести и огромный моральный ущерб. Само собой разумеется, что никакому пользователю компьютерной сети не хочется, чтобы его письма, кроме адресата, получали еще 5—10 человек или, например, весь текст, набираемый на клавиатуре ЭВМ, копировался в буфер, а затем при подключении к Интернету отправлялся на определенный сервер. А именно так и происходит в тысячах и десятках тысяч случаев. И наконец, что же именно предпринимают злоумышленники, добравшись до информации: непосредственную кражу денег с электронных счетов; вывод из строя программного обеспечения; кражу информации с различными негативными последствиями; фальсификацию информации; несанкционированное получение услуг. Информация с точки зрения информационной безопасности обладает следующими категориями: конфиденциальность — гарантия того, что конкретная информация доступна только тому кругу лиц, для кого она предназначена (нарушение этой категории называется хищением либо раскрытием информации); целостность — гарантия того, что информация сейчас существует в ее исходном виде, т. е. при ее хранении или передаче не было произведено несанкционированных изменений (нарушение этой категории называется фальсификацией сообщения); аутентичность — гарантия того, что источником информации является именно то лицо, которое заявлено как ее автор (нарушение этой категории также называется фальсификацией, но уже автора сообщения). В отношении информационных систем применяются иные категории: надежность — гарантия того, что система ведет себя в нормальном и внештатном режимах так, как запланировано; точность — гарантия точного и полного выполнения всех команд; контроль доступа — гарантия того, что различные группы лиц имеют различный доступ к информационным объектам, и эти ограничения доступа постоянно выполняются; контролируемость — гарантия того, что в любой момент может быть произведена полноценная проверка любого компонента программного комплекса; контроль идентификации — гарантия того, что клиент, подключенный в данный момент к системе, является именно тем, за кого себя выдает; устойчивость к умышленным сбоям — гарантия того, что при умышленном внесении ошибок в пределах заранее оговоренных норм система будет вести себя так, как оговорено заранее. 8.2. Основные способы защиты информации в вычислительной системе Обеспечение безотказности, или надежности доступа к информации, является одним из способов защиты информации. В табл. 8.1 описаны четыре уровня безотказности. Таблица 8.1 Уровни безотказности
Обеспечение определенного уровня конфиденциальности информации является одной из самых важных мер защиты, принимаемых в рассмотрение при создании определенной политики безопасности учреждения. В табл. 8.2 описаны уровни конфиденциальности информации. Таблица 8.2 Уровни конфиденциальности информации
При работе с информацией 1-го класса конфиденциальности рекомендуется выполнение следующих требований: осведомление сотрудников о закрытости данной информации; общее ознакомление сотрудников с основными возможными методами атак на информацию; ограничение физического доступа; полный набор документации по правилам выполнения операций с данной информацией. При работе с информацией 2-го класса конфиденциальности к перечисленным выше требованиям добавляются следующие: расчет рисков атак на информацию; поддержание списка лиц, имеющих доступ к данной информации; по возможности выдача подобной информации под расписку (в том числе электронную); автоматическая система проверки целостности системы и ее средств безопасности; надежные схемы физической транспортировки; обязательное шифрование при передаче по линиям связи; схема бесперебойного питания ЭВМ. При работе с информацией 3-го класса конфиденциальности ко всем перечисленным выше требованиям добавляются следующие: детальный план спасения либо надежного уничтожения информации в аварийных ситуациях (пожар, наводнение, взрыв); защита ЭВМ либо носителей информации от повреждения водой и высокой температурой; криптографическая проверка целостности информации. Функции каждого человека, так или иначе связанного с конфиденциальной информацией в организации, можно классифицировать и в некотором приближении формализовать. Подобное, общее описание функций носит название роли. В зависимости от размеров организации некоторые из перечисленных ниже ролей могут отсутствовать вообще, а некоторые могут совмещаться одним и тем же физическим лицом. Специалист по информационной безопасности играет основную роль в разработке и поддержании политики безопасности предприятия. Он проводит расчет и перерасчет рисков, ответствен за поиск самой свежей информации об обнаруженных уязвимостях в используемом программном обеспечении и в целом в стандартных алгоритмах. Владелец информации — лицо, непосредственно работающее с данной информацией. Зачастую только он в состоянии реально оценить класс обрабатываемой информации, а иногда и рассказать о нестандартных методах атак на нее (узкоспецифичных для этого вида данных). Поставщик аппаратного и программного обеспечения — обычно стороннее лицо, которое несет ответственность перед фирмой за поддержание должного уровня информационной безопасности в поставляемых им продуктах. Разработчик системы и (или) программного обеспечения играет основную роль в уровне безопасности разрабатываемой системы. На этапах планирования и разработки должен активно взаимодействовать со специалистами по информационной безопасности. Руководитель подразделения является промежуточным звеном между операторами и специалистами по информационной безопасности. Его задача — своевременно и качественно инструктировать подчиненный ему персонал обо всех требованиях службы безопасности и следить за их выполнением на рабочих местах. Руководители подразделений должны быть осведомлены обо всей политике безопасности организации, но доводить до сведения подчиненных только те ее аспекты, которые непосредственно их касаются. Политика безопасности — это комплекс превентивных мер по защите конфиденциальных данных и информационных процессов в организации. Политика безопасности включает в себя требования в адрес персонала, менеджеров и технических служб. Основные направления разработки политики безопасности: определение того, какие данные и насколько серьезно необходимо защищать; определение того, кто и какой ущерб может нанести организации в информационном аспекте; вычисление рисков и определение схемы уменьшения их до приемлемой величины. Существуют две системы оценки текущей ситуации в области информационной безопасности в организации. Они получили образные названия «исследование снизу вверх» и «исследование сверху вниз». Первый метод достаточно прост, требует намного меньших капитальных вложений, но и обладает меньшими возможностями. Он основан на известной схеме: «Вы — злоумышленник. Ваши действия?» То есть служба информационной безопасности, основываясь на данных о всех известных видах атак, пытается применить их на практике с целью проверки, а возможна ли такая атака со стороны реального злоумышленника. Метод «сверху вниз» представляет собой, наоборот, детальный анализ всей существующей схемы хранения и обработки информации. Первым этапом этого метода является, как и всегда, определение, какие информационные объекты и потоки необходимо защищать. Далее следует изучение текущего состояния системы информационной безопасности с целью определения, что из классических методик защиты информации уже реализовано, в каком объеме и на каком уровне. На третьем этапе производится классификация всех информационных объектов на классы в соответствии с ее конфиденциальностью, требованиями к доступности и целостности (неизменности). Далее следует выяснение того, насколько серьезный ущерб может принести организации раскрытие или иная атака на каждый конкретный информационный объект. Этот этап носит название «вычисление рисков». В первом приближении риском называется произведение «возможного ущерба от атаки» на «вероятность такой атаки». Существует множество схем вычисления рисков, остановимся на одной из самых простых4. Ущерб от атаки может быть представлен неотрицательным числом: — раскрытие информации принесет ничтожный моральный и финансовый ущерб организации; — ущерб от атаки есть, но он незначителен, основные финансовые операции и положение организации на рынке не затронуты; — финансовые операции не ведутся в течение некоторого времени, за это время организация терпит убытки, но ее положение на рынке и количество клиентов изменяются минимально; — значительные потери на рынке и в прибыли. От организации уходит ощутимая часть клиентов; — потери очень значительны, организация на период до года теряет положение на рынке. Для ввосстановления положения требуются крупные финансовые займы; — организация прекращает существование. Вероятность атаки представляется неотрицательным числом: — данный вид атаки отсутствует; — реже, чем раз в год; — около 1 раза в год; — около 1 раза в месяц; — около 1 раза в неделю; — практически ежедневно. Необходимо отметить, что классификацию ущерба, наносимого атакой, должен оценивать владелец информации или работающий с нею персонал. А вот оценку вероятности появления атаки лучше доверять техническим сотрудникам фирмы. Затем составляется таблица рисков организации (табл. 8.3). Таблица 8.3 Таблица рисков организации
На этапе анализа таблицы рисков задаются некоторым максимально допустимым риском, например значением 7. Сначала проверяется каждая строка таблицы на непревышение риска этого значения. Если такое превышение имеет место, значит, данная строка — это одна из первоочередных целей разработки политики безопасности. Затем производится сравнение удвоенного значения (в нашем случае 7x2 = 14) с интегральным риском (ячейка «Итого»). Если интегральный риск превышает допустимое значение, значит, набирается множество мелких погрешностей в системе безопасности, которые в сумме не дадут организации эффективно работать. В этом случае из строк выбираются те, которые дают самый значительный вклад в значение интегрального риска, и производится попытка их уменьшить или устранить полностью. На самом ответственном этапе производится собственно разработка политики безопасности предприятия, которая обеспечит надлежащие уровни как отдельных рисков, так и интегрального риска. При ее разработке необходимо, однако, учитывать объективные проблемы, которые могут встать на пути реализации политики безопасности. Такими проблемами могут стать законы страны и международного сообщества, внутренние требования корпорации, этические нормы общества. После описания всех технических и административных мер, планируемых к реализации, производится расчет экономической стоимости данной программы. В том случае когда финансовые вложения в программу безопасности являются неприемлемыми или просто экономически невыгодными по сравнению с потенциальным ущербом от атак, производится возврат на уровень, где мы задавались максимально допустимым риском 7, и увеличение его на один или два пункта. Завершается разработка политики безопасности ее утверждением у руководства организации и детальным документированием. За этим должна следовать активная реализация всех указанных в плане компонентов. Перерасчет таблицы рисков и как следствие модификация политики безопасности организации должны производиться раз в два года. 8.3. Антивирусная безопасность Общая характеристика и классификация компьютерных вирусов Под компьютерным вирусом (или просто вирусом) понимается автономно функционирующая программа, обладающая способностью к самостоятельному внедрению в тела других программ и последующему самовоспроизведению и самораспространению в информационно-вычислительных сетях и отдельных ЭВМ. Предшественниками вирусов принято считать так называемые троянские программы, тела которых содержат скрытые последовательности команд (модули), выполняющие действия, наносящие вред пользователям. Наиболее распространенной разновидностью троянских программ являются широко известные программы массового применения (редакторы, игры, трансляторы и т. д.), в которые встроены так называемые «логические бомбы», срабатывающие по наступлении некоторого события. Следует отметить, что троянские программы не являются саморазмножающимися. Принципиальное отличие вируса от троянской программы состоит в том, что вирус после его активизации существует самостоятельно (автономно) и в процессе своего функционирования заражает (инфицирует) программы путем включения (имплантации) в них своего текста. Таким образом, компьютерный вирус можно рассматривать как своеобразный «генератор троянских программ». Программы, зараженные вирусом, называютсявирусоносителями. Заражение программы, как правило, выполняется таким образом, чтобы вирус получил управление раньше самой программы. Для этого он либо встраивается в начало программы, либо имплантируется в ее тело так, что первой командой зараженной программы является безусловный переход на компьютерный вирус, текст которого заканчивается аналогичной командой безусловного перехода на команду вирусоносителя, бывшую первой до заражения. Получив управление, вирус выбирает следующий файл, заражает его, возможно, выполняет какие-либо другие действия, после чего отдает управление вирусоносителю. «Первичное» заражение происходит в процессе поступления инфицированных программ из памяти одной машины в память другой, причем в качестве средства перемещения этих программ могут использоваться как носители информации (дискеты, оптические диски, флэш-память и т. п.), так и каналы вычислительных сетей. Вирусы, использующие для размножения сетевые средства, принято называть сетевыми. Цикл жизни вируса обычно включает следующие периоды: внедрение, инкубационный, репликации (саморазмножения) и проявления. В течение инкубационного периода вирус пассивен, что усложняет задачу его поиска и нейтрализации. На этапе проявления вирус выполняет свойственные ему целевые функции, например необратимую коррекцию информации в компьютере или на магнитных носителях. Физическая "структура компьютерного вируса достаточно проста. Он состоит из головы и, возможно, хвоста. Под головой вируса понимается его компонента, получающая управление первой. Хвост — это часть вируса, расположенная в тексте зараженной программы отдельно от головы. Вирусы, состоящие из одной головы, называют несегментированными, тогда как вирусы, содержащие голову и хвост, — сегментированными. Наиболее существенные признаки компьютерных вирусов позволяют провести следующую их классификацию (рис. 8.1).
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Файловые поражают Загрузочные поражают ![]() ![]() ![]() ![]() Исполняемые файлы Системный загрузчик ![]() ![]() ![]() ![]() Командные файлы и файлы конфигурации Внесистемный загрузчик ![]() ![]() Файлы с макросами ![]() Файлы с драйверами устройств ![]() Файлы с библиотеками ![]() По режиму функционирования: резидентные вирусы (вирусы, которые после активизации постоянно находятся в оперативной памяти компьютера и контролируют доступ к его ресурсам); транзитные вирусы (вирусы, которые выполняются только в момент запуска зараженной программы). По объекту внедрения: файловые вирусы (вирусы, заражающие файлы с программами); загрузочные вирусы (вирусы, заражающие программы, хранящиеся в системных областях дисков). В свою очередь, файловые вирусы подразделяются на вирусы, заражающие: исполняемые файлы; командные файлы и файлы конфигурации; составляемые на макроязыках программирования, или файлы, содержащие макросы (макровирусы); — файлы с драйверами устройств; файлы с библиотеками исходных, объектных, загрузочных и оверлейных модулей, библиотеками динамической компоновки и т. п. Загрузочные вирусы подразделяются на вирусы, заражающие: — системный загрузчик, расположенный в загрузочном секторе дискет и логических дисков; — внесистемный загрузчик, расположенный в загрузочном секторе жестких дисков. По степени и способу маскировки:' — вирусы, не использующие средств маскировки; — stealth-вирусы (вирусы, пытающиеся быть невидимыми на основе контроля доступа к зараженным элементам данных); вирусы-мутанты (MtE-вирусы, содержащие в себе алгоритмы шифрования, обеспечивающие различие разных копий вируса). В свою очередь, MtE-вирусы делятся: на обычные вирусы-мутанты, в разных копиях которых различаются только зашифрованные тела, а дешифрованные тела вирусов совпадают; полиморфные вирусы, в разных копиях которых различаются не только зашифрованные тела, но и их дешифрованные тела. Наиболее распространенные типы вирусов характеризуются следующими основными особенностями. Файловый транзитный вирус целиком размещается в исполняемом файле -, в связи с чем он активизируется только в случае активизации вирусоносителя, а по выполнении необходимых действий возвращает управление самой программе. При этом выбор очередного файла для заражения осуществляется вирусом посредством поиска по каталогу. Файловый резидентный вирус отличается от нерезидентного логической структурой и общим алгоритмом функционирования. Резидентный вирус состоит из так называемого инсталлятора и программ обработки прерываний. Инсталлятор получает управление при активизации вирусоносителя и инфицирует оперативную память путем размещения в ней управляющей части вируса и замены адресов в элементах вектора прерываний на адреса своих программ, обрабатывающих эти прерывания. На так называемой фазе слежения, следующей за описанной фазой инсталляции, при возникновении какого-либо прерывания управление получает соответствующая подпрограмма вируса. В связи с существенно более универсальной по сравнению с нерезидентными вирусами общей схемой функционирования резидентные вирусы могут реализовывать самые разные способы инфицирования. Наиболее распространенными способами являются инфицирование запускаемых программ, а также файлов при их открытии или чтении. Отличительной особенностью последних является инфицирование загрузочного сектора магнитного носителя. Голова загрузочного вируса всегда находится в загрузочном секторе (единственном для гибких дисков и одном из двух — для жестких), а хвост — в любой другой области носителя. Наиболее безопасным для вируса способом считается размещение хвоста в так называемых псевдосбойных кластерах, логически исключенных из числа доступных для использования. Существенно, что хвост загрузочного вируса всегда содержит копию оригинального (исходного) загрузочного сектора. Stealth-вирусы пользуются слабой защищенностью некоторых операционных систем и заменяют некоторые их компоненты (драйверы дисков, прерывания) таким образом, что вирус становится невидимым (прозрачным) для других программ. Полиморфные вирусы содержат алгоритм порождения дешифрованных тел вирусов, непохожих друг на друга. При этом в алгоритмах дешифрования могут встречаться обращения практически ко всем командам процессора Intel и даже использоваться некоторые специфические особенности его реального режима функционирования. Макровирусы распространяются под управлением прикладных программ, что делает их независимыми от операционной системы. Подавляющее число макровирусов функционирует под управлением текстового процессора Microsoft Word. В то же время известны макровирусы, работающие под управлением таких приложений, как Microsoft Excel, Lotus Ami Pro, Lotus 1-2-3, Lotus Notes, в операционных системах фирм Microsoft и Apple. Сетевые вирусы, называемые также автономными реплика- тивными программами, или, для краткости, репликаторами, используют для размножения средства сетевых операционных систем. Наиболее просто реализуется размножение в тех случаях, когда сетевыми протоколами предусмотрен обмен программами. Однако размножение возможно и в тех случаях, когда указанные протоколы ориентированы только на обмен сообщениями. Классическим примером реализации процесса размножения с использованием только стандартных средств электронной почты является репликатор Морриса. Текст репликатора передается от одной ЭВМ к другой как обычное сообщение, постепенно заполняющее буфер, выделенный в оперативной памяти ЭВМ-адресата. В результате переполнения буфера, инициированного передачей, адрес возврата в программу, вызвавшую программу приема сообщения, замещается на адрес самого буфера, где к моменту возврата уже находится текст вируса. Тем самым вирус получает управление и начинает функционировать на ЭВМ-адресате. «Лазейки», подобные описанной выше и обусловленные особенностями реализации тех или иных функций в программном обеспечении, являются объективной предпосылкой для создания и внедрения репликаторов злоумышленниками. Эффекты, вызываемые вирусами в процессе реализации ими целевых функций, принято делить на следующие группы: искажение информации в файлах либо в таблице размещения файлов (FAT-таблице), которое может привести к разрушению файловой системы в целом; имитация сбоев аппаратных средств; создание звуковых и визуальных эффектов, включая, например, отображение сообщений, вводящих оператора в заблуждение или затрудняющих его работу; инициирование ошибок в программах пользователей или операционной системе. Общая характеристика средств нейтрализации компьютерных вирусов Наиболее распространенным средством нейтрализации компьютерных вирусов являются антивирусные программы (антивирусы). Антивирусы, исходя из реализованного в них подхода к выявлению и нейтрализации вирусов, принято делить на следующие группы (рис. 8.2): детекторы; фаги; вакцины; прививки; ревизоры; мониторы.
Рис. 8.2 Классификация антивирусов Детекторы обеспечивают выявление вирусов посредством просмотра исполняемых файлов и поиска так называемых сигнатур — устойчивых последовательностей байтов, имеющихся в телах известных вирусов. Наличие сигнатуры в каком-либо файле свидетельствует о его заражении соответствующим вирусом. Антивирус, обеспечивающий возможность поиска различных сигнатур, называют полидетектором. Фаги выполняют функции, свойственные детекторам, но, кроме того, «излечивают» инфицированные программы посредством «выкусывания» вирусов из их тел. По аналогии с полидетекторами фаги, ориентированные на нейтрализацию различных вирусов, именуют полифагами. В отличие от детекторов и фагов вакцины по своему принципу действия подобны вирусам. Вакцина имплантируется в защищаемую программу и запоминает ряд количественных и структурных характеристик последней. Если вакцинированная программа не была к моменту вакцинации инфицированной, то при первом же после заражения запуске произойдет следующее. Активизация вирусоносителя приведет к получению управления вирусом, который, выполнив свои целевые функции, передаст управление вакцинированной программе. В последней, в свою очередь, сначала управление получит вакцина, которая выполнит проверку соответствия запомненных ею характеристик аналогичным характеристикам, полученным в текущий момент. Если указанные наборы характеристик не совпадают, то делается вывод об изменении текста вакцинированной программы вирусом. Характеристиками, используемыми вакцинами, могут быть длина программы, ее контрольная сумма и т. д. Принцип действия прививок основан на учете того обстоятельства, что любой вирус, как правило, помечает инфицируемые программы каким-либо признаком, с тем чтобы не выполнять их повторное заражение. В ином случае имело бы место многократное инфицирование, сопровождаемое существенным и поэтому легко обнаруживаемым увеличением объема зараженных программ. Прививка, не внося никаких других изменений в текст защищаемой программы, помечает ее тем же признаком, что и вирус, который таким образом после активизации и проверки наличия указанного признака считает ее инфицированной и «оставляет в покое». Ревизоры обеспечивают слежение за состоянием файловой системы, используя для этого подход, аналогичный реализованному в вакцинах. Программа-ревизор в процессе своего функционирования выполняет применительно к каждому исполняемому файлу сравнение erg текущих характеристик с аналогичными характеристиками, полученными в ходе предшествующего просмотра файлов. Если при этом обнаруживается, что, согласно имеющейся системной информации, файл с момента предшествующего просмотра не обновлялся пользователем, а сравниваемые наборы характеристик не совпадают, то файл считается инфицированным. Характеристики исполняемых файлов, получаемые в ходе очередного просмотра, запоминаются в отдельном файле (файлах), в связи с чем увеличение длин исполняемых файлов, имеющее место при вакцинации, в данном случае не происходит. Другое отличие ревизоров от вакцин состоит в том, что каждый просмотр исполняемых файлов ревизором требует его повторного запуска. Монитор представляет собой резидентную программу, обеспечивающую перехват потенциально опасных прерываний, характерных для вирусов, и запрашивающую у пользователей подтверждение на выполнение операций, следующих за прерыванием. В случае запрета или отсутствия подтверждения монитор блокирует выполнение пользовательской программы. Классификация методов защиты от компьютерных вирусов Проблему защиты от вирусов необходимо рассматривать в общем контексте проблемы защиты информации от несанкционированного доступа и технологической и эксплуатационной безопасности компьютерных технологий в целом. Основной принцип, который должен быть положен в основу разработки технологии защиты от вирусов, состоит в создании многоуровневой распределенной системы защиты, включающей: регламентацию проведения работ на ПЭВМ; применение программных средств защиты; использование специальных аппаратных средств защиты. При этом количество уровней защиты зависит от ценности информации, которая обрабатывается на ПЭВМ. Для защиты от компьютерных вирусов в настоящее время используются методы, указанные на рис. 8.3.
Рис. 8.3. Методы защиты от компьютерных вирусов Архивирование. Заключается в копировании системных областей магнитных дисков и ежедневном ведении архивов измененных файлов. Архивирование является одним из основных методов защиты от вирусов. Остальные методы защиты дополняют его, но не могут заменить полностью. Входной контроль. Проверка всех поступающих программ детекторами, а также проверка длин и контрольных сумм вновь поступающих программ на соответствие значениям, указанным в документации. Большинство известных файловых и бутовых вирусов можно выявить на этапе входного контроля. Для этой цели используется батарея детекторов (несколько последовательно запускаемых программ). Набор детекторов достаточно широк и постоянно пополняется по мере появления новых вирусов. Однако при этом могут быть обнаружены не все вирусы, а только распознаваемые детектором. Следующим элементом входного контроля является контекстный поиск в файлах слов и сообщений, которые могут принадлежать вирусу (например, Virus, COMMAND.COM, Kill и т. д.). Подозрительным является отсутствие в последних 2—3 Кб файла текстовых строк — это может быть признаком вируса, который шифрует свое тело. Рассмотренный контроль может быть выполнен с помощью специальной программы, которая работает с базой данных «подозрительных» слов и сообщений и формирует список файлов для дальнейшего анализа. После проведенного анализа новые программы рекомендуется несколько дней эксплуатировать в карантинном режиме. При этом целесообразно использовать ускорение календаря, т. е. изменять текущую дату при повторных запусках программы. Это позволяет обнаружить вирусы, срабатывающие в определенные дни недели (пятница, 13-е число месяца, воскресенье и т. д.). Профилактика. Для профилактики заражения необходимо организовать раздельное хранение (на разных магнитных носителях) вновь поступающих и ранее эксплуатировавшихся программ, минимизацию периодов доступности дискет для записи, разделение общих магнитных носителей между конкретными пользователями. Ревизия. Анализ вновь полученных программ специальными средствами (детекторами), контроль целостности перед считыванием информации, а также периодический контроль состояния системных файлов. Карантин. Каждая новая программа проверяется на известные типы вирусов в течение определенного промежутка времени. Для этих целей целесообразно выделить специальную ПЭВМ, на которой не проводятся другие работы. В случае невозможности выделения ПЭВМ для карантина программного обеспечения для этой цели используется машина, отключенная от локальной сети и не содержащая особо ценной информации. Сегментация. Предполагает разбиение магнитного диска на ряд логических томов (разделов), часть из которых имеет статус READ_ONLY (только чтение). В данных разделах хранятся выполняемые программы и системные файлы. Базы данных должны храниться в других секторах, отдельно от выполняемых программ. Важным профилактическим средством в борьбе с файловыми вирусами является исключение значительной части загрузочных модулей из сферы их досягаемости. Этот метод называется сегментацией и основан на разделении магнитного диска с помощью специального драйвера, обеспечивающего присвоение отдельным логическим томам атрибута READ_ONLY (только чтение), а также поддерживающего схемы парольного доступа. При этом в защищенные от записи разделы диска помещаются исполняемые программы и системные утилиты, а также системы управления базами данных и трансляторы, т. е. компоненты программного обеспечения, наиболее подверженные опасности заражения. В качестве такого драйвера целесообразно использовать программы типа ADVANCED DISK MANAGER (программа для форматирования и подготовки жесткого диска), которые позволяют не только разбить диск на разделы, но и организовать доступ к ним с помощью паролей. Количество используемых логических томов и их размеры зависят от решаемых задач и объема винчестера. Рекомендуется использовать 3—4 логических тома, причем на системном диске, с которого выполняется загрузка, следует оставить минимальное количество файлов (системные файлы, командный процессор, а также программы-ловушки). Фильтрация. Заключается в использовании программ-сторожей для обнаружения попыток выполнить несанкционированные действия. Вакцинация. Специальная обработка файлов и дисков, имитирующая сочетание условий, которые используются некоторым типом вируса для определения, заражена уже программа или нет. Автоконтроль целостности. Заключается в использовании специальных алгоритмов, позволяющих после запуска программы определить, были ли внесены изменения в ее файл. Терапия. Предполагает дезактивацию конкретного вируса в зараженных программах специальными программами (фагами). Программы-фаги «выкусывают» вирус из зараженной программы и пытаются восстановить ее код в исходное состояние (состояние до момента заражения). В общем случае технологическая схема защиты может состоять из следующих этапов: входной контроль новых программ; сегментация информации на магнитном диске; защита операционной системы от заражения; систематический контроль целостности информации. Необходимо отметить, что не следует стремиться обеспечить глобальную защиту всех файлов, имеющихся на диске. Это существенно затрудняет работу, снижает производительность системы и в конечном счете ухудшает защиту из-за частой работы в открытом режиме. Анализ показывает, что только 20—30% файлов должны быть защищены от записи. Анализ рассмотренных методов и средств защиты показывает, что эффективная защита может быть обеспечена при комплексном использовании различных средств в рамках единой операционной среды. Для этого необходимо разработать интегрированный программный комплекс, поддерживающий рассмотренную технологию защиты. В состав программного комплекса должны входить компоненты, указанные на рис. 8.4.
Рис. 8.4. Состав программного комплекса защиты от компьютерных вирусов Семейство (батарея) детекторов. Детекторы, включенные в семейство, должны запускаться из операционной среды комплекса. При этом должна быть обеспечена возможность подключения к семейству новых детекторов, а также указание параметров их запуска из диалоговой среды. С помощью данной компоненты может быть организована проверка ПО на этапе входного контроля. Программа — ловушка вирусов. Данная программа порождается в процессе функционирования комплекса, т. е. не хранится на диске, поэтому оригинал не может быть заражен. В процессе тестирования ПЭВМ программа-ловушка неоднократно выполняется, изменяя при этом текущую дату и время (организует ускоренный календарь). Наряду с этим программа-ловушка при каждом запуске контролирует свою целостность (размер, контрольную сумму, дату и время создания). В случае обнаружения заражения программный комплекс переходит в режим анализа зараженной программы-ловушки и пытается определить тип вируса. Программа для вакцинации. Предназначена для изменения среды функционирования вирусов таким образом, чтобы они теряли способность к размножению. Известно, что ряд вирусов помечает зараженные файлы для предотвращения повторного заражения. Используя это свойство, возможно создание программы, которая обрабатывала бы файлы таким образом, чтобы вирус считал, что они уже заражены. База данных о вирусах и их характеристиках. Предполагается, что в базе данных будет храниться информация о существующих вирусах, их особенностях и сигнатурах, а также рекомендуемая стратегия лечения. Информация из БД может использоваться при анализе зараженной программы-ловушки, а также на этапе входного контроля ПО. Кроме того, на основе информации, хранящейся в БД, можно выработать рекомендации по использованию наиболее эффективных детекторов и фагов для лечения от конкретного типа вируса. Резидентные средства защиты. Эти средства могут резидентно разместиться в памяти и постоянно контролировать целостность системных файлов и командного процессора. Проверка может выполняться по прерываниям от таймера или при выполнении операций чтения и записи в файл. |