Бугаенко О.С. Безопасность в СУБД Oracle 10g.pptx
- Количество слайдов: 24
БЕЗОПАСНОСТЬ В СУБД ORACLE 10 G ПОДГОТОВИЛА СТУДЕНТКА IV КУРСА ГРУППА ИК-92 БУГАЕНКО О. С.
ТЕХНОЛОГИИ ЗАЩИТЫ ИНФОРМАЦИИ Авторизованный доступ • d. B, ASO (аутентификация), EUS (интеграция DB с IAMS), IRM Фильтрация (сокрытие) информации • d. B, VPD, OLS, DBV Криптопреобразование информации • ASO – в базе, в архиве, в сети • Secured Backup, Data Masking • IRM Активный мониторинг доступа • DBV, DBFW • IRM, OAM (из IAMS) Аудит и расследование инцидентов • Вышеперечисленное, Audit Vault, OIM, OAAM
ШИФРОВАНИЕ ДАННЫХ Защита СУБД Oracle с помощью ASO • ASO = Advanced Security Option Опция Oracle Database EE Пакет из трех компонентов: • TDE (Transparent Data Encryption) для объектов СУБД / файлов /резервн ых копий • Network Encryption • средства строгой аутентификации Kerberos / PKI / RADIUS Опция интегрирована на уровне ядра для всех СУБДверсий 10 g / 11 g Не требуется модификация структуры СУБД или приложения; сохраняется индексация
TRANSPARENT DATA ENCRYPTION TDE обеспечивает встроенное управление ключами шифрования и полную прозрачность шифрования конфиденциальных данных.
ASO: КЛЮЧИ ПРОЗРАЧНОГО ШИФРОВАНИЯ МАСТЕР-КЛЮЧ И КЛЮЧИ ЗАЩИЩЕННЫХ КОЛОНОК Ключи для колонок защищены мастер-ключем Мастер-ключ хранится в PKCS#12 wallet Таблицы с защищенными колонками
ASO: КЛЮЧИ ПРОЗРАЧНОГО ШИФРОВАНИЯ ДОСТУП К ДАННЫМ РАЗРЕШЕН Пароль Данные защищенных колонок таблиц доступны
ASO: УПРАВЛЕНИЕ ПРАВАМИ ДОСТУПА РАЗДЕЛЕНИЕ ОБЯЗАННОСТЕЙ Пароль для доступа к данным отличается от System и DBA паролей Нет доступа к wallet Database DBA
ASO: ПРАВА ДОСТУПА К РАБОТАЮЩЕЙ СУБД ОБЕСПЕЧЕНИЕ ДОСТУПА КЛИЕНТОВ И ЕГО НЕКОТОРЫЕ НЕПРИЯТНЫЕ ОСОБЕННОСТИ Доступ к данным разрешен всем… SELECT ANY TABLE Database DBA Пароль Мастер-ключ Доступ к данным разрешен
ASO: ОГРАНИЧЕНИЯ НА РАБОТАЮЩЕЙ СУБД КАК ЗАЩИТИТЬ ДАННЫЕ ОТ ИНСАЙДЕРОВ ? Ответ: Использовать опцию Oracle Database Vault SELECT ANY TABLE Database DBA Пароль Мастер-ключ
КАК ОБЕСПЕЧИТЬ ДОСТУП ТОЛЬКО К СВОИМ ДАННЫМ? ВАРИАНТ 1: ВИРТУАЛЬНЫЕ БАЗЫ ДАННЫХ (VPD) 80 Заказчик WHERE id_user = 80 select * from orders 20 WHERE id_user = 20 Разработчик
НЕДОСТАТОК ВИРТУАЛЬНЫХ БАЗЫ ДАННЫХ Как обеспечить более сложные правила ? WHERE id_user = 80 Учесть степень (уровень) конфиденциальности данных Разделить данные по категориям WHERE id_user = 20 Обеспечить обработку данных только теми сотрудниками организаций, которые владеют данными или имеют к ним доступ Простое правило с использованием значения Ответ: Использовать опцию с использованием значения идентификатора пользователя идентификатора Oracle Label Security пользователя
КАК ОБЕСПЕЧИТЬ ДОСТУП ТОЛЬКО К СВОИМ ДАННЫМ? Добавляются уровни, категории и иерархии ВАРИАНТ 2: КОМБИНАЦИИ МЕТОК (OLS) Confidential Risk, Corporate SME, UK, Admin HQ Кредитные карты В А Top Secret Кредиты SME UK Multi-Nat Уровень Confidential Corporate Personal Sensitive Risk Группа Ка о ег т ия р Аудит Internal Invest Admin
КАК ОБЕСПЕЧИТЬ ДОСТУП ТОЛЬКО К СВОИМ ДАННЫМ? ВАРИАНТ 3: ПОЛИТИКИ ORACLE DATABASE VAULT Опция СУБД Oracle 10 g Release 2 EE Oracle 11 g Release 2 EE или Oracle 9 i R 2 (9. 2. 0. 8) EE Возможность ограничивать (исключать) доступ к данным приложений со стороны администратора базы данных (DBA) Обеспечение доступа к данным на основе динамически настраиваемых правил Повышение защищенности объектов БД от несанкционированных изменений Разделение полномочий пользователей в соответствии с их функциональными обязанностями и надежный внутренний контроль
ORACLE DATABASE VAULT ФУНКЦИОНАЛЬНЫЕ ЭЛЕМЕНТЫ Защищенные области Отчеты Многофакторная авторизация Аудит Динамическая настройка правил безопасности Разграничение по служебным обязанностям
ЗАЩИЩЕННАЯ ОБЛАСТЬ ORACLE DATABASE VAULT РЕЗУЛЬТАТ ПРИМЕНЕНИЯ Даже пользователь SYSTEM не может просматривать защищенные данные SELECT ANY TABLE hr. employees
МНОГОФАКТОРНАЯ АВТОРИЗАЦИЯ ИНТЕГРАЦИЯ С ORACLE LABEL SECURITY Организация Factor = Внешний Конфиденциально Д С П Публично Factor = Внутренний Oracle Label Security ограничивает доступ к данным на основе факторов Database Vault Партнеры
ORACLE DATABASE VAULT ОТЧЕТЫ И АУДИТ • Более 30 предустановленных отчетов о выполнении политик безопасности • Аудит попыток нарушений защиты • Отчеты по защищенным областям (Realms), выполнении правил (Rules) и условий (Factors) • Списки системных и пользовательских привилегий на доступ и обработку данных
В ЧЕМ ОТЛИЧИЕ DBV ОТ VPD И OLS Virtual Private Database (VPD): • Ограничивает доступ пользователя к определенным строкам на основе параметра WHERE Oracle Label Security (OLS): • Определяет доступ пользователя к определенным строкам на основе меток строки и уровня его конфиденциальности VPD и OLS ограничивают доступ на уровне строк, в то время как Database Vault ограничивает доступ на уровнях объектов и команд
УЯЗВИМОСТИ ORACLE 10 G
УЯЗВИМОСТИ Какие же уязвимости присутствуют в Oracle 10 g? Передача пароля в открытом виде с JDeveloper в SQLPlus. Пароль JDeveloper хранится в открытом тексте в различных конфигурационных файлах формата XML. Пароль Form. Builder хранится в открытом тексте во временных файлах. Слабые разрешения на временные файлы. Перезапись и чтение любого файла в Oracle Reports. Выполнение любой команды через Oracle Forms и Oracle Reports.
ПОВЫШЕНИЕ ПРИВИЛЕГИЙ Уязвимость позволяет локальному злоумышленнику выполнить вредоносные действия с повышенными привилегиями на целевой системе. Уязвимость существует из-за ошибки в проверке входных данных при использовании PROCESS_DUP_HANDLE. Атакующий может передать специально сформированные данные, что приведет к выполнению произвольного кода с повышенными привилегиями.
SQL-ИНЪЕКЦИЯ В ORACLE Уязвимость позволяет удаленному пользователю выполнить произвольные SQL команды в базе данных приложения. Уязвимость существует из-за недостаточной обработки входных данных в x. Db. XDB_PITRIG_PKG. PITRIG_DROP. Удаленный пользователь может с помощью специально сформированного запроса выполнить произвольные SQL команды в базе данных приложения.
ОТКАЗ В ОБСЛУЖИВАНИИ В ORACLE Уязвимость позволяет удаленному злоумышленнику выполнить Do. S атаку на целевую систему. Уязвимость существует из-за ошибки в проверке входных данных в x. Db. XDB_PITRIG_PKG. PITRIG_TRUNCAT E. Атакующий может передать специально сформированные данные, что приведет к отказу системы в обслуживании.
ВЫВОДЫ Не смотря на все средства защиты в Oracle 10 g, существует также огромное количество других ошибок, многие из которых давно известны, но до сих пор не исправлены. Для обеспечения безопасности продуктов Oracle используйте разработки сторонних производителей.
Бугаенко О.С. Безопасность в СУБД Oracle 10g.pptx