Защита от хакеров корпоративных сетей
Шрифт:
Решение, кому доверять, а кому – нет, может быть вопросом жизни и смерти. Поэтому неудивительно, что люди как порождение общества обладают поразительно сложной системой определения, запоминания и оценки других личностей по признакам, которыми они их наделяют. Вне всяких сомнений, у младенца исключительные способности различать человеческие лица. Но человек ограничен в своих возможностях: его память не безгранична, так же как и присущая ему энергия и время, которым он располагает. Как и в большинстве других случаев, когда поведение человека может быть упрощено до уровня механических процедур, на помощь могут быть призваны технологические методы для представления, передачи и установления идентичности объекта во времени и пространстве.
Обладание человека вышеперечисленными возможностями еще ничего не говорит о том, что они будут правильно использоваться, особенно при враждебных средах, описываемых в этой книге. Обычно программисты создают свои задачи для так называемой системы Мэрфи (Murphy\'s Computer), применительно к которой предполагается,
Установление идентичности в компьютерных сетях
В отличие от привыкших доверять друг другу людей, проблема установления идентичности в компьютерных сетях основана не на случайных признаках (например, как выглядит человек, каковы его характерные черты и т. д.). Она основана на том, что все передаваемые через компьютерную сеть биты можно выбирать недвусмысленным образом и объективно оценивать, читать и размножать с заданной точностью. Подобная переносимость битов составляет центральный принцип цифровых отношений. Нетерпимость даже к небольшим ухудшениям цифровых сигналов является их важным отличием от капризов аналогового мира. За счет явного цифрового представления всех компонент сигнала он может усиливаться и ретранслироваться бесконечное число раз в отличие от аналогового мира, в котором усиление сигнала выше некоторого предела становится невозможным из-за заглушения полезного сигнала шумом теплового движения. Но если все может быть сохранено, скопировано, повторено или разрушено, то не требуется большого ума, чтобы понять, что с этим могут сделать или не сделать получатели этих битов.
Неожиданно кажущийся сверхъестественным факт наличия у данных возможности промчаться через полмира за миллисекунды теряет свою необычность, если осознать, что подобное путешествие могут совершить только сами данные. Любые вспомогательные данные сигнала, которые могли бы уникально идентифицировать хост отправителя, и дополнительные идентификационные данные работающего за компьютером пользователя либо включены в данные, либо утеряны в первой точке цифрового дублирования (это может быть маршрутизатор, коммутатор или работающий повторитель).
Если человеку сопутствует случайная передача идентификационных данных, то в компьютерных системах ее нет совсем, потому что в них случайностей не бывает. Если для человека критична асимметричность, то в компьютерных сетях каждый бит в одинаковой степени можно копировать. Что еще надо? При нахождении универсальной закономерности бесконечные переменные или полностью стандартизированная структура пакета приводит к краху доверия.
Это не означает, что идентификационные данные в оперативном режиме не могут быть повторно переданы или представлены. Это означает, что до тех пор, пока не будут предприняты эффективные меры установления и сохранения идентификационных данных внутри самих передаваемых данных, у получателя каждого сообщения не будет возможности идентифицировать отправителя полученного сообщения. По большей части любые случайные инциденты не вызывают доверия. Хотя целый класс анализа уязвимостей концентрируется вокруг использования случайных отклонений в поведении TCP/IP, позволяя определить тип операционной системы удаленного хоста. Можно найти одну характерную особенность: легитимным удаленным хостам соединение нужно либо для получения, либо для отправки данных. Здесь может быть заложена асимметричность. Возможно, что с помощью асимметричных способов в значительной степени удастся добиться того, что легитимный пользователь сравнительно легко сможет получить предназначенные ему данные, потому что в сетях по правильному направлению данные будут передаваться значительно быстрее, чем по неверному. Вероятно, что будет потребовано возвращение какой-либо части данных обратно или будет затребован пароль, которым доверенная сторона будет располагать с большей вероятностью, чем недоверенная. В криптографии есть даже раздел, основанный на использовании внутренней асимметричности. Этот раздел применяется для представления доверительных отношений (одно– или двусторонних связей между доменами, позволяющими осуществлять сквозную аутентификацию). Подобных методов много, и вкратце они будут рассмотрены.
Примечание
Остаточная аналоговая информация, присущая передаваемым данным до начала работы цифровых повторителей, теряется не всегда. Как известно, в сотовой связи контролируются характеристики передаваемого клиентскими сотовыми телефонами сигнала, ищутся случаи клонирования сигнала сотовым телефоном, радиочастотные характеристики которого не совпадают с характеристиками законного телефона. Различие между характеристиками, которые легко скопировать программным способом, и физическими характеристиками аппаратных средств, которые скопировать
Возврат части данных отправителю сообщения
Интернет предусматривает, что пакеты данных содержат адрес отправителя и номер порта, по которому отправитель ожидает ответа сервера. Так записано в Запросах на комментарии RFC, и это можно обнаружить при трассировке пакетов. Клиенты перед посылкой серверу пакета вставляют в него адрес отправителя и номер порта, по которому они ожидают ответ от сервера. Подобный алгоритм работы был бы безупречен при работе с доверенными клиентами, но если все клиенты доверяют друг другу, то отпадает необходимость в системе защиты. Достаточно было бы просто узнать у клиентов, считают ли они себя допущенными к той или иной порции данных, и довериться их мнению по этому поводу.
Поскольку клиент определяет свой собственный адрес отправителя и для отправки пакета из какого-либо пункта сети в пункт B требуется указать только адрес получателя, данные об адресе отправителя должны считаться подозрительными до тех пор, пока не будет установлено, что можно доверять каждому сетевому домену, через который прошли эти данные. Ввиду глобальности Интернета подобное допущение не может быть выполнено с достаточной для этого заключения точностью.
Чем меньше администратор будет в чем-либо уверен, тем больше он должен осознавать недостаточность своих знаний. С этой точки зрения недопонимание свидетельствует о необходимости принятия решения относительно допуска любого пользователя сети к сервисам. Причем речь идет не о выборочном доступе, речь идет о полном отказе в доступе всем пользователям. Даже тем, кто мог бы оказаться авторизованным, если бы были выполнены два условия. Первое, – если бы подобную систему управления доступом можно было построить. И второе – эта система была бы в разумной степени безопасной. Администраторам, все еще бьющимся над решением первой задачи, не следует предполагать, что они могут решить вторую задачу, до тех пор, пока не будет все проверено на испытательном стенде, потому что безопасность и надежность работы – две половинки единого целого. В отказах безопасности большую часть составляют контролируемые отказы, обязанные своим происхождением защитной реакцией на проникновение злоумышленника в систему. Конечно, системы проверки данных идентификации не застрахованы от таких случаев.
После разрешения удаленному пользователю доступа к той или иной системе, правильно или неправильно, и определения сервиса, которому можно доверить проверку идентификационных данных для выяснения правомочности клиента потребовать от сервера поиска и пересылки ему специфической информации, следует понять, что для реализации управления доступом всегда используются два независимых механизма.
Вначале была… передача
Можно показать, что на простейшем уровне все биологические или технологические системы обмениваются идентификационными данными с аналогичными системами. В основе обмена лежит процесс, который автор назвал способностью сомневаться (capability challenge). Он опирается на следующую простую идею: существуют системы, которым доверяют, и существуют системы, которым не доверяют. У первых есть что-то, чего нет у вторых. Определить различие между ними можно с помощью так называемого индекса потенциального доверия (trusted capabilities index). Практически любые характеристики системы могут быть положены в основу распознания заслуживающих доверия пользователей. Выбранные характеристики пользователь может отослать серверу аутентификации.
В терминах спуфинга это главным образом означает, что цель заключается в передаче сведений несанкционированным пользователем, хотя агент аутентификации полагает, что передача может быть осуществлена только доверенным пользователям. В случае использования криптографической системы компромиссные решения относительно индекса потенциального доверия будут иметь катастрофические последствия. Автор еще уделит внимание обсуждению слабых сторон каждой модели аутентификации.
Существуют шесть основных свойств, по которым классифицируются почти все известные системы аутентификации. С их помощью можно охватить очень широкий диапазон систем аутентификации. C точки зрения доказательства идентичности – от слабо защищенных до хорошо защищенных, а с точки зрения реализации – от простейших до необычайно сложных. Все пригодные для идентификации свойства систем тесно взаимосвязаны. Действительно, система бесполезна, если она может закодировать ответ, но при этом не может его передать. В этом автор не видит катастрофы, потому что более сложные уровни всегда зависят от более простых, которые предоставляют им специальные функции. В подтверждение сказанного автор приводит табл. l2.l и l2.2, где описываются свойства, которыми должны обладать системы доказательства идентичности.