Компания IBM
Опубликован: 14.12.2004 | Доступ: свободный | Студентов: 1531 / 139 | Оценка: 4.36 / 3.98 | Длительность: 16:32:00
ISBN: 978-5-9556-0031-4
Специальности: Системный архитектор
Лекция 14:

Обеспечение безопасности WebSphere MQ

Криптографическая методология MQSecure

Появление продукта MQSecure TM обусловлено отсутствием механизмов SSL в более ранних чем 5.3 версиях WebSphere MQ и необходимостью более глубокого уровня шифрования (уровня приложений) и, кроме этого, усилением защиты на уровне связей. Ведь после SSL "рукопожатия" возможна подмена идентификатора пользователя без указания пароля и проблема безопасности опять становится актуальной. Кроме этого, удаленное администрирование дает злоумышленнику возможность остановки каналов и просмотра сообщений в очереди, снятие SSL защиты и т.п.

Основу MQSecure составляет криптографическая методология RSA, включающая крупноразмерные открытый/секретный ключи, цифровую подпись сообщений для обеспечения неизменности, аутентификации и подлинности сообщений. Распространение открытых ключей использует концепцию цифровых сертификатов, в которой ключи посылаются только истинным аутентифицированным источникам. Для шифрования используются различные алгоритмы, начиная от AES (наиболее сильный), далее RC6, RC5, RC4, TDES и заканчивая RC2 (наиболее слабый). Даже самые сильные алгоритмы шифрования не понижают производительность WebSphere MQ (скорость потока сообщений) более чем на 10%.

Для защиты на уровне связей используются Channel - Exit программы, как и в SSL. При этом аутентификация пользователя осуществляется для каждого сообщения. Для защиты на уровне приложений используются специальные макрокоманды для WebSphere MQ, поставляемые вместе с MQSecure:

  • S_MQPUT (версия стандартного MQPUT для целей безопасности)
  • S_MQGET (версия стандартного MQGET для целей безопасности)
  • MQS_EXIT (MQ Channel - Exit программа)
  • MQS_ADM (административный модуль)
  • MQS_READ (фоновый модуль, который получает новый открытый ключ и помещает его в базу данных).

MQSecure поддерживает различные полезные опции для разработчиков: прямые и непрямые WebSphere MQ обращения, машинный уровень аутентификации, аутентификацию пользователей, доступ к групповой/ролевой аутентификации. Таким образом, MQSecure обеспечивает сквозную безопасность.

Безопасность на уровне связей предполагает цифровую подпись и шифрование каждого сообщения. Если сообщение на принимающей стороне воспринимается как недействительное, то оно попадает в очередь недоставленных сообщений (Dead letter queue) или в специальную очередь недействительных сообщений MQSecure, где оно хранится в первозданном зашифрованном виде для анализа, а не в модифицированном виде для Dead letter queue. Если сообщение воспринимается как законное и действительное, то оно помещается в очередь назначения в первозданном виде для дальнейшей обработки приложением. Во время нахождения сообщения в очереди существует возможность при наличии внутренних администраторов-злоумышленников корпоративной сети "перехватить" сообщение. Вот почему безопасность на уровне приложений дает большую защищенность, так как сообщение на всем пути следования

База данных - источник => WebSphere MQ => База данных - приемник

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