вопросы по курсу. Вопросы по курсу Защита информации
Скачать 1.23 Mb.
|
Среда передачи данных Естественно, основным видом атак на среду передачи информации является ее прослушивание. В отношении возможности прослушивания все линии связи делятся на : широковещательные с неограниченным доступом широковещательные с ограниченным доступом каналы "точка-точка" К первой категории относятся схемы передачи информации, возможность считывания информации с которых ничем не контролируется. Такими схемами, например, являются инфракрасные и радиоволновые сети. Ко второй и третьей категориям относятся уже только проводные линии: чтение информации с них возможно либо всеми станциями, подключенными к данному проводу (широковещательная категория), либо только теми станциями и узлами коммутации через которые идет пакет от пункта отправки до пункта назначения (категория "точка-точка"). К широковещательной категории сетей относятся сеть TokenRing, сеть EtherNet на коаксиальной жиле и на повторителях (хабах – англ. hub). Целенаправленную (защищенную от прослушивания другими рабочими станциями) передачу данных в сетях EtherNet производят сетевые коммутаторы типа свич (англ. switch) и различного рода маршрутизаторы (роутеры – англ. router). Сеть, построенная по схеме с защитой трафика от прослушивания смежными рабочими станциями, почти всегда будет стоить дороже, чем широковещательная топология, но за безопасность нужно платить. В отношении прослушивания сетевого трафика подключаемыми извне устройствами существует следующий список кабельных соединений по возрастанию сложности их прослушивания: невитая пара – сигнал может прослушиваться на расстоянии в несколько сантиметров без непосредственного контакта, витая пара – сигнал несколько слабее, но прослушивание без непосредственного контакта также возможно, коаксиальный провод – центральная жила надежно экранирована оплеткой: необходим специальный контакт, раздвигающий или режущий часть оплетки, и проникающий к центральной жиле, оптическое волокно – для прослушивания информации необходимо вклинивание в кабель и дорогостоящее оборудование, сам процесс подсоединения к кабелю сопровождается прерыванием связи и может быть обнаружен, если по кабелю постоянно передается какой-либо контрольный блок данных. Вывод систем передачи информации из строя (атака "отказ в сервисе") на уровне среды передачи информации возможен, но обычно он расценивается уже как внешнее механическое или электронное (а не программное) воздействие. Возможны физическое разрушение кабелей, постановка шумов в кабеле и в инфра- и радио- трактах. Узлы коммуникации сетей. Узлы коммутации сетей представляют для злоумышленников как инструмент маршрутизации сетевого трафика; как необходимый компонент работоспособности сети. В отношении первой цели получение доступа к таблице маршрутизации позволяет изменить путь потока возможно конфиденциальной информации в интересующую злоумышленника сторону. Дальнейшие его действия могут быть подобны атаке на DNS-сервер. Достичь этого можно либо непосредственным администрированием, если злоумышленник каким-либо получил права администратора (чаще всего узнал пароль администратора или воспользовался несмененным паролем по умолчанию). В этом плане возможность удаленного управления устройствами коммутации не всегда благо: получить физический доступ к устройству, управляемому только через физический порт, гораздо сложнее. Либо же возможен второй путь атаки с целью изменения таблицы маршрутизации – он основан на динамической маршрутизации пакетов, включенной на многих узлах коммутации. В таком режиме устройство определяет наиболее выгодный путь отправки конкретного пакета, основываясь на истории прихода определенных служебных пакетов сети – сообщений маршрутизации (протоколы ARP, RARP и другие). В этом случае при фальсификации по определенным законам нескольких подобных служебных пакетов можно добиться того, что устройство начнет отправлять пакеты по пути, интересующем злоумышленника, думая, что это и есть самый быстрый путь к пункту назначения. При атаке класса "отказ в сервисе" злоумышленник обычно заставляет узел коммутации либо передавать сообщения по неверному "тупиковому" пути, либо вообще перестать передавать сообщения. Для достижения второй цели обычно используют ошибки в программном обеспечении, запущенном на самом маршрутизаторе, с целью его "зависания". Так, например, было обнаружено, что целый модельный ряд маршрутизаторов одной известной фирмы при поступлении на его IP-адрес довольно небольшого потока неправильных пакетов протокола TCP либо перестает передавать все остальные пакеты до тех пор, пока атака не прекратиться, либо вообще зацикливается. Взаимодействие протоколов в сети. Эталонная модель взаимодействия открытых систем OSI (англ. Open Systems Interconnection) была разработана институтом стандартизации ISO с целью разграничить функции различных протоколов в процессе передачи информации от одного абонента другому. Подобных классов функций было выделено 7 – они получили название уровней. Каждый уровень выполняет свои определенные задачи в процессе передачи блока информации, причем соответствующий уровень на приемной стороне производит преобразования, точно обратные тем, которые производил тот же уровень на передающей стороне. В целом прохождение блока данных от отправителя к получателю показано на рис.1. Каждый уровень добавляет к пакету небольшой объем своей служебной информации – префикс (на рисунке они изображены как P1...P7). Некоторые уровни в конкретной реализации вполне могут отсутствовать. Рис.1. Данная модель позволяет провести классификацию сетевых атак согласно уровню их воздействия. Физический уровень отвечает за преобразование электронных сигналов в сигналы среды передачи информации (импульсы напряжения, радиоволны, инфракрасные сигналы). На этом уровне основным классом атак является "отказ в сервисе". Постановка шумов по всей полосе пропускания канала может привести к "надежному" разрыву связи. Канальный уровень управляет синхронизацией двух и большего количества сетевых адаптеров, подключенных к единой среде передачи данных. Примером его является протокол EtherNet. Воздействия на этом уровне также заключаются в основном в атаке "отказ в сервисе". Однако, в отличие от предыдущего уровня, здесь производится сбой синхропосылок или самой передачи данных периодической передачей "без разрешения и не в свое время". Сетевой уровень отвечает за систему уникальных имен и доставку пакетов по этому имени, то есть за маршрутизацию пакетов. Примером такого протокола является протокол Интернета IP. Все атаки, основанные на заведомо неправильной маршрутизации пакетов, мы уже рассмотрели. Транспортный уровень отвечает за доставку больших сообщений по линиям с коммутацией пакетов. Так как в подобных линиях размер пакета представляет собой обычно небольшое число (от 500 байт до 5 килобайт), то для передачи больших объемов информации их необходимо разбивать на передающей стороне и собирать на приемной. Транспортными протоколами в сети Интернет являются протоколы UDP и TCP. Реализация транспортного протокола – довольно сложная задача, а если еще учесть, что злоумышленник придумывает самые разные схемы составления неправильных пакетов, то проблема атак транспортного уровня вполне объяснима. Все дело в том, что пакеты на приемную сторону могут приходить и иногда приходят не в том порядке, в каком они были отправлены. Причина обычно состоит в потере некоторых пакетов из-за ошибок или переполненности каналов, реже – в использовании для передачи потока двух альтернативных путей в сети. А, следовательно, операционная система должна хранить некоторый буфер пакетов, дожидаясь прихода задержавшихся в пути. А если злоумышленник с умыслом формирует пакеты таким образом, чтобы последовательность была большой и заведомо неполной, то тут можно ожидать как постоянной занятости буфера, так и более опасных ошибок из-за его переполнения. Сеансовый уровень отвечает за процедуру установления начала сеанса и подтверждение (квитирование) прихода каждого пакета от отправителя получателю. В сети Интернет протоколом сеансого уровня является протокол TCP (он занимает и 4, и 5 уровни модели OSI). В отношении сеансового уровня очень широко распространена специфичная атака класса "отказ в сервисе", основанная на свойствах процедуры установления соединения в протоколе TCP. Она получила название SYN-Flood (зд. flood – англ. "большой поток"). При попытке клиента подключиться к серверу, работающему по протоколу TCP (а его используют более 80% информационных служб, в том числе HTTP, FTP, SMTP, POP3), он посылает серверу пакет без информации, но с битом SYN, установленным в 1 в служебной области пакета – запросом на соединение. По получении такого пакета сервер обязан выслать клиенту подтверждение приема запроса, после чего с третьего пакета начинается собственно диалог между клиентом и сервером. Одновременно сервер может поддерживать в зависимости от типа сервиса от 20 до нескольких тысяч клиентов. При атаке типа SYN-Flood злоумышленник начинает на своей ЭВМ создавать пакеты, представляющие собой запросы на соединение (то есть SYN-пакеты) от имени произвольных IP-адресов (возможно даже несуществующих) на имя атакуемого сервера по порту сервиса, который он хочет приостановить. Все пакеты будут доставляться получателю, поскольку при доставке анализируется только адрес назначения. Сервер, начиная соединение по каждому из этих запросов, резервирует под него место в своем буфере, отправляет пакет-подтверждение и начинает ожидать третьего пакета клиента в течение некоторого промежутка времени (1-5 секунд). Пакет-подтверждение уйдет по адресу, указанному в качестве ложного отправителя в произвольную точку Интернета и либо не найдет адресата вообще, либо чрезмерно "удивит" операционную систему на этом IP-адресе (поскольку она никаких запросов на данный сервер не посылала) и будет просто проигнорирован. А вот сервер при достаточно небольшом потоке таких запросов будет постоянно держать свой буфер заполненным ненужными ожиданием соединений и даже SYN-запросы от настоящих легальных пользователей не будут помещаться в буфер : сеансовый уровень просто не знает и не может узнать, какие из запросов фальшивые, а какие настоящие и могли бы иметь больший приоритет. Атака SYN-Flood получила довольно широкое распространение, поскольку для нее не требуется никаких дополнительных подготовительных действий. Ее можно проводить из любой точки Интернета в адрес любого сервера, а для отслеживания злоумышленника потребуются совместные действия всех провайдеров, составляющих цепочку от злоумышленника до атакуемого сервера (к чести сказать, практически все фирмы-провайдеры, если они обладают соответствующим программным обеспечением и квалифицированным персоналом, активно участвуют в отслеживании атакующей ЭВМ по первой же просьбе, в том числе и от зарубежных коллег). SYN-флуд — одна из разновидностей сетевых атак типа отказ от обслуживания, которая заключается в отправке большого количества SYN-запросов (запросов на подключение по протоколу TCP) в достаточно короткий срок (RFC 4987). Согласно процессу «трёхкратного рукопожатия» TCP, клиент посылает пакет с установленным флагом SYN (synchronize). В ответ на него сервер должен ответить комбинацией флагов SYN+ACK (acknowledges). После этого клиент должен ответить пакетом с флагом ACK, после чего соединение считается установленным. Принцип атаки заключается в том, что злоумышленник, посылая SYN-запросы, переполняет на сервере (цели атаки) очередь на подключения. При этом он игнорирует SYN+ACK пакеты цели, не высылая ответные пакеты, либо подделывает заголовок пакета таким образом, что ответный SYN+ACK отправляется на несуществующий адрес. В очереди подключений появляются так называемые полуоткрытые соединения (англ. half-openconnection), ожидающие подтверждения от клиента. По истечении определенного тайм-аута эти подключения отбрасываются. Задача злоумышленника заключается в том, чтобы поддерживать очередь заполненной таким образом, чтобы не допустить новых подключений. Из-за этого клиенты, не являющиеся злоумышленниками, не могут установить связь, либо устанавливают её с существенными задержками. Атака основывается на уязвимости ограничения ресурсов операционной системы для полуоткрытых соединений, описанной в 1996 году группой CERT[1], согласно которой очередь для таких подключений была очень короткой (например, в Solaris допускалось не более восьми подключений), а тайм-аут подключений — достаточно продолжительным (по RFC 1122 — 3 минуты). Противодействие Предложенным решением было использование SYN cookie, либо ограничение запросов на новые подключения от конкретного источника за определенный промежуток времени. Сетевой протокол транспортного уровня SCTP, который является более современным по сравнению с TCP, использует SYN cookie и не подвержен SYN-флуд-атакам. Протоколы аутентификации при удаленном доступе Существующие системы аутентификации базируются на предъявлении пользователем компьютеру статической пары идентификатор/пароль. Однако в таком случае пары могут быть скомпрометированы из-за халатности пользователей или возможности подбора паролей злоумышленником. Значительные интервалы времени, в течение которых пароль и идентификатор остаются неизменными, позволяют применить различные методы их перехвата и подбора. Для повышения защищенности компьютерной системы администраторы ограничивают срок действия паролей, но в типичном случае этот срок составляет недели и месяцы, что вполне достаточно для злоумышленника. Радикальным решением является применение двухфакторной аутентификации, когда система просит пользователя предоставить ей «то, что ты знаешь» (имя и, возможно, некий PIN-код), и «то, что у тебя есть» – какой-либо аппаратный идентификатор, ассоциирующийся с этим пользователем. Сегодня несколько компаний предлагают системы двухфакторной аутентификации, основанной на генерации одноразовых паролей (One-Time Password – OTP), в числе которых RSA Security, VASCO Data Security и ActivIdentity. Им удалось решить проблему обеспечения пользователей одноразовыми паролями для входа в компьютерную систему. Не так давно известный производитель средств безопасности Aladdin усилил свой криптографический USB-маркер eToken, встроив в него генератор OTP. Генератор OTP представляет собой автономный портативный электронный прибор, способный генерировать и отображать на встроенном ЖК-дисплее цифровые коды. Для семейства устройств Digipass компании VASCO механизм генерации одноразовых паролей основан на криптографическом TripleDES-преобразовании набора данных, состоящего из 40 бит текущего времени и 24-битового вектора данных, уникальных для каждого идентификатора доступа. Полученный результат преобразования виден на дисплее в виде шести или восьми десятичных цифр, визуально считывается пользователем и вручную вводится как пароль в ответ на запрос прикладных программ об аутентификации. Периодичность смены паролей при этом составляет 36 с, таким образом, пользователь получает действительно одноразовый пароль для входа в систему. На серверной части компьютерной системы этот пароль сравнивается с паролем, сгенерированным самим сервером по такому же алгоритму с использованием показаний текущего времени часов сервера и уникальных данных устройства, которые хранятся в специальной БД. При совпадении паролей разрешается доступ пользователя в систему.
В заключение отметим основные преимущества двухфакторной аутентификации с использованием OTP. К ним относятся: применение одноразовых паролей вместо статических (даже если злоумышленник подсмотрит пароль, он не сможет им воспользоваться, поскольку при следующей аутентификации сервер сгенерирует уже новый пароль); отсутствие необходимости устанавливать какое-либо дополнительное программное обеспечение на клиентской части компьютерной системы, так как пользователь вводит пароль вручную, используя те же программные интерфейсы, что и при применении статических паролей; снижение затрат на администрирование, поскольку администратору не нужно периодически менять статические пароли на сервере; низкая стоимость устройств для генерации одноразовых паролей; применение генераторов OTP возможно в тех случаях, когда пользователю недоступен USB-порт (либо он просто отсутствует – как в PDA, смартфонах, мобильных телефонах). Специализированные контролеры при аутентификации Рассмотрим механизм интеграции двухфакторной аутентификации с существующими системами на примере решения компании VASCO. Первый способ основан на использовании программного обеспечения VACMAN RADIUS Middleware (VRM), которое представляет собой сервер аутентификации и обеспечивает совместимость с любым межсетевым экраном или маршрутизатором, поддерживающим RADIUS-аутентификацию. VRM функционирует подобно прокси-серверу между брандмауэром и RADIUS-сервером (рис. 1). VRM представляет собой простой, быстрый в инсталляции и конфигурировании сервер аутентификации, выполненный как продукт «под ключ». Он может работать в любой среде RADIUS и позволяет защитить сеть предприятия путем надежной двухфакторной аутентификации без замены или переконфигурирования уже установленных серверов RADIUS и брандмауэров. Логически VRM размещается между клиентом RADIUS, например NAS (Network Access Server), RAS (Remote Access Server) или брандмауэром, и сервером RADIUS. После установки VRM функционирует прозрачно, обеспечивая надежную двухфакторную аутентификацию и никаким образом не влияя на работу серверов и других компонентов сети. Второй способ позволяет встроить аутентификацию VASCO в любые пользовательские приложения, работающие с различными операционными системами. VACMAN Controller предлагает полный набор функций аутентификации и дает возможность разработчику легко интегрировать их в собственное приложение. Комплект поставки состоит из файлов библиотек для написания программ на С/C++ и Java, а также файлов с руководством для программистов. Библиотеки позволяют с помощью набора функций, которые включаются в разрабатываемое приложение, управлять данными и режимами аутентификации. Сами библиотеки независимы от платформы и существуют в версиях для Linux, Sun Solaris, HP-UX, AIX, Windows NT/2000, AS/400 и OS/390. Типичное использование библиотек VACMAN Controller при разработке приложений содержит следующие этапы: • интегрирование модели данных Digipass; • назначение устройств Digipass пользователям; • проверка пароля; • расширенное управление Digipass. В каждое устройство Digipass в процессе производства записывается определенный набор данных. Они содержат уникальный номер устройства и режимы аутентификации (длина генерируемого пароля, информация для разблокирования и др.). Эта же информация в зашифрованном виде хранится в поставляемом вместе с устройством файле DPX. На первом этапе данные об устройстве Digipass извлекаются из файла DPX и переносятся в базу данных разрабатываемого приложения. На втором этапе происходит назначение устройств Digipass конкретным пользователям. В базе данных идентификатор пользователя связывается с определенным устройством Digipass. (Заметим, что продолжительность работы Digipass GO-3 определяется временем жизни батареи питания – к сожалению, ее замена разработчиками не предусмотрена. Согласно «Руководству по эксплуатации», этот срок составляет не менее пяти лет). Рис. 3. RSA SecureID SID700 Подобно Digipass фирмы VASCO, устройства RSA SecurID на этапе производства могут быть сконфигурированы для генерации 6- или 8-значных паролей с периодичностью 30 с, 60, 90 и 120 с (рис. 3). Типичный период генерации для большинства идентификаторов доступа 60 с. В RSA SecurID Key Fob (SD600) компании RSA Security для генерации одноразовых паролей применяется алгоритм Advanced Encryption Standard (AES). Исходными данными при этом являются значения текущего времени и уникального для каждого прибора набора данных, записанных в него на этапе производства. Рис. 2. Структура сети с использованием продуктов RSA Сервер RSA Authentication Manager осуществляет двухфакторную аутентификацию пользователей на основе показаний прибора SecurID. В отличие от сервера аутентификации VASCO VRM, пользователи взаимодействуют с сервером RSA ACE/Server посредством программных агентов RSA ACE/Agent. Такие агенты уже встроены в сотни современных серверов удаленного доступа, брандмауэров, маршрутизаторов, точек доступа беспроводных систем, есть также разработанные специально для широко распространенных Web-серверов (Microsoft IIS, Apache, Stronghold и SunONE), локального и удаленного доступа в ОС Windows и UNIX. Пример сети с использованием продуктов RSA приведен на рис. 2. Кроме взаимодействия посредством агентов, RSA ACE/Server может применять протоколы аутентификации RADIUS и TACACS+. В состав RSA ACE/Server входит собственный сервер RADIUS, что позволяет иметь общую базу данных пользователей как для аутентификации по протоколу RADIUS, так и для аутентификации SecurID. При двухфакторной аутентификации требуется ввести идентификатор (имя) и пароль, состоящий из персонального идентификатора (PIN) и цифрового кода, отображаемого на дисплее SecurID в текущий момент. Администрирование RSA Authentication Manager выполняется с графической консоли. С ее помощью назначаются идентификаторы доступа SecurID пользователям, устанавливаются правила разграничения доступа с возможностью задавать время, когда он разрешен, а также объединять пользователей в группы. RSA Authentication Manager позволяет импортировать данные из LDAP-директории, в которой централизованно хранятся данные о пользователях. На сервере ведется аудит доступа пользователей и действий администратора. Для увеличения производительности в случае аутентификации большого количества пользователей и обеспечения работоспособности сервера при выходе из строя аппаратного обеспечения RSA Authentication Manager допускает функционирование до 60 дублирующих серверов-реплик. В состав сервера RSA Authentication Manager входят следующие компоненты: • базы данных пользователей, идентификаторов доступа SecurID, агентов RSA ACE/Agent, аудита попыток аутентификации и действий администратора; • процессор аутентификации; • консоль администрирования; • средства репликации базы данных и менеджера блокирования атак типа «replay»; • сервер RADIUS; • сервер TACACS+; • утилита ускоренного администрирования Quick Admin с Web-интерфейсом. На случай, когда пользователь потерял (или забыл дома) свой генератор одноразовых паролей, сервер аутентификации разрешает временное применение статической пары идентификатор/пароль или набора одноразовых статических паролей. Для защиты обмена служебной информацией между различными программными модулями сервера аутентификации RSA Authentication Manager, а также между сервером и агентами (RSA Authentication Agents) используется ее шифрование (с применением алгоритмов RC5 и DES). Информация об устройствах генерации OTP хранится в базе данных на сервере также в зашифрованном виде, и ее открытый просмотр недоступен даже для администратора. При конфигурировании сервера и назначении конкретным пользователям идентификаторов доступа администратору достаточно оперировать только их серийными номерами. RSA Authentication Manager может работать под управленим таких операционных систем: • Microsoft Windows 2000 Server или Advanced Server; • Microsoft Windows 2003 Server; • HP-UX 11 на PA-RISC 2.x; • IBM AIX 5L v.5.1 или 5.2 на PowerPC и RISC/6000; • Solaris 8 или выше на UltraSPARC. Интересным является устройство eToken NG-OTP компании Aladdin, представляющее собой комбинированный идентификатор доступа в формате USB со встроенным генератором OTP и ЖКИ для отображения одноразовых паролей. Помимо стандартных функций криптографического идентификатора доступа, таких как защищенное хранение секретных ключей и цифровых сертификатов пользователей, шифрования/дешифрования данных, цифровой подписи и т. п., он может генерировать одноразовые пароли для защищенного удаленного доступа мобильных пользователей к корпоративным ресурсам. Как и в VRM компании VASCO, аутентификация в устройствах Aladdin базируется на протоколе RADIUS. Серверная часть решения встроена в систему управления средствами аутентификации TMS (Token Management System), которая служит для управления всем жизненным циклом как eToken, так и eToken NG-OTP. Преимуществами двухфакторной аутентификации на основе eToken NG-OTP являются поддержка всех совместимых с RADIUS решений, шифрования и цифровой подписи почтовых сообщений, защиты ПК, защищенного доступа к Web и построения VPN с использованием eToken. В качестве алгоритма криптографического преобразования входных данных для получения одноразового пароля в eToken NG-OTP применяется совместимый с OATH алгоритм, основанный на HMAC/SHA1. |