Опубликован: 31.07.2006 | Уровень: специалист | Доступ: свободно
Лекция 17:

Электронная коммерция: требования к безопасности

Реализация безопасности сервера базы данных

Для завершения работы над системой безопасности необходимо, кроме всего прочего, обеспечить защиту сервера базы данных, который содержит информацию обо всех коммерческих транзакциях. Внутри сети организации должна присутствовать база данных, в которую записывается вся информация о клиентах, заказах, доставке и транзакциях. Эта база содержит большой объем секретной информации. Информация в базе данных может быть конфиденциальной по своей природе, что требует некоторой защиты конфиденциальности, либо она является секретной и необходимо обеспечить ее корректность, что обуславливает требование к обеспечению целостности. Сервер может представлять собой ключевой компонент в системе электронной коммерции и требовать защиты доступности.

Принимая во внимание секретность информации в базе данных, необходимо проверить следующие аспекты.

  • Расположение сервера базы данных.
  • Каким образом сервер базы данных соединяется с веб-сервером или сервером приложений.
  • Каким образом веб-сервер защищен от внутренних пользователей.

Расположение базы данных

Как в случае с веб-сервером, физическим расположением системы должно быть место, доступ к которому контролируется. Для этой цели хорошо подходит информационный центр. Хотя сервер базы данных может быть расположен в соседнем помещении, секретность информации из базы данных обуславливает тот факт, что она должна находиться в области, полностью контролируемой организацией.

Наилучшим расположением сервера базы данных является внутренняя сеть организации. Нет никаких причин для того, чтобы предоставлять доступ к серверу базы данных извне организации, поэтому данный сервер не нужно подключать к интернету. Эта система пользуется полным доверием, а также не представляет каких-либо дополнительных рисков для внутренней сети, располагаясь внутри нее.

Примечание

В некоторых случаях сервер базы данных является настолько секретным, что располагается в отдельной части сети. Этот сегмент сети защищается внутренним межсетевым экраном, и прохождение трафика через межсетевой экран в значительной степени ограничено.

Соединение с сервером электронной коммерции

Сервер базы данных должен соединяться с сервером электронной коммерции таким образом, чтобы можно было осуществлять обработку транзакций. Как правило, данное соединение осуществляется через соединение SQL (см. рис. 17.3). В идеальном случае сервер базы данных инициирует соединение с системой в демилитаризованной зоне. Это идеальная ситуация, так как система в демилитаризованной зоне не является доверенной частью сети и не должна соединяться с внутренней или доверенной частью сети. Однако тут требуется, чтобы сервер электронной коммерции сохранял информацию о транзакциях (а также запросы) до того, как сервер базы данных инициирует соединение. Это обстоятельство может привести к задержке транзакций или предоставления клиенту информации. В большинстве случаев этот вариант неприемлем.

Единственной альтернативой является инициирование SQL-соединения сервером электронной коммерции, что ведет к возникновению ряда вопросов, связанных с безопасностью. Во-первых, сервер электронной коммерции должен иметь идентификатор и пароль к серверу базы данных, чтобы выполнить данное действие. Этот идентификатор и пароль должны прилагаться в программе или записаны в файле системы. Если идентификатор и пароль находятся в системе электронной коммерции, злоумышленник может завладеть ими и получить доступ к серверу базы данных. Так как сервер базы данных содержит секретную информацию, это крайне недопустимо.

Один из способов избежать этой ситуации - сделать так, чтобы идентификатор и пароль, используемые сервером электронной коммерции, был привязан к идентификатору с большими ограничениями. Идентификатор будет иметь возможность доступа для отправки информации о транзакции в одну таблицу (доступ записи), однако не будет иметь правом доступа для чтения таблиц в базе данных. Данная конфигурация пригодна для некоторых приложений, однако она не позволяет серверу электронной коммерции получать информацию для представления клиенту. При необходимсти идентификатору можно присвоить право доступа для чтения несекретной информации в базе данных, например информации каталога, чтобы осуществлять соответствующий запрос данных и отображать их клиенту.

Как быть в случае, если информация, которую нужно представить клиенту, является секретной? Это очень серьезная проблема. Например, клиент банка запрашивает данные о балансе на своем счету? Как обработать такой запрос? В лучшем случае, идентификатор и пароль, находящиеся на сервере электронной коммерции, могут быть скомбинированы с некоторым видом аутентификации, через которую проходит клиент. Таким образом, если злоумышленник проник на сервер электронной коммерции, он не сможет получить доступ к секретной информации о клиентах.

Данный риск можно снизить еще больше, разделив функциональность сервера электронной коммерции между веб-сервером и сервером приложений. Веб-сервер представляет информацию клиенту и принимает вводимые клиентом данные. Сервер приложений обрабатывает информацию, полученную от клиента, запрашивает сервер базы данных и передает информацию веб-серверу для представления клиенту (см. рис.17.5).

Защита внутреннего доступа

Все вопросы безопасности, которые мы обсуждали до сих пор, были связаны с внешними угрозами. К сожалению, это не единственные угрозы, подлежащие обязательному рассмотрению. У сотрудников организации есть доступ к внутренней сети, в которой находится сервер базы данных, и, следовательно, они имеют возможность непосредственно атаковать его без необходимости преодолевать межсетевой экран и веб-сервер.

Одно из решений данной проблемы уже было упомянуто ранее. Сервер базы данных можно перенести в отдельную сеть и защитить внутренним межсетевым экраном. Однако это не единственное решение проблемы. Сервер необходимо сканировать на наличие уязвимостей согласно тому же расписанию, которое рекомендуется для веб-сервера. Программное обеспечение сервера необходимо обновить и дополнить, прежде чем вводить сервер в эксплуатацию, а идентификаторы и пароли должны контролироваться согласно тому, как это определено в политике безопасности. Кроме этого, базу данных необходимо настроить на аудит попыток доступа к ней.

Пересмотренная архитектура электронной коммерции,  в которой используется сервер приложений

увеличить изображение
Рис. 17.5. Пересмотренная архитектура электронной коммерции, в которой используется сервер приложений

Примечание

Базы данных предоставляют злоумышленнику возможность получения доступа к информации без необходимости доступа в базовую операционную систему. Для того чтобы правильно отслеживать систему на предмет попыток доступа и использования уязвимостей, необходимо следить как за системными журналами, так и за журналами баз данных.

Принимая во внимание секретность информации, содержащейся в базе данных, следует осуществлять контроль санкционированного доступа к системе. Система не должна находиться в общем пользовании, и, кроме того, в данной системе должны быть запрещены какие-либо действия по разработке.

Нияз Сабиров
Нияз Сабиров

Здравствуйте. А уточните, пожалуйста, по какой причине стоимость изменилась? Была стоимость в 1 рубль, стала в 9900 рублей.

Елена Сапегова
Елена Сапегова

для получения диплома нужно ли кроме теоретической части еще и практическую делать? написание самого диплома требуется?

Евгений Рогонков
Евгений Рогонков
Россия, Гремячево, Гремячевская СОШ, 2008