Система и способ межсетевого взаимодействия клиента и сервера Российский патент 2024 года по МПК G06F21/64 H04L9/40 

Описание патента на изобретение RU2820407C1

Область техники

Изобретение относится к области информационной безопасности, а более конкретно к системам и способам обеспечения безопасного межсетевого взаимодействия клиента и сервера.

Уровень техники

Вредоносное программное обеспечение постоянно развивается, побуждая поставщиков услуг информационной безопасности не отставать от постоянно меняющегося ландшафта угроз. В том числе злоумышленники развивают и пути распространения вредоносного программного обеспечения (ПО), используют новые уязвимости для проникновения в компьютерные системы (далее - компьютер).

В настоящий момент используются различные варианты атак на ресурсы компьютерной сети. Например, атака «человек посередине» (от англ. Man-in-the-middle), во время которой злоумышленник осуществляет перехват данных, используя методы, позволяющие внедриться в существующее подключение или процесс связи между двумя сторонами. Примером таких методов является метод, с помощью которого изменяют параметры DNS-сервера или файла hosts на компьютере «жертвы». В то время пока «жертва» считает, что работает напрямую, например с веб-сайтом банка, трафик проходит через промежуточный узел злоумышленника, который таким образом получает все отправляемые пользователем данные (персональные данные, логин, пароль, ПИН-код и т.п.).

Из уровня техники известно решение, протокол Transport layer security (далее - TLS), предназначенный для защиты от вышеописанного вида атак. Протокол TLS реализует три вида защиты - шифрование, аутентификация и целостность. Шифрование - сокрытие информации, передаваемой от одного компьютера к другому. Аутентификация - проверка подлинности источника передаваемой информации. Целостность - обнаружение подмены информации подделкой. Стоит отметить, что в указанном протоколе отсутствует реализация защиты хранилища SSL/TLS-сертификатов (далее - сертификатов) от злоумышленника, который для достижения своих целей может подменить действительный сертификат какого-либо доверенного ресурса на свой для маскировки своего узла под легитимный сервис.

Из уровня техники известно решение, представленное в патенте RU 2514138 C1. В качестве решения представлена система и способ верификации сертификата открытого ключа с целью противодействия атакам типа «человек посередине». В данной публикации описан способ, в котором получают информацию о выданных сертификатах и обнаруживают аномалии путем анализа подозрительных событий, связанных с рассматриваемым сертификатом. Затем собирают дополнительную информацию о сертификатах, для которых были обнаружены аномалии. Формируют список подозрительных сертификатов путем нахождения несоответствия с ранее полученными данными и принимают решение о правомерности использования сертификатов для целей аутентификации путем анализа найденных несоответствий.

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

Раскрытие сущности изобретения

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

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

В качестве одного варианта исполнения настоящего изобретения предлагается способ межсетевого взаимодействия, реализующийся по меньшей мере на одной компьютерной системе и содержащий этапы, на которых: перехватывают с помощью изолированного модуля транспортного взаимодействия запрос на соединение от клиента к серверу; инициализируют с помощью изолированного модуля транспортного взаимодействия от лица клиента запрос на TLS-соединение с сервером; принимают с помощью изолированного модуля транспортного взаимодействия сертификат и публичный ключ от сервера, которые передают изолированному модулю шифрования; проверяют с помощью изолированного модуля шифрования полученный сертификат сервера на подлинность путем взаимодействия с базой сертификатов через изолированный модуль контроля сертификатов; если сертификат сервера определен как подлинный, создают публичный и приватный ключи шифрования клиента посредством изолированного модуля шифрования и обменивают публичные ключи шифрования посредством изолированного модуля транспортного взаимодействия с сервером для создания шифрованного канала связи, причем шифрование данных, отправленных от клиента к серверу, реализуется с помощью публичного ключа сервера, а дешифрование данных, отправленных от сервера к клиенту, реализуется с помощью приватного ключа клиента.

В другом варианте исполнения способа изоляцию модуля транспортного взаимодействия, модуля шифрования и модуля контроля сертификатов осуществляют при помощи модуля безопасности на основании политик безопасности, которые содержат требования и условия взаимодействия с каждым упомянутым модулем.

В еще одном варианте исполнения способа во время каждого взаимодействия между изолированным модулем транспортного взаимодействия, изолированным модулем шифрования и изолированным модулем контроля сертификатов осуществляют проверку выполнения политик безопасности при помощи модуля безопасности.

В другом варианте исполнения способа перехватывают каждое обращение от одного изолированного модуля к другому изолированному модулю, анализируют перехваченное обращение и передают перехваченное обращение назначавшемуся изолированному модулю, если указанное обращение соответствовало требованиям и условиям политики безопасности.

