Глава 11. Безопасность . Turvalisus.

59
1 Глава 11. Безопасность. Turvalisus. 1 Turvalisuse mõiste. Понятие безопасности 2 Krüptograafia mõiste. Основы криптографии 3 Kasutaja autentifikatsioon. Аутентификация пользователя 4 Rünnakud süsteemi seestpoolt.Атаки изнутри системы 5 Rünnakud süsteemi väljaspoolt. Атаки снаружи системы 6 Turvalisuse mehhanismid. Механизм

description

Глава 11. Безопасность . Turvalisus. 1 Turvalisuse mõiste. Понятие безопасности 2 Krüptograafia mõiste. Основы криптографии 3 Kasutaja autentifikatsioon. Аутентификация пользователя 4 Rünnakud süsteemi seestpoolt. Атаки изнутри системы - PowerPoint PPT Presentation

Transcript of Глава 11. Безопасность . Turvalisus.

Page 1: Глава 11.  Безопасность . Turvalisus.

1

Глава 11. Безопасность. Turvalisus.

1 Turvalisuse mõiste. Понятие безопасности

2 Krüptograafia mõiste. Основы криптографии

3 Kasutaja autentifikatsioon. Аутентификация пользователя

4 Rünnakud süsteemi seestpoolt.Атаки изнутри системы

5 Rünnakud süsteemi väljaspoolt. Атаки снаружи системы

6 Turvalisuse mehhanismid. Механизм защиты

7 Turva süsteemid. Надежные системы

Page 2: Глава 11.  Безопасность . Turvalisus.

2

Turvalisuse mõiste.Понятие безопасности

Ohud.Угрозы

Turvalisuse ülesanned ja ohud. Задачи и угрозы безопасности

Page 3: Глава 11.  Безопасность . Turvalisus.

3

Kurjasepitsejad. Злоумышленники

Põhi kategooriad. Основные категории1. Juhuslikud, uudishimulikud kasutajad. Случайные

любопытные пользователи2. Spioonid seestpoolt. Шпионы изнутри3. Enese rikastamise katsed. Попытки личного

обогащения4. Kommerts või sõjaline spionaaz. Коммерческий

или военный шпионаж

Page 4: Глава 11.  Безопасность . Turvalisus.

4

Juhuslik andmete kaotus. Случайная потеря данных

Põhi kategooriad. Основные категории

1. Acts of God- Пожары, наводнения и т.д.

2. Tarkvara või riistvara vead. Ошибки ПО или оборудования

3. Inimeste faktor. Человеческий фактор

Page 5: Глава 11.  Безопасность . Turvalisus.

5

Krüptograafia alused.Основы криптографии

Avatud tekst ja šifreeritud tekst. Открытий текст и шифрованный текст

Page 6: Глава 11.  Безопасность . Turvalisus.

6

• 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 salavõtiga. Шифрование с секретным ключом

Page 7: Глава 11.  Безопасность . Turvalisus.

7

Š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. Приватный дешифрует

Page 8: Глава 11.  Безопасность . Turvalisus.

8

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

Page 9: Глава 11.  Безопасность . Turvalisus.

9

Digitaalsed signaturid.Цифровые подписи

• Allkiri plokki arvestamine. Вычисление блока подписи

• Mis on saaja pool. То, что имеет получатель

(b)

Page 10: Глава 11.  Безопасность . Turvalisus.

10

Kasutaja autentifikatsioon. Аутентификация пользователя

Baasi printsiibid. Базовые принципы. Autentifikatsion pead identefitseerima. Аутентификация должна идентифицировать:

1. Midagi, mida kasutaja teab. Что-то известное пользователю2. Midagi, mida kasutaja omab. Что-то имеющееся у

пользователя3. Midagi, mis kasutaja ise on. Что-то, чем является

пользователь

Peab olema kontrollitud enne kasutaja sisenemist süsteemi. Должно быть проверено до того, как пользователь войдет в систему

Page 11: Глава 11.  Безопасность . Turvalisus.

11

Autentifikatsioon parooliga. Аутентификация с использованием пароля (1)

(a) Edukas sisseloogimine. Успешный вход(b) Login on hüljatud. Логин отвергнут(c) Login on hüljatud peale parooli sisestamist. Логин отвергнут после ввода

пароля

Page 12: Глава 11.  Безопасность . Turvalisus.

12

Autentifikatsioon parooliga. Аутентификация с использованием пароля (2)

• Взлом LBL - U.S. Dept. of Energy research lab

Page 13: Глава 11.  Безопасность . Turvalisus.

13

Autentifikatsioon parooliga. Аутентификация с использованием пароля (3)

Juhusliku numbri kasutamine kaitsmiseks lahtimurdmist. Использование случайного числа для защиты от взлома

Salt Password

,

,

,

,

Page 14: Глава 11.  Безопасность . Turvalisus.

14

