Занятие 6 Решение проблем безопасности для электронной коммерции Пример Jim Lockhart, CSD обнаружил проблему поздно вечером во вторник. Программисты из разных отделов один за другим стали приходить к нему с жалобами на то, что их компьютеры виснут и исчезают файлы. Причиной этого был компьютерный вирус Worm.Explore.zip, попавший на клиентские компьютеры с почтовым вложением. При открытии вложения вирус запускался и, в частности, стирал файлы с жесткого диска. Пользователи не принимали достаточных мер безопасности - открывали письма с неизвестных почтовых адресов и были наказаны за свою беспечность Защита активов электронной коммерции 30 лет назад защита была в основном физической. Сейчас - в основном логическая. Первым в истории шифровал свои письма Юлий Цезарь. Политика безопасности фирмы - документ о том, что именно защищать, почему, как и кто должен этим заниматься. Политика безопасности обеспечивает секретность, целостность и необходимость данных, аутентификацию пользователей. Защита интеллектуальной собственности Блокировка доступа: • блокировка хост-имен • фильтрация пакетов • прокси-серверы Цифровые «водяные знаки» (digital watermarks) • ARIS Technologies • Digimarc Corporation Цифровые «конверты» (digital envelopes) •Softlock Services Защита клиентских компьютеров • Статические HTML-страницы не представляют опасности. • Проблемы возникают с активным содержанием (Java, ActiveX, plug-ins и т.п.) • Cookies • Маскировка Активное содержание нужно отслеживать. Цифровые сертификаты Цифровой сертификат , или цифровой ID - это аттачмент к электронному письму или программе, идентифицирующий пользователя или web-сайт. Такие сообщения называются подписанными Выпускают сертификаты Certification Authority, они выдаются на определенный срок Public key - открытый ключ, позволяющий прочитать сертификат Самая известная организация из CA - VeriSign, выпускает сертификаты от класса 1 до класса 4 Цифровые сертификаты и Explorer Технология Authenticode: при получении активного содержания Explorer отцепляет сертификат, читает его : • проверяет подлинность СА, • проверяет подлинность издателя, • удостоверяет, что файл не был изменен по сравнению с исходным его состоянием Список CA встроен в Explorer с их открытыми ключами. С помощью ключа читается message digest файла и проверяется его подлинность. Зоны и уровни безопасности • Internet • Local intranet • Trusted sites • Restricted sites • Высокий уровень безопасности • Средний • Средне-низкий • Низкий Настройка безопасности в Netscape Navigator Содержит возможности: • включать/выключать Java и JavaScript • разрешать/запрещать Cookies • анализировать сертификаты Прочие возможности Cookies Антивирусные программы Защита информации при передаче через сеть Internet не представляет средств для защиты информации. Шифрование (encryption)- кодирование информации с использованием математических алгоритмов и секретных ключей для получения нечитаемой последовательности символов. Криптография (cryptography)- наука о шифровании Clear text, или plain text - незашифрованный текст Cipher text - зашифрованный текст Основной принцип - скрывается не алгоритм шифрования, а ключ шифрования. Используются ключи длиной 40 и 128 бит. Методы шифрования Методы шифрования 1. Hash coding hash-алгоритм вычисляет hash-код - уникальное (с большой вероятностью) число для каждого сообщения. Обеспечивает проверку идентичности сообщения оригиналу. Самый известный алгоритм - MD5, но он уже скомпрометирован, следует использовать алгоритмы SHA-1, SHA256, SHA384, SHA512 итп. Hash функция h(x)=z 1. Должна иметь возможность обрабатывать сообщения произвольной длины, т е., длина аргумента функции может быть произвольной. 2. Значением функции должно быть число фиксированной длины. 3. Должна быстро вычисляться. 4. Обратная операция должна быть трудновыполнимой. Функция, удовлетворяющая этим 4 требованиям, называется слабой хэш-функцией. Для сильных хэш-функций добавляется пятое требование: 5. Должно быть очень сложно подобрать пару сообщений a,b, таких, что h(a)=h(b). Методы шифрования 2. Symmetric или private-key encryption используется один ключ. Этот вид шифрования очень быстрый и эффективный. Требует отдельного ключа для каждой пары пользователей. Самый известный алгоритм - DES (Data Encryption Standard) (на сегодняшний день взломан 56-битовый код DES силами 100 00 0 PC за 23 часа) Методы шифрования 3. Asymmetric или public-key encryption используются два ключа - открытый и закрытый. Первый используется для шифрования, второй - для расшифровки сообщения. Самый известный алгоритм - RSA (Rivest - Shamir Adleman) RSA 1. Сгенерировать 2 больших простых числа: p и q. 2. Вычислить n=pq, а также случайное E, взаимно простое с (p-1)(q-1). n и E - это открытый ключ. 3. Для расшифровки нужно найти такое D, что DE mod (p-1)(q-1)=1, D - это секретный ключ. Сообщение представим в виде последовательности t1,t2,…,tk Защифровываем i-ый символ: si=(tiE) mod n. Расшифроваывать будем так: ti=(siD) mod n. Пример: p=3, q=11, n=33, E=7, D=3. Secure socket layer SSL - технология, предложенная Netcsape для безопасной передачи информации через Интернет. Работает на транспортном уровне. Кроме HTTP, может использоваться на FTP, Telnet -соединениях и т.п. (https://...) 1. Клиент посылает запрос серверу 2. Сервер посылает сертификат и открытый ключ 3. Клиент проверяет сертификат, генерирует закрытый сеансовый ключ, шифрует его открытым ключом сервера и отправляет. 4. Устанавливается защищенное соединение с использованием закрытого ключа. S-HTTP протокол Протокол уровня приложения В отличие от SSL, не устанавливает защищенное соединение, а позволяет отправлять отдельные зашифрованные сообщения. Сервер и клиент договариваются о применяемых технологиях. Обеспечивает секретность и целостность Обеспечение целостности транзакций Цифровая подпись (digital signature) Применяется асимметричное шифрование в обратном направлении Обеспечивает проверку целостности сообщения - не было ли оно искажено при передаче, а также аутентификацию отправителя. 1. На основе сообщения вычисляется message digest 2. message digest шифруется с помощью закрытого ключа, получается цифровая подпись 3. Сообщение вместе с цифровой подписью отсылается 4. Адресат получает сообщение, выделяет из него цифровую подпись 5. Вычисляет message digest двумя путями - из сообщения и из цифровой подписи с помощью открытого ключа и сравнивает их Обеспечение целостности транзакций Защита сервера Контроль доступа и аутентификация Логины и пароли (в UNIX хранятся только зашифрованные пароли) Сертификаты Access control list (ACL) Фильтрация пользовательского ввода Firewalls Брандмауэр - это компьютер, • через который проходит весь трафик в обоих направлениях • который пропускает только авторизованный трафик • котрый сам защищен от доступа Типы брандмауэров: • packet filter • gateway • proxy