В качестве другого варианта исполнения настоящего изобретения предлагается система межсетевого взаимодействия, состоящая по меньшей мере из одной компьютерной системы и содержащая: модуль безопасности, предназначенный для изоляции модуля транспортного взаимодействия, модуля шифрования и модуля контроля сертификатов, при этом изоляция осуществляется на основании политик безопасности, которые содержат требования и условия взаимодействия с каждым упомянутым модулем; изолированный модуль транспортного взаимодействия, взаимодействующий с клиентом, сервером и изолированным модулем шифрования, и предназначенный для: перехвата запроса на соединение от клиента к серверу; инициализации TLS-соединения с сервером; получения сертификата и публичного ключа от сервера; передачи полученных данных изолированному модулю шифрования; создания шифрованного канала связи между клиентом и сервером, в случае если сертификат сервера подлинный; передачи данных между клиентом и сервером при помощи шифрованного канала связи; изолированный модуль шифрования, предназначенный для проверки сертификата сервера на подлинность с помощью взаимодействия с изолированным модулем контроля сертификатов и в случае подлинности сертификата для: создания публичного и приватного ключей клиента; шифрования с помощью публичного ключа сервера данных, отправленных клиентом к серверу; дешифрования с помощью приватного ключа клиента данных, отправленных сервером к клиенту; передачи публичного ключа клиента и результата проверки сертификата сервера изолированному модулю транспортного взаимодействия; изолированный модуль контроля сертификатов, предназначенный для предоставления изолированному модулю шифрования доступа к базе сертификатов.

В другом варианте исполнения модуль безопасности при каждом обращении к каждому модулю осуществляет проверку выполнения политик безопасности.

В еще одном варианте исполнения указанные модули взаимодействуют между собой посредством модуля безопасности путем обмена IPC-сообщениями.

В другом варианте исполнения модуль безопасности перехватывает каждое обращение от одного изолированного модуля к другому изолированному модулю, анализирует перехваченное обращение и передает перехваченное обращение назначавшемуся изолированному модулю, если указанное обращение соответствует требованиям и условиям политики безопасности.

Краткое описание чертежей

Прилагаемые чертежи иллюстрируют только примерные варианты осуществления изобретения, и поэтому не должны считаться ограничивающими его объем. Дополнительные цели, признаки и преимущества настоящего изобретения будут очевидными из прочтения последующего описания осуществления изобретения со ссылкой на прилагаемые чертежи, на которых:

Фиг. 1 иллюстрирует пример компьютерной сети, в рамках которой реализуется система межсетевого взаимодействия.

Фиг. 2 иллюстрирует способ межсетевого взаимодействия клиента, системы межсетевого взаимодействия и сервера.

Фиг. 3 иллюстрирует пример компьютерной системы общего назначения.

Осуществление изобретения

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

Глоссарий

SSL/TLS (англ. Secure Socket Layer/Transport Layer Security) - протокол защищенной связи через интернет в системе «клиент - сервер».

SSL/TLS-сертификат - это цифровой сертификат, удостоверяющий подлинность сервера и позволяющий использовать зашифрованное соединение.

IPC (Interprocess Communication) - механизм, предназначенный для обмена данными и синхронизации между различными процессами, которые работают на одной или нескольких компьютерных системах.

IPC-канал - соединяющий две сущности друг с другом канал, используемый для обмена IPC-сообщениями.

Call() - системный вызов, который в контексте обмена IPC-сообщениями используется для отправки сообщения одного процесса другому процессу. Этот вызов позволяет процессу отправлять запрос или сообщение другому процессу и переходить в режим ожидания до тех пор, пока не получит ответное сообщение или не истечет определенный промежуток времени.

Recv() - системный вызов, который в контексте обмена IPC-сообщениями используется для приема сообщения, отправленного другим процессом. Этот вызов позволяет процессу переходить в режим ожидания до тех пор, пока не будет получено сообщение от другого процесса или не истечет определенный промежуток времени.

Reply() - системный вызов, который в контексте обмена IPC-сообщениями используется для отправки ответного сообщения на запрос, полученный другим процессом. Этот вызов позволяет процессу отправлять ответ на запрос и вывести из режима ожидания процесс, который ожидает ответ.

Виртуальная файловая система (от англ. Virtual File System, VFS) - уровень абстракции поверх конкретной реализации файловой системы. Виртуальная файловая система может быть использована для доступа к локальным устройствам и файлам, сетевым устройствам и файлам на них, а также к информации из ядра операционной системы о системных процессах. Виртуальная файловая система декларирует программный интерфейс между ядром и конкретной файловой системой, таким образом для добавления поддержки новой файловой системы не требуется вносить изменения в ядро операционной системы.

На Фиг. 1 представлен пример взаимодействия клиента 110 с сервером 160 посредством системы межсетевого взаимодействия 120. В одном из вариантов реализации система межсетевого взаимодействия 120 представляет собой реализованный на компьютерной системе TLS-прокси-сервер, который действует как промежуточная точка между клиентским и серверным приложениями.