Аутентификация с использованием физического объекта

• Магнитные карты– С магнитной полоской– Карты с микросхемой: Обычные карты, смарт-

карты

Page 15: Глава 11.  Безопасность . Turvalisus.

15

Аутентификация с использованием биометрических данных

Устройство для измерения длины пальцев.

Page 16: Глава 11.  Безопасность . Turvalisus.

16

Контрмеры

• Ограничение времени входа

• Callback

• Ограничение числа попыток входа

• База данных логинов

• Простое имя и пароль как ловушка

Page 17: Глава 11.  Безопасность . Turvalisus.

17

Атаки изнутри системыТроянские кони

• Бесплатные программы с опасным вложением

• Размещение альтернативной версии утилиты

Page 18: Глава 11.  Безопасность . Turvalisus.

18

Фальшивая регистрация

Page 19: Глава 11.  Безопасность . Turvalisus.

19

Логические бомбы

• Программист пишет программу– Инициируемую спустя некоторое время

Page 20: Глава 11.  Безопасность . Turvalisus.

20

Потайные двери

(a) Нормальный код(b) Код с потайной дверью

Page 21: Глава 11.  Безопасность . Turvalisus.

21

Переполнение буфера

• (a) запущена главная программа• (b) Вызывается программа А• (c) Серым показано переполнение буфера

Page 22: Глава 11.  Безопасность . Turvalisus.

22

Атака системы безопасности

Типичные атаки• Запросить память, место на диске или ленте и

считать• Несуществующие системные вызовы• Начать регистрацию и нажать DEL, RUBOUT или

BREAK• Попробовать модифицировать сложные структуры

OS• Попробуйте использовать инструкции DO NOT• Договоритесь с администратором о потайных дверях• Человеческий фактор – работники, секретари

Page 23: Глава 11.  Безопасность . Turvalisus.

23

Знаменитые дефекты системы безопасности UNIX

• Lpr – позволяла удалять любой напечатанный файл

• Использование команды mkdir

Page 24: Глава 11.  Безопасность . Turvalisus.

24

Знаменитые дефекты системы безопасности TENEX

TENEX – проблема пароля

(a) (b) (c)

Page 25: Глава 11.  Безопасность . Turvalisus.

25

Знаменитые дефекты системы безопасности OS/360

Возможность считать с ленты файл, подменив его файлом, к которому доступ разрешен

Page 26: Глава 11.  Безопасность . Turvalisus.

26

Принципы проектирования систем безопасности

1. Устройство системы не должно быть секретом2. По умолчанию доступ предоставляться не должен3. Проверка текущего состояния прав доступа4. Предоставление процессу минимум привилегий5. Механизм защиты должен быть

- простым- одинаковым- На самом нижнем уровне системы

6. Схема должна быть психологически приемлема

И главное – сохраняйте систему простой

Page 27: Глава 11.  Безопасность . Turvalisus.

27

Безопасность в сети

• Внешние угрозы– Код, переданный на машину– Код, выполняемый на машине, наносит повреждения

• Цели вирусописателей– Быстро распространяющийся вирус– Трудности с определением– Трудности с избавлением от вируса

• Вирус = программа, которая воспроизводит сама себя– Добавляет свой код к другой программе– Дополнительно может причинить вред

Page 28: Глава 11.  Безопасность . Turvalisus.

28

Сценарии нанесения ущерба вирусами

• Blackmail

• Denial of service

• Повреждение аппаратного обеспечения

• Борьба с конкурентами– Нанесение ущерба– шпионаж

• Внутрикорпоративные интриги

Page 29: Глава 11.  Безопасность . Turvalisus.

29

Как работают вирусы (1)

• Пишется на ассемблере

• Добавляется в другую программу– Инструмент для добавления

называется “dropper”

• Программа запускается– Заражает другие программы

– «Выполняет свою полезную задачу»

Page 30: Глава 11.  Безопасность . Turvalisus.

30

Как работают вирусы (2)

Рекурсивная программа, которая ищет исполняемые файлы в UNIX системе

Page 31: Глава 11.  Безопасность . Turvalisus.

31

Как работают вирусы (3)

• Исполняемая программа• С вирусом в начале• С вирусом в конце• С вирусом, распределенным в свободных

участках программы

Page 32: Глава 11.  Безопасность . Turvalisus.

32

Как работают вирусы (4)

• Вначале вирус перехватывает все векторы прерываний. (а) Операционная система забрала себе вектор прерывания принтера (б) Вирус заметил потерю вектора прерывания и снова захватил его (в)

Page 33: Глава 11.  Безопасность . Turvalisus.

33

Типы вирусов

• Резидентные вирусы

• Вирусы, поражающие загрузочный сектор. Макровирусы

• Вирусы драйверов устройств

• Вирусы, заражающие исходные тексты программ

Page 34: Глава 11.  Безопасность . Turvalisus.

