Ж у р н а л   о   к о м п ь ю т е р н ы х   с е т я х   и   т е л е к о м м у н и к а ц и о н н ы х   т е х н о л о г и я х
СЕТИ И СИСТЕМЫ СВЯЗИ on-line
  ПОИСК: ПОДПИСКА НА НОВОСТИ: НОМЕР:
    ДОМОЙ • Архив: Новостей | Конференций | НомеровПодписка
 
   
 
   
    
РЕДАКЦИЯ
 
Все о журнале
Подписка
Как проехать
Где купить
Отдел рекламы
График выхода журнала
Адреса в Интернет

РУБРИКАТОР
   
• Инфраструктура
• Информационные
   системы

• Сети связи
• Защита данных
• Кабельные системы
• Бизнес
• Колонка редактора
• Электронная
   коммерция

• Только на сервере
• Системы
   учрежденческой
   связи

• Новые продукты


Rambler's Top100

  

Фактор XML

Лори Маквитти

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

Версия 1.0 спецификации Web Services Security (WSS) включает вопросы аутентификации и авторизации, но не затрагивает SQL Injection и другие подобные атаки. Три основные угрозы для Web-служб и XML-ресурсов — это атаки на основе фальсификации идентификационной информации, искажение контента и операционные атаки.

Сфальсифицировать идентификационную информацию можно в процессе любого обмена данными по протоколу HTTP. Хотя Web-службы не ограничиваются только поддержкой протокола HTTP, большая часть трафика SOAP (Simple Object Access Protocol) передается именно таким образом. WSS 1.0 предоставляет набор стандартов авторизации и аутентификации для защиты от подобных атак.

Существующие технологии безопасности XML, такие, как XML-Encryption и XML-Signature, позволяют отражать атаки уровня приложений. Защищенные протоколы транспортного уровня — SSL для HTTP и TLS для SMTP — снижают вероятность “подслушивания”. Но они непригодны для Web-служб, поскольку последним для обработки документа перед отправкой его в конечную точку иногда требуется промежуточный узел SOAP. В случае применения систем выявления вторжений и распределителей нагрузки шифрование на транспортном уровне тоже нарушает их работу, поэтому его нельзя считать универсальным решением вопросов безопасности. Шифрование и проверка идентичности должны выполняться на уровне приложений.

Контент-атака направлена на конечную точку (сервер) с целью произвести несанкционированные действия, например получить или даже уничтожить (SQL Injection) данные либо манипулировать содержимым SOAP-сообщений. В результате сервер потребляет избыточные ресурсы и в конце концов “падает”, т. е. перестает отвечать на запросы.

Операционные атаки приводят к отказам служб. Так же как и при искажении контента, в данном случае нападающий манипулирует XML-сообщением или схемой с целью “связать” ресурсы сервера.

Маркер безопасности

Перечисленные ниже технологии обеспечивают безопасность на уровне приложений вплоть до Web-служб и SOAP:

• XML-Encryption — осуществляет полное или частичное шифрование сообщения.

• XML-Digital Signatures — позволяет отправителю криптографически подписывать сообщения, что в дальнейшем может использоваться для аутентификации или проверки целостности данных.

• XML-Schema — управляет внешним видом сообщения. Эта стандартная технология способна отразить некоторые контент-атаки, например с применением переполнения буфера или атаки типа SQL/XQuery Injection.

Технологии XML-Encryption и XML-Digital Signatures, позволяя подписывать и частично шифровать сообщения, не препятствуют использованию SOAP-посредников, таких, как узлы управления, журналирования и маршрутизации. Поскольку с применением технологий безопасности транспортного уровня промежуточная обработка усложняется, если не сводится на нет, эти стандарты помогут вам защитить данные SOAP-сообщений.

Спецификация WSS, недавно утвержденная организацией OASIS, включает ряд стандартов безопасности SOAP-сообщений. Спецификацией предусмотрено два профиля аутентификации и авторизации — UsernameToken Profile и X.509 Certificate Profile. В каждом из них содержится одна и та же информация — данные о личности, проверяемой посредством пограничного устройства защиты или приложения.