В рамках данного изобретения под компьютерной системой подразумевается по меньшей мере одно вычислительное устройство, в частности персональный компьютер, ноутбук, смартфон, планшет, маршрутизатор, система хранения данных и сервер. Элементы системы межсетевого взаимодействия, а также клиент и сервер могут быть реализованы на компьютере, пример которого представлен на Фиг. 3. Стоит отметить, что элементы системы межсетевого взаимодействия 120, клиент 110 и сервер 160 могут быть реализованы как на одной компьютерной системе, так и на нескольких компьютерных системах. Например, система межсетевого взаимодействия 120 и клиент 110 находятся на одной компьютерной системе, а сервер 160 - на другой компьютерной системе. В другом варианте реализации система 120 и сервер 160 находятся на одной компьютерной системе, а клиент 110 - на другой. В еще одном варианте реализации как клиент 110, так и сервер 160 используют системы 120 каждый на своей компьютерной системе.

В предпочтительном варианте реализации в роли клиента 110 выступает приложение, установленное на операционной системе (например, Kaspersky OS). В роли сервера 160 выступает удаленный сервер. При этом клиент 110 реализован на одной компьютерной системе, система межсетевого взаимодействия 120 - на второй компьютерной системе, а сервер 160 является третьей компьютерной системой.

В одном из частных вариантов реализации в роли клиента 110 выступает приложение, установленное на операционной системе (например, Kaspersky OS). В роли сервера 160 выступает удаленный сервер. При этом клиент 110 и система межсетевого взаимодействия 120 реализованы на одной компьютерной системе, а сервер 160 - на второй компьютерной системе.

В другом частном варианте реализации в роли клиента 110 выступает приложение, установленное на операционной системе (например, Kaspersky OS). В роли сервера 160 выступает виртуальная файловая система. При этом клиент 110, система межсетевого взаимодействия 120 и сервер 160 реализованы на одной компьютерной системе.

Система межсетевого взаимодействия 120 предназначена для защиты хранилища сертификатов, а также создания шифрованного канала связи между клиентом 110 и сервером 160.

Система межсетевого взаимодействия 120 инициализирует от лица клиента 110 запрос на TLS-соединение (далее - соединение) с сервером 160. Далее система межсетевого взаимодействия принимает от сервера 160 SSL-сертификат (далее - сертификат) и проверяет его на подлинность. Если сертификат сервера 160 определен как подлинный, система межсетевого взаимодействия 120 создает шифрованный канал связи с сервером 160.

В частном варианте реализации, если клиент 110 и система межсетевого взаимодействия 120 реализованы на одной компьютерной системе, система межсетевого взаимодействия 120 до инициализации от лица клиента 110 запроса на соединение с сервером 160 перехватывает запрос клиента 110 на соединение с сервером 160, причем запрос может быть как на незащищенное соединение, так и на TLS-соединение.

В другом частном варианте реализации, если клиент 110 и система межсетевого взаимодействия 120 реализованы на разных компьютерных системах, система межсетевого взаимодействия 120 создает шифрованный канал связи не только с сервером 160, но и с клиентом 110.

Система межсетевого взаимодействия 120 состоит из модуля безопасности 125, изолированного модуля транспортного взаимодействия 130, изолированного модуля шифрования 140 и изолированного модуля контроля сертификатов 150.

Модуль безопасности 125 является компонентом системы межсетевого взаимодействия 120 и предназначен для изоляции модуля транспортного взаимодействия 130, модуля шифрования 140 и модуля контроля сертификатов 150.

Модуль безопасности 125 содержит набор правил (политики безопасности), которые позволяют регулировать взаимодействие модулей системы межсетевого взаимодействия 120 как между собой, так и с внешними источниками. Примером внешнего источника является сервер. Указанные правила содержат требования и условия, необходимые для взаимодействия модулей. Например, требования содержат перечень модулей, которые могут обращаться к тому или иному изолированному модулю, а условия в свою очередь содержат, например, время, в которое модули могут обращаться к друг другу.

Изоляция каждого из модулей системы межсетевого взаимодействия 120 реализуется с помощью политик безопасности согласно принципу безопасных умолчаний (англ. - Fail-safe defaults), а точнее одному из вариантов этого принципа - запрет по умолчанию (англ. - default deny). Данный принцип заключается в запрете осуществления любого взаимодействия модулей системы межсетевого взаимодействия 120 как друг с другом, так и с внешними сущностями. Таким образом, разрешается только то взаимодействие с модулями системы межсетевого взаимодействия 120, которое разрешено явно.

Модули системы межсетевого взаимодействия 120 взаимодействуют между собой посредством модуля безопасности 125, обмениваясь IPC-сообщениями: IPC-запросом и IPC-ответом. Модуль безопасности 125 осуществляет перехват каждого обращения одного модуля к другому, анализирует перехваченное обращение и передает перехваченное обращение назначавшемуся модулю, если такое обращение разрешено. Во взаимодействии модулей каждый модуль наделяется одной из ролей: модуль, инициализирующий взаимодействие, и модуль, обрабатывающий обращение. При этом каждый модуль системы 120 может быть как модулем, инициализирующим взаимодействие, так и модулем, обрабатывающим обращение. Например, на Фиг. 1 изолированный модуль транспортного взаимодействия 130 является модулем, инициализирующим взаимодействие с изолированным модулем шифрования 140, который в свою очередь является модулем, инициализирующим взаимодействие с изолированным модулем контроля сертификатов 150.