34

Как распространяются вирусы

• Вирус размещается там, откуда он может быть скопирован

• При копировании– Заражает программы на разных носителях

– Может распространяться по LAN

• Прикладывается к безопасному на вид письму– Использует список контактов для размножения

Page 35: Глава 11.  Безопасность . Turvalisus.

35

Антивирусные технологии

(a) Программа (b) Инфицированная программа(c) Сжатая инфицированная программа(d) Зашифрованный вирус(e) Сжатый вирус с зашифрованной программой сжатия

Page 36: Глава 11.  Безопасность . Turvalisus.

36

Антивирусные технологии (2)

Пример полиморфного вируса

Все примеры делают одно и то же

Page 37: Глава 11.  Безопасность . Turvalisus.

37

Антивирусные технологии (3)

• Проверка целостности• Проверка поведения• Возможность избежать заражения

– хорошая OS– Устанавливать только надежное ПО– Использовать антивирусные программы– Проверять потовые приложения– Частые резервные копии

• Восстановление после вирусной атаки– Останов, запуск с чистой дискеты, запуск

антивируса

Page 38: Глава 11.  Безопасность . Turvalisus.

38

The Internet Worm

• Состоит из двух частей– bootstrap для загрузки червя– Сам червь

• Червь первым делом скрывает свое присутствие

• Затем распространяет себя на новые машины

Page 39: Глава 11.  Безопасность . Turvalisus.

39

Mobile Code (1) Sandboxing

(a) Memory divided into 1-MB sandboxes

(b) One way of checking an instruction for validity

Page 40: Глава 11.  Безопасность . Turvalisus.

40

Mobile Code (2)

Applets can be interpreted by a Web browser

Page 41: Глава 11.  Безопасность . Turvalisus.

41

Mobile Code (3)

How code signing works

Page 42: Глава 11.  Безопасность . Turvalisus.

42

Java Security (1)

• A type safe language– compiler rejects attempts to misuse variable

• Checks include …1. Attempts to forge pointers2. Violation of access restrictions on private class

members3. Misuse of variables by type4. Generation of stack over/underflows5. Illegal conversion of variables to another type

Page 43: Глава 11.  Безопасность . Turvalisus.

43

Java Security (2)

Examples of specified protection with JDK 1.2

Page 44: Глава 11.  Безопасность . Turvalisus.

44

Protection Mechanisms Protection Domains (1)

Examples of three protection domains

Page 45: Глава 11.  Безопасность . Turvalisus.

45

Protection Domains (2)

A protection matrix

Page 46: Глава 11.  Безопасность . Turvalisus.

46

Protection Domains (3)

A protection matrix with domains as objects

Page 47: Глава 11.  Безопасность . Turvalisus.

47

Access Control Lists (1)

Use of access control lists of manage file access

Page 48: Глава 11.  Безопасность . Turvalisus.

48

Access Control Lists (2)

Two access control lists

Page 49: Глава 11.  Безопасность . Turvalisus.

49

Capabilities (1)

Each process has a capability list

Page 50: Глава 11.  Безопасность . Turvalisus.

50

• Cryptographically-protected capability

• Generic Rights1. Copy capability

2. Copy object

3. Remove capability

4. Destroy object

Capabilities (2)

Server Object Rights f(Objects, Rights, Check)

Page 51: Глава 11.  Безопасность . Turvalisus.

51

Trusted SystemsTrusted Computing Base

A reference monitor

Page 52: Глава 11.  Безопасность . Turvalisus.

52

Formal Models of Secure Systems

(a) An authorized state

(b) An unauthorized state

Page 53: Глава 11.  Безопасность . Turvalisus.

53

Multilevel Security (1)

The Bell-La Padula multilevel security model

Page 54: Глава 11.  Безопасность . Turvalisus.

54

Multilevel Security (2)

The Biba Model

• Principles to guarantee integrity of data

1. Simple integrity principle• process can write only objects at its security level or lower

2. The integrity * property• process can read only objects at its security level or higher

Page 55: Глава 11.  Безопасность . Turvalisus.

55

Orange Book Security (1)

• Symbol X means new requirements• Symbol -> requirements from next lower category

apply here also

Page 56: Глава 11.  Безопасность . Turvalisus.

56

Orange Book Security (2)

Page 57: Глава 11.  Безопасность . Turvalisus.

57

Covert Channels (1)

Client, server and collaborator processes

Encapsulated server can still leak to collaborator via

covert channels

Page 58: Глава 11.  Безопасность . Turvalisus.

58

Covert Channels (2)

A covert channel using file locking

Page 59: Глава 11.  Безопасность . Turvalisus.

59

Covert Channels (3)• Pictures appear the same

• Picture on right has text of 5 Shakespeare plays– encrypted, inserted into low order bits of color values

ZebrasHamlet, Macbeth, Julius CaesarMerchant of Venice, King Lear