- Обзор управления доступом
- Принципы безопасности
- Идентификация, аутентификация, авторизация и подотчетность
Обновлено: 14.03.2010
Управление доступом – это механизм безопасности, который управляет процессом взаимодействия пользователей с системами и ресурсами, а также систем между собой. Этот механизм защищает системы и ресурсы от несанкционированного доступа и принимает участие в определении уровня авторизации после успешного прохождения процедуры аутентификации. Нельзя забывать о том, что кроме пользователей, в сети существуют и другие сущности, которым нужен доступ к сетевым ресурсам и информации. В процессе управления доступом необходимо знать и понимать определения субъекта и объекта.
Доступ – это поток информации между субъектом и объектом. Субъект – активная сущность, запрашивающая доступ к объекту или данным внутри объекта. Субъектом может быть пользователь, программа или процесс, использующий доступ к объекту для выполнения своей задачи. Объект – пассивная сущность, содержащая информацию. Объектом может быть компьютер, база данных, файл, компьютерная программа, директория или поле таблицы базы данных. Например, если вы просматриваете информацию в базе данных, вы являетесь активным субъектом, а база данных – пассивным объектом. Рисунок 2-1 иллюстрирует субъекты и объекты.
Рисунок 2-1. Субъект – это активная сущность, которая использует доступ к объекту, являющемуся пассивной сущностью
Управление доступом – это широкое понятие, включающее различные типы механизмов, выполняющих функции управления доступом для компьютерных систем, сетей и информации. Управление доступом крайне важно, так как является первой линией обороны в борьбе с несанкционированным доступом к системам и сетевым ресурсам. Когда у пользователя запрашивается имя и пароль для входа в компьютер, это управление доступом. После входа в компьютер, пользователь пытается получить доступ к файлам, которые имеют списки контроля доступа, содержащие перечни пользователей и групп, имеющих право использовать эти файлы. Это тоже управление доступом. Управление доступом позволяет компании управлять, ограничивать, контролировать и защищать доступность, целостность и конфиденциальность ресурсов.
Существует три основных принципа безопасности для любых видов управления безопасностью: доступность, целостность и конфиденциальность. Более подробно эти принципы рассматривались в Домене 01, но там они рассматривались с точки зрения управления безопасностью, а сейчас мы будем рассматривать их с точки зрения технологий и методик управления доступом. Каждый механизм защиты (или управления) реализует как минимум один из этих принципов. Специалист по безопасности должен понимать все возможные способы реализации этих принципов.
Доступность. Информация, системы и ресурсы должны быть доступны пользователям в нужное им время, так как это необходимо для выполнения ими своих обязанностей. Отсутствие доступа к информации может оказать существенное негативное воздействие на продуктивность работы пользователей. Следует применять механизмы обеспечения отказоустойчивости и восстановления для обеспечения непрерывной доступности ресурсов.
Информация имеет различные атрибуты, такие как точность, актуальность, оперативность и секретность. Для биржевых брокеров крайне важно иметь точную и своевременную информацию, чтобы они могли покупать и продавать ценные бумаги в нужное время и по правильной цене. Брокеру не нужно заботиться о конфиденциальности этой информации, его интересует только ее постоянная доступность. С другой стороны, компания, выпускающая безалкогольные напитки, зависит, в первую очередь, от сохранения в тайне рецептов приготовления этих напитков, и будет заботиться об этом, внедряя соответствующие механизмы безопасности.
Целостность. Информация должна быть точной, полной и защищенной от несанкционированных изменений. Механизмы безопасности, обеспечивающие целостность информации, должны уведомлять пользователей или администраторов о фактах незаконных изменений.
Например, если пользователь направляет в банк по системе Интернет-банкинга платежное поручение, банк должен убедиться в его целостности и в том, что никто не внес несанкционированных изменений в сумму, не изменил получателя платежа.
Конфиденциальность. Информация должна быть защищена от несанкционированного раскрытия неуполномоченным лицам, программам или процессам. Одна информация может быть более критична, чем другая информация, поэтому она требует более высокого уровня конфиденциальности. В связи с этим данные должны быть классифицированы. Следует применять механизмы управления, которые указывают, кто имеет доступ к данным и что может делать с ними, получив доступ. Эта деятельность должна контролироваться и постоянно отслеживаться.
Примером конфиденциальной информации могут быть медицинские записи, финансовые счета, исходные тексты программ, военные тактические планы.
Некоторые механизмы безопасности обеспечивают конфиденциальность средствами шифрования, управления логическим и физическим доступом, управления потоками трафика, использованием безопасных протоколов и т.п.
Пользователю, чтобы получить доступ к ресурсу, нужно сначала подтвердить, что он тот, за кого себя выдает, имеет необходимые полномочия, а также права и привилегии для выполнения действий, которые он запросил. Только при успешном выполнении всех этих шагов пользователю должен предоставляться доступ к ресурсам. Кроме того, необходимо отслеживать действия пользователей, используя для этого средства ведения учета.
Идентификация – это метод проверки, подтверждающий, что субъект (пользователь, программа или процесс) – тот, за кого себя выдает. Идентификация может осуществляться, например, с использованием имени пользователя или номера счета. Для прохождения аутентификации субъект обычно должен предоставить вторую часть учетных данных, например, пароль, парольную фразу, криптографический ключ, PIN-код, биометрический атрибут или токен. Эти две части учетных данных сравниваются с предварительно сохраненной информацией о субъекте и, если они совпадают, аутентификация считается успешной. Далее система проверяет матрицу контроля доступа или сравнивает метки безопасности для проверки, что субъект действительно может использовать ресурс и выполнять запрошенные действия с ним. Если система определяет, что субъект может получить доступ к ресурсу, она авторизует его.
Атаки соревнования. Крайне важно, чтобы процессы, выполняющие свои задачи с общими (совместно используемыми) ресурсами, действовали в правильной последовательности. Атаки соревнования (race conditions) возможны, когда два или более процессов совместно используют общие ресурсы. Например, если в программном обеспечении функции аутентификации и авторизации разделены, существует возможность для злоумышленника (например, вызванная уязвимостью в программе) произвести атаку соревнования, чтобы обеспечить выполнение шага авторизации до выполнения шага аутентификации, что может стать причиной получения злоумышленником несанкционированного доступа к ресурсу.Хотя идентификация, аутентификация, авторизация и подотчетность тесно связаны между собой, каждый элемент имеет различные функции, которые реализуют определенные требования в процессе управления доступом. Пользователь может быть успешно идентифицирован и аутентифицирован для доступа к сети, но он может не иметь разрешения на доступ к файлам на файловом сервере. Либо наоборот, пользователю может быть разрешен доступ к файлам на файловом сервере, но пока он не прошел успешно процедуры идентификации и аутентификации, эти файлы ему недоступны. Рисунок 2-2 иллюстрирует четыре шага, которые необходимо пройти субъекту для получения доступа к объекту.
Рисунок 2-2. Для доступа субъекта к объекту должны быть пройдены четыре шага: идентификация, аутентификация, авторизация и подотчетность
Субъект должен нести ответственность за все действия, совершенные от его имени в системе или домене. Единственным способом обеспечения подотчетности является надлежащая идентификация субъекта и запись всех его действий.
Логическое управление доступом – это инструмент, используемый для идентификации, аутентификации, авторизации и подотчетности. Это реализуется в виде программных компонентов, выполняющих функции управления доступом к системам, программам, процессам и информации. Логическое управление доступом может быть встроено в операционную систему, приложения, дополнительные пакеты безопасности, базы данных или системы управления телекоммуникациями. Может быть оказаться сложным синхронизировать все механизмы управления доступом, учтя при этом все возможные уязвимости и не навредив производительности.
ПРИМЕЧАНИЕ. Слова "логическое" и "техническое" управление доступом взаимозаменяемы в контексте данной книги и экзамена CISSP.В процессе аутентификации должна быть проверена личность человека. Аутентификация, как правило, включает в себя два этапа: ввод публичной информации (имя пользователя, идентификатор, номер счета и т.п.), а затем ввод секретной информации (постоянный пароль, смарт-карта, одноразовый пароль, PIN-код, электронно-цифровая подпись и т.п.). Ввод публичной информации – это идентификация, а ввод секретной информации – аутентификация. Каждый метод, используемый для идентификации и аутентификации, имеет свои плюсы и минусы. Следует проводить надлежащую оценку методов идентификации и аутентификации для выбора правильного механизма для имеющейся среды.
Ссылки по теме:
• FWPro Secure Coding Standards
• “What Are Race Conditions and Deadlocks?” Microsoft Knowledge Base Article 317723
Комментариев нет:
Отправить комментарий