Модули системы межсетевого взаимодействия 120 для обмена IPC-сообщениями используют три системных вызова: Call(), Recv() и Reply(), при этом обмен IPC-сообщениями осуществляется следующим образом:

• модуль, инициализирующий взаимодействие, направляет модулю, обрабатывающему обращение, IPC-запрос. Для этого модуль, инициализирующий взаимодействие, выполняет системный вызов Call() и переходит в режим ожидания IPC-ответа. Модуль безопасности 125 перехватывает этот IPC-запрос и анализирует его на соответствие политикам безопасности. Если IPC-запрос соответствует политикам безопасности, модуль безопасности 125 отправляет IPC-запрос модулю, обрабатывающему обращение. Иначе, если IPC-запрос не соответствует политикам безопасности, модуль безопасности 125 отправляет модулю, инициализирующему взаимодействие, IPC-ответ с отказом в доступе к модулю, обрабатывающему обращение;

• модуль, обрабатывающий обращение, выполняет системный вызов Recv() и переходит в режим ожидания IPC-запроса. При получении IPC-запроса модуль, обрабатывающий обращение, выходит из режима ожидания, обрабатывает IPC-запрос и отправляет IPC-ответ с помощью выполнения системного вызова Reply();

• при получении IPC-ответа модуль, инициализирующий взаимодействие, выходит из режима ожидания.

Изолированный модуль транспортного взаимодействия 130 предназначен для инициализации соединения, получения сертификата сервера 160, получения публичного ключа сервера 160, создания шифрованного канала связи между клиентом 110 и сервером 160, в случае если сертификат сервера 160 подлинный, и передачи данных между клиентом 110 и сервером 160.

Изолированный модуль транспортного взаимодействия 130 является модулем, инициализирующим взаимодействие с клиентом 110, сервером 160 и изолированным модулем шифрования 140.

В частном варианте реализации изолированный модуль транспортного взаимодействия 130 перехватывает запрос на соединение от клиента 110 к серверу 160. Затем отправляет серверу 160 запрос на соединение. В ответ модуль 130 получает от сервера 160 сертификат и публичный ключ сервера 160, которые отправляет по IPC-каналу изолированному модулю шифрования 140.

Изолированный модуль шифрования 140 предназначен для создания ключей шифрования, шифрования с помощью публичного ключа сервера 160 данных, отправленных клиентом 110 к серверу 160, дешифрования с помощью приватного ключа клиента 110 данных, отправленных сервером 160 к клиенту 110, а также проверки сертификата сервера 160 на подлинность.

Изолированный модуль шифрования 140 с одной стороны является модулем, инициализирующим взаимодействие с изолированным модулем контроля сертификатов 150, а с другой стороны является модулем, обрабатывающим обращение изолированного модуля транспортного взаимодействия 130.

Изолированный модуль транспортного взаимодействия 130 отправляет IPC-запрос на проверку полученных данных от сервера 160 изолированному модулю шифрования 140 и переходит в режим ожидания IPC-ответа. IPC-запрос содержит по меньшей мере сертификат и публичный ключ сервера 160.

Изолированный модуль шифрования 140 принимает IPC-запрос на проверку сертификата сервера 160 от изолированного модуля транспортного взаимодействия 130. Затем посредством изолированного модуля контроля сертификатов 150 (описан далее) изолированный модуль шифрования 140 проверяет сертификат сервера 160 на подлинность.

Если сертификат сервера 160 не является подлинным, изолированный модуль шифрования 140 не создает публичный и приватный ключи шифрования клиента 110 и отправляет IPC-ответ с результатом проверки сертификата сервера 160 изолированному модулю транспортного взаимодействия 130 для отмены создания соединения с сервером 160.

Если сертификат сервера 160 является подлинным, изолированный модуль шифрования 140 создает публичный и приватный ключи шифрования клиента 110. Изолированный модуль шифрования 140 отправляет IPC-ответ с результатом проверки сертификата сервера 160 и публичным ключом клиента 110 изолированному модулю транспортного взаимодействия 130 для создания соединения с сервером 160.

В частном варианте реализации, если у клиента 110 есть публичный и приватный ключи шифрования, изолированный модуль шифрования 140 создает публичный и приватный ключи шифрования системы межсетевого взаимодействия 120 для создания шифрованного канала связи не только с сервером 160, но и с клиентом 110.

Изолированный модуль транспортного взаимодействия 130 принимает IPC-ответ от изолированного модуля шифрования 140. Если сертификат сервера 160 не является подлинным, изолированный модуль транспортного взаимодействия 130 не создает соединение с сервером 160. Если сертификат сервера 160 является подлинным, изолированный модуль транспортного взаимодействия 130 отправляет публичный ключ клиента 110 к серверу 160 и создает шифрованный канал связи с сервером 160.

В частном варианте реализации изолированный модуль транспортного взаимодействия 130 обменивается публичными ключами с сервером 160 и клиентом 110 и создает шифрованные каналы связи с сервером 160 и клиентом 110.

