Хранение и защита информации. Учебное пособие
.pdf41
- специальные программы для защиты от вирусов.
Общие средства защиты информации предусматривают сле-
дующие мероприятия:
-копирование информации - создание копий файлов и системных областей диска;
-создание средств, предотвращающих несанкционированное использование информации. Такие средства ограничат доступ к системе посторонним лицам и тем самым обеспечат защиту от появления в системе неправильно работающих программ и вирусов, а также от ошибочных действий несанкционированного пользователя.
Общие средства защиты информации очень важны для защиты от вирусов, но все же их недостаточно. Необходимо и применение специализированных программ для защиты от вирусов. Существует несколько типов таких программ: детекторы, доктора (фаги), ревизоры, доктораревизоры, фильтры и вакцины (иммунизаторы).
Детекторы или, иначе, сканеры позволяют обнаруживать файлы, зараженные одним из нескольких известных вирусов. Эти программы проверяют, имеется ли в файлах на указанном пользователем диске специфическая для данного вируса сигнатура. При ее обнаружении в какомлибо файле на экран выводится соответствующее сообщение. Программыдетекторы могут обнаруживать только те вирусы, сигнатуры которых имеются в их базах. К такому типу программ относятся программы сканирования устройств внешней памяти.
Сканеры делятся на резидентные, производящие сканирование "на лету", и нерезидентные, обеспечивающие проверку системы только по запросу. Резидентные сканеры, как правило, обеспечивают более надежную защиту системы, поскольку они немедленно реагируют на появление вируса. Нерезидентный сканер способен опознать вирус только во время своего очередного запуска.
Большинство программ-детекторов имеют функцию доктора, т.е. пытаются вылечить зараженные файлы или вернуть области диска в их исходное состояние. В начале своей работы фаги находят вирусы в ОП, уничтожают их
итолько затем переходят к лечению файлов. Те файлы, которые не удалось восстановить, как правило, делаются неработоспособными или удаляются. К таким программам относится одна из самых известных антивирусных программ Aidstest Дмитрия Лозинского. Для сканеров и докторов важна периодичность появления новых версий (апдейтов), т.е. скорость настройки сканера на новые вирусы.
Широко распространенная антивирусная программа Dr. Web ("Лечебная паутина") фирмы "Диалог Наука" также относится к классу детекторов-докторов. В отличие от Aidstest программа Dr. Web имеет так называемый эвристический анализатор, позволяющий обнаружить новые вирусы. Работа эвристических анализаторов состоит в поиске
42
последовательностей кода (исполняемых команд), характерных для того или иного типа вирусов. Выполнение эвристического анализа требует определенного времени, и программа Dr. Web работает медленнее, чем Aidstest.
Антивирус Antiviral Toolkit Pro или AVP лаборатории Касперского признан во всем мире как один из самых надежных. Он обладает всем необходимым арсеналом для борьбы с вирусами. AVP выполняет эвристический анализ, сканирует архивы и упакованные файлы и обладает рядом других весьма полезных возможностей для "вылавливания" и уничтожения вирусов.
Программы-ревизоры имеют две стадии работы. Сначала они запоминают сведения о состоянии программ и системных областей дисков (загрузочного сектора и сектора с таблицей разбиения жесткого диска). Предполагается, что в этот момент программы и системные области дисков не заражены. После этого с помощью программы-ревизора можно в любой момент сравнить состояние программ и системных областей дисков с исходным. О выявленных несоответствиях сообщается пользователю.
Для выявления изменений в файле некоторые программы-ревизоры проверяют длину файла. Но эта проверка недостаточно надежна, поскольку некоторые вирусы не изменяют длину зараженных файлов. Более надежная проверка – это чтение всего файла и вычисление его контрольной суммы. Изменить файл так, чтобы его контрольная сумма осталась прежней, практически невозможно.
В последнее время появились очень полезные гибриды ревизоров и докторов - доктора-ревизоры. Эти программы не только обнаруживают изменения в файлах и системных областях дисков, но и могут в случае изменений автоматически вернуть их в исходное состояние. Такие программы могут быть гораздо более универсальными, чем программы-доктора, поскольку при лечении они используют заранее сохраненную информацию о состоянии файлов и областей дисков. Это позволяет им вылечивать файлы от стелсвирусов и даже от тех вирусов, которые не были созданы на момент написания программы. Но и они могут лечить не от всех вирусов, а только от тех, которые используют "стандартные", известные на момент написания программы механизмы заражения файлов.
Программы-фильтры располагаются резидентно в ОП компьютера и перехватывают те обращения к операционной системе, которые используются вирусами для размножения и нанесения вреда. Пользователь может разрешить или запретить выполнение соответствующей операции.
Некоторые программы-фильтры не "ловят" подозрительные действия, а проверяют вызываемые на выполнение программы на наличие вирусов. Это вызывает замедление работы компьютера. Однако преимущества использования программ-фильтров весьма значительны - они позволяют обнаружить многие вирусы на самой ранней стадии, когда вирус еще не успел раз-
43
множиться и что-либо испортить. Тем самым можно свести убытки от вируса к минимуму.
Программы-вакцины или иммунизаторы модифицируют программы и диски таким образом, что это не отражается на работе программ, но тот вирус, от которого производится вакцинация, считает эти программы или диски уже зараженными и поэтому не внедрится. Эти программы не нашли широкого применения, поскольку имеют ограниченные возможности по предотвращению заражения от большого числа разнообразных вирусов.
Итак, для защиты компьютеров от вирусов следует соблюдать следующие основные правила:
1.Не использовать нелицензионные или непроверенные про-
граммы.
2.Иметь на компьютере один или несколько пакетов антивирусных программ, регулярно обновляя их.
3.Не открывать внешние носители без предварительной проверки их антивирусными программами. Не пользоваться чужими внешними носителями информации без предварительной проверки. Не передавать свои внешние носители другим лицам.
4.Не запускать на компьютере программы, назначение которых неизвестно или непонятно.
5.При переносе на компьютер архивированных файлов сразу же после распаковки проверять их антивирусными программами.
6.Не оставлять внешние носители в дисководе при включении и выключении компьютера во избежание заражения их загрузочными вирусами.
7.Обязательно делать на внешних носителях копии всех ценных для вас файлов.
8.Периодически проверять жесткий диск на наличие вирусов.
9.С особой осторожностью относиться к файлам, скачанным из Интернета.
10.Использовать антивирусные программы для входного контроля информации, поступающей по сети.
11.Не раскрывать вложения в электронное письмо, если их наличие вам непонятно.
9. Криптографические методы защиты информации
9.1. Терминология
Криптография (в переводе с греческого "тайнопись") – это наука, изучающая приемы и методы преобразования текста в форму, непонятную обычному пользователю. Использование криптографии является одним из методов, позволяющих усилить защиту КС от несанкционированного доступа и значительно повышающих безопас-
44
ность передачи данных в сетях ЭВМ. Для целей криптографии используется как шифрование, так и кодирование сообщений.
Коды и шифры использовались уже сотни и тысячи лет. С теоретической точки зрения не существует четкого различия между кодами и шифрами. Однако в современной практике различие между ними достаточно четко.
Под шифрованием понимается процесс, при котором криптографическому преобразованию подвергается каждый символ открытого текста. В результате шифрования текст представляет собой бессмысленных набор символов. Зашифрованные данные становятся доступными только тому, кто знает, как их расшифровать, и поэтому похищение зашифрованных данных бессмысленно для несанкционированных пользователей.
Кодирование – это процесс замены элементов открытого текста (символов, комбинаций символов, слов) кодами. В качестве кодов могут использоваться сочетания букв, цифр, букв и цифр. При кодировании и обратном преобразовании используются специальные таблицы или словари. Недостатками кодирования конфиденциальной информации является необходимость хранения и распространения кодировочных таблиц, которые необходимо часто менять, чтобы избежать раскрытия кодов статистическими методами обработки перехваченных сообщений.
Людей, занимающихся криптографией, называют криптологами. Наука о вскрытии шифров носит название криптоанализ. Специалистов по криптоанализу называют криптоаналитиками.
Зашифрованием данных называется процесс преобразования открытых данных в зашифрованные с помощью шифра, а расшифрованием данных – процесс преобразования закрытых данных в открытые с помощью шифра.
Шифрованием будем называть процесс зашифрования или расшифрования данных.
Для шифрования информации используются алгоритм преобразования и ключ. Как правило, алгоритм для определенного метода шифрования является неизменным. Исходными данными для алгоритма шифрования служат информация, подлежащая зашифрованию, и ключ шифрования. Ключ содержит управляющую информацию, которая определяет выбор преобразования на определенных шагах алгоритма и величины операндов, используемых при реализации алгоритма шифрования.
Методом шифрования или шифром называется совокупность обратимых преобразований открытой информации в закрытую информацию в соответствии с алгоритмом шифрования.
Ключ – легко изменяемая часть криптосистемы, хранящаяся в
45
тайне. Ключ содержит управляющую информацию, которая определяет выбор преобразования на определенных шагах алгоритма и величины операндов, используемые при реализации алгоритма шифрования. Часто ключ представляет собой последовательность ряда букв алфавита.
Криптостойкостью называется характеристика шифра, определяющая его стойкость к дешифрованию без знания ключа. Обычно эта характеристика определяется периодом времени, необходимым для дешифрования.
Криптостойкость зашифрованных сообщений определяется секретностью ключа. Это значит, что даже если сам алгоритм шифрования известен криптоаналитику, тот не сможет расшифровать сообщение, не располагая соответствующим ключом.
Различают системы шифрования с закрытым ключом (симметричные) и системы шифрования с открытым ключом (асимметричные)
В криптосистемах с закрытым ключом для шифрования и для дешифрования используется один и тот же ключ. В таких системах отправитель и получатель до начала взаимодействия договариваются о том, какой именно ключ будет использоваться. Так как отправитель и получатель - единственные люди, которые знают этот симметричный ключ, при компрометации ключа будет скомпрометировано только взаимодействие этих двух пользователей.
В системах с открытым ключом используются два ключа – открытый и закрытый, которые математически связаны друг с другом. Информация шифруется с помощью открытого ключа, который доступен всем желающим, а расшифровывается с помощью закрытого ключа, известного только получателю сообщения.
Рассмотрим несколько криптографических методов, использующих закрытый ключ.
9.2. Метод подстановки
Метод подстановки или, иначе, метод замены, как и многие прочие методы шифрования, основан на замене букв их числовыми эквивалентами. Численные значения, соответствующие буквам алфавита, с помощью формулы преобразуются в иное число. В процессе шифрования каждый символ исходного сообщения заменяется другим символом в соответствии с полученным числом.
В криптографии используются моноалфавитная и полиалфавитная подстановки. При моноалфавитной подстановке исходный и зашифрованный тексты записаны символами одного и того же алфавита. Полиалфавитная подстановка использует для шифрования несколько алфавитов.
46
Рассмотрим метод моноалфавитной подстановки или, иначе, метод простой замены.
В алфавите каждый символ имеет свой порядковый номер. Например, символы кириллического алфавита имеют следующие порядковые номера:
Номера букв русского алфавита
Буква |
А |
Б |
В |
Г |
Д |
Е |
Ж |
3 |
И |
Й |
К |
Л |
|
|
|
|
|
|
|
|
|
|
|
|
|
Номер |
01 |
02 |
03 |
04 |
05 |
06 |
07 |
08 |
09 |
10 |
11 |
12 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Буква |
М |
Н |
О |
П |
Р |
С |
Т |
У |
Ф |
X |
Ц |
Ч |
|
|
|
|
|
|
|
|
|
|
|
|
|
Номер |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
|
|
|
|
|
|
|
|
|
|
|
|
|
Буква |
Ш |
Щ |
Ъ |
Ы |
Ь |
Э |
Ю |
Я |
(пробел) |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
Номер |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
При шифровании каждый текущий символ исходного сообщения, имеющий номер m, заменяется символом, имеющим номер n.
В качестве основы шифра моноалфавитной подстановки часто используется следующая формула, связывающая значения n и m:
n = (k1 m +k2) mod К,
где m —номер текущего символа открытого текста (номер буквы в алфавите);
k1 и k2— коэффициенты (целые константы); n — номер подстановочного символа;
К — длина используемого алфавита.
Для кириллического алфавита значение коэффициента k1 – любое целое число, значение коэффициента k2 находится в диапазоне от
1 до 33.
При получении n = 0 выполняется замена n = 33.
Пример.
Примем: k1 =2, k2 = 9, К = 33.
Ключ:
Алфавит |
А Б В Г Д Е Ж З И Й К Л М Н О П Р С |
|
Подстановки К М О Р Т Ф Ц Ш Ъ Ь Ю |
Б Г Е З Й Л |
|
Алфавит |
Т У Ф Х Ц Ч Ш Щ Ъ Ы Ь Э Ю Я |
|
Подстановки |
Н П С У Х Ч Щ Ы Э Я |
А В Д Ж И |
47
Исходный текст: ШИФРОВАНИЕ ЗАМЕНОЙ Зашифрованный текст: ЩЪСЙЕОКГЪФИШКБФГЕЬ
Пример расчетов: для буквы Ш: m = 25; n = (2*25+9) mod 33 = =26 – это символ Щ;
для буквы И: m = 9; n = (2*9+9) mod 33 = 27 – это символ Ъ;
для буквы Ф: m = 21; n = (2*21+9) mod 33 = 18 – это символ С.
Расшифровывается текст обратной подстановкой.
Частным случаем метода моноалфавитной подстановки является шифр Цезаря, которым он шифровал письма Цицерону. В качестве основы этого шифра использовалась вышеприведенная формула с коэффициентами k1 = 1, k2 = 2 и К =27.
Основным недостатком рассмотренного метода моноалфавитной подстановки является то, что частоты повторения букв в исходном тексте сохраняются и в зашифрованном тексте. Для любого языка, основанного на определенном алфавите (например, кириллическом или латинском), известна частота повторения символов в словах. Например, для латинского алфавита символ Е встречается 123 раза на каждые 1000 символов текста, символы Т – 9.6 раза, А – 8.1 раза, О- 7.9 раза и т.д. С помощью статистического анализа частоты повторяемости символов в произвольном достаточно длинном тексте зашифрованного сообщения можно восстановить исходное сообщение.
9.3. Полиалфавитная подстановка
Этот метод также основан на замене букв их числовыми эквивалентами. Метод обеспечивает маскировку естественной частотной статистики исходного языка. При шифровании этим методом один и тот же символ исходного алфавита, содержащийся в открытом тексте, оказывается преобразованным в несколько различных символов.
Принцип работы алгоритма полиалфавитной подстановки рассмотрим на примере шифрования следующего исходного текста
АЛЕКС _ ЮСТАСУ В качестве ключа возьмем шестибуквенное слово ПРИКАЗ.
Запишем под каждой буквой исходного текста соответствующую букву ключа:
А Л Е К С
Ю С Т А С У П Р И К А З П Р И К А З
Каждый символ исходного текста (его числовой эквивалент) просуммируем с соответствующим символом ключа (его числовым эквивалентом). Сложение выполним по mod 33.
Получим зашифрованный текст Р Ь О Х Т З Н Б Ы Л Т Э
48
Пример расчетов:
для буквы А: (1 + 16) mod 33 = 17 - это буква Р; для буквы Л: (12 + 17) mod 33 =29 – это буква Ь; для символа :(33 + 8) mod 33 = 8 - это буква З.
Можно заметить, что в процессе шифрования второго слова исходного текста символ А заменен символом Л: (1 + 11) mod 33 = 12.
При таком шифровании каждый символ ключа сдвигает соответствующий символ исходного текста на определенное число позиций. Символ П дает сдвиг на 16 позиций, символ Р – на 17 позиций, символ К – на 9 позиций и т.д. В результате один и тот же символ исходного текста будет заменен разными символами, так как окажется сдвинутым на разное число позиций в зависимости от "своего" ключевого символа. Это затрудняет проведение частотного анализа и обеспечивает более высокую криптостойкость шифра. Каждый символ ключа рассматривается как отдельный алфавит. Следовательно, в нашем примере используется шестиалфавитный шифр подстановки.
9.4. Метод перестановки
Вэтом шифре буквы открытого текста не замещаются на другие, а меняется сам порядок их следования. Например, в шифре простой колонной перестановки исходный открытый текст записывается построчно (число букв в строке фиксировано), а шифротекст получается считыванием букв по колонкам. При расшифровании шифротекст записывается поколонно, а открытый текст читается по горизонтали.
Зашифруем следующий текст, приняв число букв в строке равным 6.
ШИФРОВАНИЕ ПЕРЕСТАНОВКОЙ Запишем текст в виде матрицы, число букв в строке – 6. ШИФРОВ А Н И Е_П Е Р Е С ТА НО В КОЙ
Зашифрованный текст (пишем буквы по столбцам): ШАЕНИНРОФИЕВРЕСКО_ТОВПАЙ Расположив буквы шифротекста по столбцам, а затем прочитав
их по строкам, получим исходный текст.
Вкачестве ключа при шифровании методом перестановки можно задавать перестановочную таблицу.
Вкачестве примера рассмотрим перестановку, задаваемую таб-
лицей:
49
При этом открытый текст разбивается на отдельные сообщения по 6 символов и в каждом сообщении буквы переставляются следующим порядком: первый знак становится шестым, второй — четвертым и т.д. Тогда приведенный выше открытый текст преобразуется в следующий шифротекст:
Р Ф О И В Ш Е И Н П А С Е Т Р А Е К В О О Й Н
Расшифрование производится с помощью этой же таблицы: шестой символ становится первым, четвертый – вторым и т.д.
Существуют более сложные шифры перестановки, однако почти все они легко взламываются с помощью компьютера. Тем не мене перестановки используются в современных криптографических алгоритмах, хотя область их применения весьма ограничена. Методы подстановки (замены) используются значительно чаще.
Для повышения криптостойкости к шифротексту можно дополнительно применить метод подстановки. При многократном чередовании этих методов можно получить очень стойкий шифр.
9.5. Краткий обзор других методов криптографии
В современной криптологии широко используются методы шифрования, основанные на использовании генераторов псевдослучайных чисел. Следующие один за другим псевдослучайные числа, вырабатываемые таким генератором, можно использовать как последовательность, из которой выбираются ключи. Каждый ключ затем объединяется некоторым обратимым образом с соответствующим текстом. Полученный зашифрованный текст достаточно труден для раскрытия, поскольку ключ теперь является переменным. Вместо того, чтобы иметь некоторое определенное число или группу символов, повторяемых снова и снова (см. полиалфавитную подстановку), ключ изменяется случайным образом для каждого слова исходного текста. Расшифрование производится с помощью такого же генератора псевдослучайных чисел.
Последовательность вырабатываемых генератором псевдослучайных чисел называют гаммой. Процесс наложения гаммы шифра на открытые данные, выполняемый по определенному закону, называется гаммированием. Расшифрование данных сводится к повторной ге-
50
нерации гаммы шифра и наложению этой гаммы на зашифрованные данные.
Прогресс в области глобальных компьютерных сетей и средств мультимедиа привел к разработке новых методов, предназначенных для обеспечения безопасности передачи данных по каналам телекоммуникаций. Появилось новое направление в области защиты информации – компьютерная стеганография. В отличие от других методов криптографического преобразования информации, методы стеганографии позволяют скрыть не только смысл хранящейся или передаваемой информации, но и сам факт хранения или передачи закрытой информации.
В стеганографии принято различать два основных типа файлов: файл-сообщение – это файл, содержащий секретную информацию, и файл-контейнер, используемый для скрытия в нем сообщения. Под ключом понимается секретный элемент, который определяет порядок занесения сообщения в контейнер.
Методы компьютерной стеганографии развиваются по двум направлениям:
-методы, основанные на использовании специальных свойств компьютерных форматов;
-методы, основанные на избыточности аудио- и визуальной информации.
Второе направление представляется наиболее перспективным и является в настоящее время основным. Эти методы используют естественные неточности устройств оцифровки и избыточность аналогового видеоили аудиосигнала. Сообщения скрываются в компьютерных файлах – контейнерах, содержащих цифровые фотографии, цифровую музыку, цифровое видео.
Младшие разряды цифровых отчетов содержат очень мало полезной информации о параметрах звука и визуального образа, их значения слабо влияют на качество восприятия. В младшие разряды определенных байтов изображения в соответствии с алгоритмом криптографического преобразования помещаются биты скрытого файла. Если правильно подобрать алгоритм преобразования и изображение, на фоне которого помещается скрытый файл, то человеческому глазу практически невозможно отличить полученное изображение от исходного. Очень сложно выявить скрытую информацию и с помощью специальных программ. Наилучшим образом для внедрения скрытой информации подходят изображения местности: фотоснимки со спутников, самолетов и т. п. С помощью средств стеганографии могут маскироваться текст, изображение, речь, цифровая подпись, зашифрованное сообщение. Комплексное использование стеганографии и
