590 likes | 887 Views
Глава 11. Безопасность . Turvalisus. 1 Turvalisuse mõiste. Понятие безопасности 2 Krüptograafia mõiste. Основы криптографии 3 Kasutaja autentifikatsioon. Аутентификация пользователя 4 Rünnakud süsteemi seestpoolt. Атаки изнутри системы
E N D
Глава 11. Безопасность. Turvalisus. 1 Turvalisuse mõiste. Понятие безопасности 2 Krüptograafia mõiste. Основы криптографии 3 Kasutaja autentifikatsioon. Аутентификация пользователя 4 Rünnakud süsteemi seestpoolt.Атаки изнутри системы 5 Rünnakud süsteemiväljaspoolt. Атаки снаружи системы 6 Turvalisuse mehhanismid. Механизм защиты 7 Turva süsteemid. Надежные системы
Turvalisuse mõiste.Понятие безопасностиOhud.Угрозы Turvalisuse ülesanned ja ohud. Задачи и угрозы безопасности
Kurjasepitsejad. Злоумышленники Põhi kategooriad. Основные категории • Juhuslikud, uudishimulikud kasutajad. Случайные любопытные пользователи • Spioonid seestpoolt. Шпионы изнутри • Enese rikastamise katsed. Попытки личного обогащения • Kommerts või sõjaline spionaaz. Коммерческий или военный шпионаж
Juhuslik andmete kaotus. Случайная потеря данных Põhi kategooriad. Основные категории • Acts of God • Пожары, наводнения и т.д. • Tarkvara või riistvara vead. Ошибки ПО или оборудования • Inimeste faktor. Человеческий фактор
Krüptograafia alused.Основы криптографии Avatud tekst ja šifreeritud tekst. Открытий текст и шифрованный текст
Šifreerimine salavõtiga. Шифрование с секретным ключом • Monoalfabeetiline vehatus. Моноалфавитная замена • Iga täht vahetatakse teisega tähega. Каждая буква заменяется другой буквой • Kui me teame šifreerimise võtit • Зная ключ шифрования, • On kerge leida dešifreerimise võtit. Легко найти ключ дешифрации • Шифрование называется симметричным. Šifreerimine on sümmeetriline.
Šifreerimine avatu võtmega.Шифрование с открытым ключом • Paari võtme loomine – avaliku- ja privaatvõtme Создается пара ключей – открытый и закрытый ключ • Avalik võtit publitseeritakse. Открытый ключ публикуется • Privaatvõtit ei publitseerita. Закрытый не публикуется • Privaatvõti šifreerib. Публичный ключ шифрует • Privaatvõti dešifreerib. Приватный дешифрует
Mittepööratatavad funktsioonid. Необратимые функции • Funktsioon annab valem f(x)-ile. Функция задает формулу для f(x) • Легко посчитать y = f(x) • Isegi kui teame y • Но, зная y • Ei ole võimalik otsida x. • Практически невозможно найти x
Digitaalsed signaturid.Цифровые подписи • Allkiri plokki arvestamine. Вычисление блока подписи • Mis on saaja pool. То, что имеет получатель (b)
Kasutaja autentifikatsioon. Аутентификация пользователя Baasi printsiibid. Базовые принципы. Autentifikatsion pead identefitseerima. Аутентификация должна идентифицировать: • Midagi, mida kasutaja teab. Что-то известное пользователю • Midagi, mida kasutaja omab. Что-то имеющееся у пользователя • Midagi, mis kasutaja ise on. Что-то, чем является пользователь Peab olema kontrollitud enne kasutaja sisenemist süsteemi. Должно быть проверено до того, как пользователь войдет в систему
Autentifikatsioon parooliga. Аутентификация с использованием пароля (1) (a) Edukas sisseloogimine. Успешный вход (b) Login on hüljatud. Логин отвергнут (c) Login on hüljatudpeale parooli sisestamist. Логин отвергнут после ввода пароля
Autentifikatsioon parooliga. Аутентификация с использованием пароля (2) • Взлом LBL - U.S. Dept. of Energy research lab
Autentifikatsioon parooliga. Аутентификация с использованием пароля (3) , Juhusliku numbri kasutamine kaitsmiseks lahtimurdmist. Использование случайного числа для защиты от взлома , , , Password Salt
Аутентификация с использованием физического объекта • Магнитные карты • С магнитной полоской • Карты с микросхемой: Обычные карты, смарт-карты
Аутентификация с использованием биометрических данных Устройство для измерения длины пальцев.
Контрмеры • Ограничение времени входа • Callback • Ограничение числа попыток входа • База данных логинов • Простое имя и пароль как ловушка
Атаки изнутри системыТроянские кони • Бесплатные программы с опасным вложением • Размещение альтернативной версии утилиты
Логические бомбы • Программист пишет программу • Инициируемую спустя некоторое время
Потайные двери (a) Нормальный код (b) Код с потайной дверью
Переполнение буфера • (a) запущена главная программа • (b) Вызывается программа А • (c) Серым показано переполнение буфера
Атака системы безопасности Типичные атаки • Запросить память, место на диске или ленте и считать • Несуществующие системные вызовы • Начать регистрацию и нажать DEL, RUBOUT или BREAK • Попробовать модифицировать сложные структуры OS • Попробуйте использовать инструкции DO NOT • Договоритесь с администратором о потайных дверях • Человеческий фактор – работники, секретари
Знаменитые дефекты системы безопасности UNIX • Lpr – позволяла удалять любой напечатанный файл • Использование команды mkdir
Знаменитые дефекты системы безопасностиTENEX TENEX – проблема пароля (a) (b) (c)
Знаменитые дефекты системы безопасности OS/360 Возможность считать с ленты файл, подменив его файлом, к которому доступ разрешен
Принципы проектирования систем безопасности • Устройство системы не должно быть секретом • По умолчанию доступ предоставляться не должен • Проверка текущего состояния прав доступа • Предоставление процессу минимум привилегий • Механизм защиты должен быть • простым • одинаковым • На самом нижнем уровне системы • Схема должна быть психологически приемлема И главное – сохраняйте систему простой
Безопасность в сети • Внешние угрозы • Код, переданный на машину • Код, выполняемый на машине, наносит повреждения • Цели вирусописателей • Быстро распространяющийся вирус • Трудности с определением • Трудности с избавлением от вируса • Вирус = программа, которая воспроизводит сама себя • Добавляет свой код к другой программе • Дополнительно может причинить вред
Сценарии нанесения ущерба вирусами • Blackmail • Denial of service • Повреждение аппаратного обеспечения • Борьба с конкурентами • Нанесение ущерба • шпионаж • Внутрикорпоративные интриги
Как работают вирусы (1) • Пишется на ассемблере • Добавляется в другую программу • Инструмент для добавления называется “dropper” • Программа запускается • Заражает другие программы • «Выполняет свою полезную задачу»
Как работают вирусы (2) Рекурсивная программа, которая ищет исполняемые файлы в UNIX системе
Как работают вирусы (3) • Исполняемая программа • С вирусом в начале • С вирусом в конце • С вирусом, распределенным в свободных участках программы
Как работают вирусы (4) • Вначале вирус перехватывает все векторы прерываний. (а) Операционная система забрала себе вектор прерывания принтера (б) Вирус заметил потерю вектора прерывания и снова захватил его (в)
Типы вирусов • Резидентные вирусы • Вирусы, поражающие загрузочный сектор. Макровирусы • Вирусы драйверов устройств • Вирусы, заражающие исходные тексты программ
Как распространяются вирусы • Вирус размещается там, откуда он может быть скопирован • При копировании • Заражает программы на разных носителях • Может распространяться по LAN • Прикладывается к безопасному на вид письму • Использует список контактов для размножения
Антивирусные технологии (a) Программа (b) Инфицированная программа (c) Сжатая инфицированная программа (d) Зашифрованный вирус (e) Сжатый вирус с зашифрованной программой сжатия
Антивирусные технологии (2) Пример полиморфного вируса Все примеры делают одно и то же
Антивирусные технологии (3) • Проверка целостности • Проверка поведения • Возможность избежать заражения • хорошая OS • Устанавливать только надежное ПО • Использовать антивирусные программы • Проверять потовые приложения • Частые резервные копии • Восстановление после вирусной атаки • Останов, запуск с чистой дискеты, запуск антивируса
The Internet Worm • Состоит из двух частей • bootstrap для загрузки червя • Сам червь • Червь первым делом скрывает свое присутствие • Затем распространяет себя на новые машины
Mobile Code (1) Sandboxing (a) Memory divided into 1-MB sandboxes (b) One way of checking an instruction for validity
Mobile Code (2) Applets can be interpreted by a Web browser
Mobile Code (3) How code signing works
Java Security (1) • A type safe language • compiler rejects attempts to misuse variable • Checks include … • Attempts to forge pointers • Violation of access restrictions on private class members • Misuse of variables by type • Generation of stack over/underflows • Illegal conversion of variables to another type
Java Security (2) Examples of specified protection with JDK 1.2
Protection MechanismsProtection Domains (1) Examples of three protection domains
Protection Domains (2) A protection matrix
Protection Domains (3) A protection matrix with domains as objects
Access Control Lists (1) Use of access control lists of manage file access
Access Control Lists (2) Two access control lists
Capabilities (1) Each process has a capability list
Capabilities (2) • Cryptographically-protected capability • Generic Rights • Copy capability • Copy object • Remove capability • Destroy object