Изолированный модуль контроля сертификатов 150 предназначен для предоставления изолированному модулю шифрования 140 доступа к базе сертификатов.

В предпочтительном варианте реализации база сертификатов реализована на машиночитаемом носителе информации, например SD-карте, причем изолированный модуль контроля сертификатов 150 получает доступ к базе сертификатов посредством виртуальной файловой системы 152.

Изолированный модуль контроля сертификатов 150 является модулем, обрабатывающим обращение изолированного модуля шифрования 140.

Фиг. 2 иллюстрирует способ межсетевого взаимодействия клиента, системы межсетевого взаимодействия и сервера.

На предварительном этапе 205 перехватывают с помощью системы межсетевого взаимодействия 120, в частности при помощи модуля транспортного взаимодействия 130, запрос на соединение от клиента 110 к серверу 160.

В частном варианте реализации в роли клиента 110 выступает приложение, установленное на операционной системе (например, Kaspersky OS, Linux OS). При этом клиент 110 и система межсетевого взаимодействия 120 реализованы в рамках единой компьютерной системы.

В частном варианте реализации в роли клиента 110 выступает приложение, установленное на операционной системе (например, Kaspersky OS, Linux OS). В роли сервера 160 выступает виртуальная файловая система. При этом клиент 110, система межсетевого взаимодействия 120 и сервер 160 реализованы в рамках единой компьютерной системы.

На этапе 210 с помощью системы межсетевого взаимодействия 120 инициализируют от лица клиента 110 запрос на соединение с сервером 160.

На этапе 220 с помощью системы межсетевого взаимодействия 120 принимают от сервера 160 сертификат и публичный ключ сервера 160.

На этапе 230 проверяют сертификат сервера 160 на подлинность с помощью изолированного модуля шифрования 140 с помощью базы сертификатов, доступ к которой получают посредством изолированного модуля контроля сертификатов 150.

На этапе 240 создают публичный и приватный ключи шифрования клиента 110 посредством изолированного модуля шифрования 140 и обмениваются публичными ключами шифрования посредством изолированного модуля транспортного взаимодействия 130 с сервером 160 для создания шифрованного канала связи с сервером 160.

Шифрование данных, отправленных от клиента 110 к серверу 160, реализуется с помощью публичного ключа сервера 160, а дешифрование данных, отправленных от сервера 160 к клиенту 110, реализуется с помощью приватного ключа клиента 110.

В частном варианте реализации, в котором у клиента 110 есть публичный и приватный ключи шифрования для взаимодействия с системой межсетевого взаимодействия 120, создают публичный и приватный ключи шифрования системы межсетевого взаимодействия 120 и обмениваются публичными ключами шифрования посредством изолированного модуля транспортного взаимодействия 130 с сервером 160 и клиентом 110 и создают шифрованные каналы связи с сервером 160 и клиентом 110.

На этапе 250 используют шифрованный канал связи для передачи данных между клиентом 110 и сервером 160.

На Фиг. 3 представлена компьютерная система, на которой могут быть реализованы различные варианты систем и способов, раскрытых в настоящем документе. Компьютерная система 20 может представлять собой систему, сконфигурированную для реализации настоящего изобретения, и может быть в виде одного вычислительного устройства или в виде нескольких вычислительных устройств, например, настольного компьютера, портативного компьютера, ноутбука, мобильного вычислительного устройства, смартфона, планшетного компьютера, сервера, мейнфрейма, встраиваемого устройства и других форм вычислительных устройств.

Как показано на Фиг. 3, компьютерная система 20 включает в себя: центральный процессор 21, системную память 22 и системную шину 23, которая связывает разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, способную взаимодействовать с любой другой шинной архитектурой. Примерами шин являются: PCI, ISA, PCI-Express, HyperTransport™, InfiniBand™, Serial ATA, I2C и другие подходящие соединения между компонентами компьютерной системы 20. Центральный процессор 21 содержит один или несколько процессоров, имеющих одно или несколько ядер. Центральный процессор 21 исполняет один или несколько наборов машиночитаемых инструкций, реализующих способы, представленные в настоящем документе. Системная память 22 может быть любой памятью для хранения данных и/или компьютерных программ, исполняемых центральным процессором 21. Системная память может содержать как постоянное запоминающее устройство (ПЗУ) 24, так и память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами компьютерной системы 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.

