Конфиденциальность в облачной среде

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

ПРИМЕЧАНИЕ

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

На рис. 4.5 проиллюстрирована архитектура приложения, позволяющего осуществлять безопасную работу с данными кредитных карт.

Эта архитектура очень проста, но ее, тем не менее, очень сложно скомпрометировать при том условии, что вы будете соблюдать следующие меры предосторожности.

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

± Номера кредитных карт шифруются с использованием индивидуальных клиентских ключей шифрования.

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

± Сервер приложений никогда не имеет возможности прочесть информацию о номере кредитной карты с сервера обработки кредитных карт.

± Никто не имеет административного доступа к обоим серверам.

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

ется, если ваше Web-приложение написано плохо, то никакое структурирование не защитит ваши данные от компрометации.

Рис. 4.5. Хранение данных кредитных карт за Web-сервисом, который шифрует данные кредитных карт

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

± Убедитесь в том, что оба сервера имеют два различных вектора атаки. Иными словами, на них не должно работать одно и то же программное обеспечение. Если вы будете следовать этому руководящему указанию, вы сможете гарантировать, что какой бы эксплойт не скомпрометировал первый сервер, он не сможет добиться этой цели на втором.

± Убедитесь в том, что ни один из серверов не хранит учетные данные  или другую информацию, с помощью которой можно скомпрометировать другой сервер. Иными словами, не используйте пароли для регистрации пользователей и не храните никаких конфиденциальных ключей SSH ни на одном из серверов.

Источник: Риз Дж., Облачные вычисления: Пер. с англ. — СПб.: БХВ-Петербург, 2011. — 288 с.: ил.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете промотать до конца и оставить ответ. Pinging в настоящее время не допускается.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100