UsernameToken устанавливает метод присвоения пользователю имени вместе с маркером безопасности. В качестве такого маркера часто выступает пароль, что совсем не обязательно (хотя в тегах элемента и используется термин “password”). Паролем может быть открытый текст — в этом случае применимо значение типа PasswordText — или хэш, обозначенный через тип PasswordDigest.

Узел Nonce полезен при выявлении повторных атак и имеет кодировку Base64, если не указана иная. Узел Created показывает время создания маркера UsernameToken.

Технологии WSS помогают выяснить, разрешен ли доступ к службе, и проверяют на идентичность запрашивающего его пользователя. Шлюзы безопасности Web-служб от компаний Check Point Software Technologies, DataPower, Forum Systems, Reactivity и Westbridge Technologies поддерживают WSS, так же как и средства управления Web-службами от компаний Actional, Digital Evolution, Infravio и Oblix.

Но последние не отражают атаки. Большинство этих средств лишь просто проверяют корректность схемы и слегка “подчищают” данные. Поэтому бремя отражения атак злоумышленников целиком ложится на шлюзы безопасности, расположенные по периметру сети.

Унция предусмотрительности

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

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

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

Защита от такого рода атак заключается в предварительной обработке и проверке входящих SOAP-сообщений на соответствие заявленной схеме. Сюда входят проверка на совместимость типов данных и проверка на соблюдение максимальной/минимальной длины строковых данных. Хорошо продуманная XML-схема непременно предоставит вам для этого необходимые механизмы. Убедитесь в том, что ваши устройства защиты и приложения могут проверять данные на соответствие их спецификации (см.: “Ограничения данных для защиты от контент-атак”).

Типичной атакой на Web-приложения является атака SQL Injection, к которой также уязвимы XML-коммуникации. Совсем необязательно, что проверка на корректность структуры ваших входящих XML-документов позволит отразить эту атаку. Все это происходит из-за того, что описание “xsd:string” не содержит в себе специальных символов и ключевых слов SQL, которые к тому же вполне корректны. Для того чтобы набор символов ISO не был использован во враждебных целях, попросту декларируйте нужный набор ISO для перевода юникода в ASCII-текст. Этим самым вы сведете к минимуму вероятность получения символов другого набора в уже прошедших фильтрацию исполняемых строках.

Но как предотвратить атаку SQL Injection? Подробнее опишите содержимое каждого элемента, используя образец схемы, или приобретите и установите WSS-продукт для выявления подобных атак. Здесь под образцом подразумевается регулярное выражение, определяющее точный формат конкретного типа данных (см.: “Определение типа данных”).

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

От Web-служб уже никуда не денешься — и они становятся главной приманкой для злоумышленников. Не откладывайте решение вопросов безопасности в долгий ящик. Тщательно отлаживайте XML-схемы на ранних стадиях разработки Web-служб. Потом можно будет защититься шлюзами, но гораздо разумнее сделать эти схемы изначально безопасными. Постоянно обновляйте ПО сервера приложений. Реализация мер защиты означает дополнительные трудозатраты, но зато вы сэкономите время, деньги и избавите себя от лишней головной боли в будущем..





  
13 '2004
СОДЕРЖАНИЕ

бизнес

• 44 этажа «интеллекта» на Canary Wharf

инфраструктура

• Снова о виртуализации памяти

• Централизованное управление удаленными офисами

• Раздача воздуха в системах кондиционирования

• Что стоит за ACD

информационные системы

• Фактор XML

• Приложения ИКТ в здравоохранении

сети связи

• Оптические беспроводные системы связи

• Все дороги телефонии ведут к... IP?

кабельные системы

• Рефлектометры на любой вкус

• Разработка стандарта на центры обработки данных близится к завершению

защита данных

• Пожалуйте на ковер

• Управляю, следовательно, существую

• MPLS и безопасность

новые продукты

• Angel преодолевает препятствия; Новые монтажные шкафы EcoLine; Сервисный маршрутизатор Alcatel 7750 SR


• Калейдоскоп



 Copyright © 1997-2007 ООО "Сети и Системы Связи". Тел. (495) 234-53-21. Факс (495) 974-7110. вверх