Компьютерная система 20 включает в себя одно или несколько устройств хранения данных, таких как одно или несколько извлекаемых запоминающих устройств 27, одно или несколько неизвлекаемых запоминающих устройств 28, или комбинации извлекаемых и неизвлекаемых устройств. Одно или несколько извлекаемых запоминающих устройств 27 и/или неизвлекаемых запоминающих устройств 28 подключены к системной шине 23 через интерфейс 32. В одном из вариантов реализации извлекаемые запоминающие устройства 27 и соответствующие машиночитаемые носители информации представляют собой энергонезависимые модули для хранения компьютерных инструкций, структур данных, программных модулей и других данных компьютерной системы 20. Системная память 22, извлекаемые запоминающие устройства 27 и неизвлекаемые запоминающие устройства 28 могут использовать различные машиночитаемые носители информации. Примеры машиночитаемых носителей информации включают в себя машинную память, такую как кэш-память, SRAM, DRAM, ОЗУ, не требующую конденсатора (Z-RAM), тиристорную память (T-RAM), eDRAM, EDO RAM, DDR RAM, EEPROM, NRAM, RRAM, SONOS, PRAM; флэш-память или другие технологии памяти, такие как твердотельные накопители (SSD) или флэш-накопители; магнитные кассеты, магнитные ленты и магнитные диски, такие как жесткие диски или дискеты; оптические носители, такие как компакт-диски (CD-ROM) или цифровые универсальные диски (DVD); и любые другие носители, которые могут быть использованы для хранения нужных данных и к которым может получить доступ компьютерная система 20.

Системная память 22, извлекаемые запоминающие устройства 27 и неизвлекаемые запоминающие устройства 28, содержащиеся в компьютерной системе 20 используются для хранения операционной системы 35, приложений 37, других программных модулей 38 и программных данных 39. Компьютерная система 20 включает в себя периферийный интерфейс 46 для передачи данных от устройств ввода 40, таких как клавиатура, мышь, стилус, игровой контроллер, устройство голосового ввода, устройство сенсорного ввода, или других периферийных устройств, таких как принтер или сканер через один или несколько портов ввода/вывода, таких как последовательный порт, параллельный порт, универсальная последовательная шина (USB) или другой периферийный интерфейс. Устройство отображения 47, такое как один или несколько мониторов, проекторов или встроенных дисплеев, также подключено к системной шине 23 через выходной интерфейс 48, такой как видеоадаптер. Помимо устройств отображения 47, компьютерная система 20 оснащена другими периферийными устройствами вывода (на Фиг. 3 не показаны), такими как динамики и другие аудиовизуальные устройства.

Компьютерная система 20 может работать в сетевом окружении, используя сетевое соединение с одним или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 является рабочим персональным компьютером или сервером, который содержит большинство или все упомянутые компоненты, отмеченные ранее при описании сущности компьютерной системы 20, представленной на Фиг. 3. В сетевом окружении также могут присутствовать и другие устройства, например, маршрутизаторы, сетевые станции или другие сетевые узлы. Компьютерная система 20 может включать один или несколько сетевых интерфейсов 51 или сетевых адаптеров для связи с удаленными компьютерами 49 через одну или несколько сетей, таких как локальная компьютерная сеть (LAN) 50, глобальная компьютерная сеть (WAN), интранет и Интернет. Примерами сетевого интерфейса 51 являются интерфейс Ethernet, интерфейс Frame Relay, интерфейс SONET и беспроводные интерфейсы.

Варианты раскрытия настоящего изобретения могут представлять собой систему, способ, или машиночитаемый носитель (или носитель) информации.

Машиночитаемый носитель информации является осязаемым устройством, которое сохраняет и хранит программный код в форме машиночитаемых инструкций или структур данных, к которым имеет доступ центральный процессор 21 компьютерной системы 20. Машиночитаемый носитель может быть электронным, магнитным, оптическим, электромагнитным, полупроводниковым запоминающим устройством или любой подходящей их комбинацией. В качестве примера, такой машиночитаемый носитель информации может включать в себя память с произвольным доступом (RAM), память только для чтения (ROM), EEPROM, портативный компакт-диск с памятью только для чтения (CD-ROM), цифровой универсальный диск (DVD), флэш-память, жесткий диск, портативную компьютерную дискету, карту памяти, дискету или даже механически закодированное устройство, такое как перфокарты или рельефные структуры с записанными на них инструкциями.

Система и способ, настоящего изобретения, могут быть рассмотрены в терминах средств. Термин "средство", используемый в настоящем документе, относится к реальному устройству, компоненту или группе компонентов, реализованных с помощью аппаратного обеспечения, например, с помощью интегральной схемы, специфичной для конкретного приложения (ASIC) или FPGA, или в виде комбинации аппаратного и программного обеспечения, например, с помощью микропроцессорной системы и набора машиночитаемых инструкций для реализации функциональности средства, которые (в процессе выполнения) превращают микропроцессорную систему в устройство специального назначения. Средство также может быть реализовано в виде комбинации этих двух компонентов, при этом некоторые функции могут быть реализованы только аппаратным обеспечением, а другие функции - комбинацией аппаратного и программного обеспечения. В некоторых вариантах реализации, по крайней мере, часть, а в некоторых случаях и все средство может быть выполнено на центральном процессоре 21 компьютерной системы 20. Соответственно, каждое средство может быть реализовано в различных подходящих конфигурациях и не должно ограничиваться каким-либо конкретным вариантом реализации, приведенным в настоящем документе.

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

Похожие патенты RU2820407C1

название год авторы номер документа
СПОСОБЫ АУТЕНТИФИКАЦИИ, ШИФРОВАНИЯ И ДЕКОДИРОВАНИЯ ИДЕНТИФИКАТОРА КЛИЕНТСКОГО ТЕРМИНАЛА И УСТРОЙСТВА ДЛЯ ИХ РЕАЛИЗАЦИИ 2007
  • Урьен Паскаль
  • Бадра Мохамад
RU2451398C2
СПОСОБ И СИСТЕМА ОБЕЗЛИЧЕННОЙ ОЦЕНКИ КЛИЕНТОВ ОРГАНИЗАЦИЙ ДЛЯ ПРОВЕДЕНИЯ ОПЕРАЦИЙ МЕЖДУ ОРГАНИЗАЦИЯМИ 2022
  • Крылов Павел Владимирович
RU2795371C1
ЗАЩИЩЕННАЯ ОБРАБОТКА УДАЛЕННЫХ ПЛАТЕЖНЫХ ТРАНЗАКЦИЙ, ВКЛЮЧАЮЩАЯ В СЕБЯ АУТЕНТИФИКАЦИЮ ПОТРЕБИТЕЛЕЙ 2014
  • Махотин Олег
  • Пирзадех Киушан
RU2663476C2
Программируемый логический контроллер для управления устройствами реального времени 2024
  • Барсуков Сергей Николаевич
  • Сорокин Игорь Александрович
  • Мотавин Александр Михайлович
  • Духвалов Андрей Петрович
RU2825561C1
РЕАЛИЗАЦИЯ ЗАЩИЩЕННОГО ОБМЕНА ИНФОРМАЦИЕЙ В ИСПОЛНЯЮЩЕЙ СИСТЕМЕ 2012
  • Рот Грегори Б.
  • Крахен Эрик Д.
  • Бер Грэм Д.
  • Брэндуайн Эрик Дж.
  • Фитч Натан Р.
RU2584570C2
ОБРАБОТКА ЗАЩИЩЕННЫХ УДАЛЕННЫХ ПЛАТЕЖНЫХ ТРАНЗАКЦИЙ 2014
  • Шитс Джон
  • Вагнер Ким
  • Обюе Кристиан
  • Лю Фредерик
  • Карпенко Игорь
  • Пауэлл Гленн
  • Пирзадех Киушан
RU2674329C2
УПРАВЛЯЕМОЕ ПОЛИТИКАМИ ДЕЛЕГИРОВАНИЕ УЧЕТНЫХ ДАННЫХ ДЛЯ ЕДИНОЙ РЕГИСТРАЦИИ В СЕТИ И ЗАЩИЩЕННОГО ДОСТУПА К СЕТЕВЫМ РЕСУРСАМ 2007
  • Медвинский Геннадий
  • Илак Кристиан
  • Хагиу Костин
  • Парсонз Джон Э.
  • Фатхалла Мохамед Эмад Эль Дин
  • Лич Пол Дж.
  • Камель Тарек Бухаа Эль-Дин Махмуд
RU2439692C2
УСТАНОВЛЕНИЕ ОДНОРАНГОВОГО СЕАНСА С МАЛЫМ ВРЕМЕНЕМ ОЖИДАНИЯ 2010
  • Гелвин Том
  • Стир Дэвид
RU2542911C2
БЕЗОПАСНЫЙ ОБМЕН ДАННЫМИ, ОБЕСПЕЧИВАЮЩИЙ ПРЯМУЮ СЕКРЕТНОСТЬ 2018
  • Ле Сэн, Эрик
  • Мохассел, Пэйман
RU2771928C2
УСТРОЙСТВО И СПОСОБ ЗАЩИЩЕННОЙ ПЕРЕДАЧИ ДАННЫХ 2006
  • Соннэга Марко Александер Хэнк
  • Календа Зденек
RU2448365C2

Иллюстрации к изобретению RU 2 820 407 C1

Реферат патента 2024 года Система и способ межсетевого взаимодействия клиента и сервера

Изобретение относится к вычислительной технике. Технический результат заключается в повышении безопасности межсетевого взаимодействия клиента и сервера. Способ межсетевого взаимодействия содержит этапы, на которых: перехватывают запрос на соединение от клиента к серверу; инициализируют от лица клиента запрос на TLS-соединение с сервером; принимают сертификат и публичный ключ от сервера, которые передают изолированному модулю шифрования; проверяют полученный сертификат сервера на подлинность путем взаимодействия с базой сертификатов; если сертификат сервера определен как подлинный, создают публичный и приватный ключи шифрования клиента и обменивают публичные ключи шифрования с сервером для создания шифрованного канала связи, причем шифрование данных, отправленных от клиента к серверу, реализуется с помощью публичного ключа сервера, а дешифрование данных, отправленных от сервера к клиенту, реализуется с помощью приватного ключа клиента. 2 н. и 6 з.п. ф-лы, 3 ил.

Формула изобретения RU 2 820 407 C1

1. Система межсетевого взаимодействия, состоящая по меньшей мере из одной компьютерной системы и содержащая:

а) модуль безопасности, предназначенный для изоляции модуля транспортного взаимодействия, модуля шифрования и модуля контроля сертификатов, при этом изоляция осуществляется на основании политик безопасности, которые содержат требования и условия взаимодействия с каждым упомянутым модулем;

б) изолированный модуль транспортного взаимодействия, взаимодействующий с клиентом, сервером и изолированным модулем шифрования и предназначенный для:

• перехвата запроса на соединение от клиента к серверу;

• инициализации TLS-соединения с сервером;

• получения сертификата и публичного ключа от сервера;

• передачи полученных данных изолированному модулю шифрования;

• создания шифрованного канала связи между клиентом и сервером, в случае если сертификат сервера подлинный;

• передачи данных между клиентом и сервером при помощи шифрованного канала связи;

в) изолированный модуль шифрования, предназначенный для проверки сертификата сервера на подлинность с помощью взаимодействия с изолированным модулем контроля сертификатов и в случае подлинности сертификата для:

• создания публичного и приватного ключей клиента;

• шифрования с помощью публичного ключа сервера данных, отправленных клиентом к серверу;

• дешифрования с помощью приватного ключа клиента данных, отправленных сервером к клиенту;

• передачи публичного ключа клиента и результата проверки сертификата сервера изолированному модулю транспортного взаимодействия;

г) изолированный модуль контроля сертификатов, предназначенный для предоставления изолированному модулю шифрования доступа к базе сертификатов.

2. Система по п. 1, в которой модуль безопасности при каждом обращении к каждому модулю осуществляет проверку выполнения политик безопасности.

3. Система по п. 1, в которой указанные модули взаимодействуют между собой посредством модуля безопасности путем обмена IPC-сообщениями.

4. Система по п. 1, в которой модуль безопасности перехватывает каждое обращение от одного изолированного модуля к другому изолированному модулю, анализирует перехваченное обращение и передает перехваченное обращение назначавшемуся изолированному модулю, если указанное обращение соответствует требованиям и условиям политики безопасности.

5. Способ межсетевого взаимодействия, реализующийся по меньшей мере на одной компьютерной системе и содержащий этапы, на которых:

а) перехватывают с помощью изолированного модуля транспортного взаимодействия запрос на соединение от клиента к серверу;

б) инициализируют с помощью изолированного модуля транспортного взаимодействия от лица клиента запрос на TLS-соединение с сервером;

в) принимают с помощью изолированного модуля транспортного взаимодействия сертификат и публичный ключ от сервера, которые передают изолированному модулю шифрования;

г) проверяют с помощью изолированного модуля шифрования полученный сертификат сервера на подлинность путем взаимодействия с базой сертификатов через изолированный модуль контроля сертификатов;

д) если сертификат сервера определен как подлинный, создают публичный и приватный ключи шифрования клиента посредством изолированного модуля шифрования и обменивают публичные ключи шифрования посредством изолированного модуля транспортного взаимодействия с сервером для создания шифрованного канала связи, причем шифрование данных, отправленных от клиента к серверу, реализуется с помощью публичного ключа сервера, а дешифрование данных, отправленных от сервера к клиенту, реализуется с помощью приватного ключа клиента.

6. Способ по п. 5, в котором изоляцию модуля транспортного взаимодействия, модуля шифрования и модуля контроля сертификатов осуществляют при помощи модуля безопасности на основании политик безопасности, которые содержат требования и условия взаимодействия с каждым упомянутым модулем.

7. Способ по п. 5, в котором во время каждого взаимодействия между изолированным модулем транспортного взаимодействия, изолированным модулем шифрования и изолированным модулем контроля сертификатов осуществляют проверку выполнения политик безопасности при помощи модуля безопасности.

8. Способ по п. 5, в котором перехватывают каждое обращение от одного изолированного модуля к другому изолированному модулю, анализируют перехваченное обращение и передают перехваченное обращение назначавшемуся изолированному модулю, если указанное обращение соответствовало требованиям и условиям политики безопасности.

Документы, цитированные в отчете о поиске Патент 2024 года RU2820407C1

Многоступенчатая активно-реактивная турбина 1924
  • Ф. Лезель
SU2013A1
Приспособление для суммирования отрезков прямых линий 1923
  • Иванцов Г.П.
SU2010A1
US 9154958 B2, 06.10.2015
US 9652741 B2, 16.05.2017
УСТРОЙСТВО МЕЖСЕТЕВОГО ВЗАИМОДЕЙСТВИЯ 2008
  • Мацусима Кенсуке
RU2380844C2
ОРГАНИЗАЦИЯ МЕЖСЕТЕВОГО ВЗАИМОДЕЙСТВИЯ МЕЖДУ ПЕРВОЙ СЕТЬЮ И ВТОРОЙ СЕТЬЮ 2004
  • Джаин Никхил
  • Хантер Эндрю Т.
RU2339188C2

RU 2 820 407 C1

Авторы

Кутумов Алексей Алексеевич

Донцов Максим Андреевич

Зимарина Дарья Сергеевна

Даты

2024-06-03Публикация

2023-09-27Подача