3 min read

Шифрование HTTPS: атаки на аутентификацию в сервисах дистанционного банковского обслуживания

Шифрование HTTPS: атаки на аутентификацию в сервисах дистанционного банковского обслуживания

Руководители направления информационной безопасности

Ключевые слова: https, атака «человек-по-середине», перехват трафика, веб безопасность, дистанционное банковское обслуживание, само подписанные сертификаты, Закон Яровой

Связь с автором:

Web: www.ipiskunov.blogspot.com

E-mail: g14vano@gmail.com

Введение

Современные системы дистанционного банковского обслуживания, такие как web-порталы с личным кабинетом, электронная почта, IM-мессенджеры, VoIP-телефония и том подобное используют защищенные (зашифрованные) протоколы обменам данными. Это позволяет обеспечить конфиденциальность (персональные данные клиентов) и безопасность (от изменения и искажения) данных которыми обмениваются сервер в интернете и электронное устройство клиента. Одним из наиболее часто используемых и известных прикладных протоколов для web-ресурсов является HTTPS. Протокол HTTPS это сути реализация стандартного для интернета web-протокола HTTP с использованием криптографии, а именно ассиметричных систем шифрования использующих алгоритмы RSA или Diffie-Hellman для аутентификации, т.е. систем с открытым и закрытым ключем.

Что такое HTTPS протокол

Технически все данные в HTTPS инкапсулируются и передаются поверх других криптографических протоколов – SSL и TSL. Сегодня используется только TSL протокол, так как в 2014 году в SSL была найдена критическая уязвимость получившая название Heartbleed (CVE-2014-0160) и не позволяющая использовать его в дальнейшем. Хотя и безопасность TSL тоже иногда остается под вопросом, к примеру, в прошлом была уязвимость актуальная для open source клиентов, таких как OpenSSL позволяющая проводить атаку FREAK — TLS Downgrade. В последствии разработчиками был выпущен патч и уязвимость исправлена.

Тем не менее HTTPS очень распространённый протокол безопасности в интернете и применяется для аутентификации на web-ресурсах требующих вход в личный кабинет, что очень часто применяется в сервисах дистанционного банковского обслуживания. Это позволяет защититься прежде всего от атак типа человек-посередине и активного прослушивания трафика с помощью специализированого хакерского программного обеспечения. Однако, используя некоторые хитрости все таки можно попытаться расшифровать перехваченный трафик передаваемый посредством HTTPS. Но это нельзя назвать уязвимостью криптографического алгоритма или технической реализации протокола. Это скорее всего относится к неправильному конфигурирования рабочего окружения и выстраивания цепочки доверия для сертификатов (открытых ключей).

Как можно атаковать HTTPS

Для начала кратко опишем принцип аутентификации производимой через HTTPS-протокол. Что бы web-сервер работал по HTTPS протоколу необходимо установить в систему сертификат для этого веб-сервера. Сертификат состоит из 2 частей (2 ключей) — это public и private. Public-ключ сертификата используется для зашифровывания трафика от клиента к серверу в защищённом соединении, а private-ключ — для расшифровывания полученного от клиента зашифрованного трафика на сервере. После того как оба ключа сгенерированы, на основе публичного ключа формируется запрос на сертификат в Центр сертификации, в ответ на который ЦС высылает подписанный сертификат.

Encryption-process-Cryptomathic.png

Однако, существует возможность создать такой сертификат, не обращаясь в единый ЦС. Так под Unix, с помощью таких утилит, как ssl-ca или gensslcert (утилиты) можно создать сертификат с двумя ключами, их называют self-signed.

Используя эти процедуры в злоумышленник (или легитимный администратор сети) может подменить оригинальные сертификаты (от легитимных web-ресурсов) на эти самоподписанные сертификаты (сгенерированные на локальном прокси-сервере через который выходят в интернет все пользователи). То есть администратор или злоумышленник генерирует сертификаты для каждого пользователя и через форсирование групповых политик в MS Active Directory загружает их в браузер каждого пользователя. По мимо этого на компьютере пользователе будут приниматься все сертификаты, подписанные любыми организациями, которым доверяет этот прокси-сервер.

Эта схема прослушивания трафика (по сути атака человек-по-середине) может применяться хакерами, например для открытых wi-fi сетей, когда жертва подключится в кафе, метро или ином публичном месте к открытой незащищенной сети. Или администратором корпоративной сети какой-либо компании, если стоит задача тотального контроля всех работников (по тому же принципу что DPL-системы).

Наступление эпохи «Закона Яровой»

В 2016 году в России был принят федеральный закон, получивший название «пакет законов Яровой». Закон предписывает передачу ключей шифрования от всех разработчиков всех программных и hardware-продуктов в ФСБ (Федеральная служба безопасности России). Концепция закона подразумевает, что ФСБ будет иметь доступ абсолютно ко всем системам и всему трафику передаваемому в интернете для обеспечения государственной безопасности, предупреждения террористических актов и проведению расследования преступлений. Необходимость таких мер возникла после террористических актов в Париже и взрывов в аэропорту Брюсселя, когда у одного из террористов был изъят iPhone с зашифрованным содержимым переписки между террористами при подготовки атаки.

Использование выше описанного метода атаки на HTTPS теоретически дает возможность ФСБ получить доступ и расшифровывать весь трафик передаваемый по защищенным каналам. Хотя это потребовало бы больших дата-центров и вычислительных мощностей. Многие эксперты утверждают, что подобное поведение это нарушение конституционных прав граждан на тайну личной жизни и тайны связи. Однако представители ФСБ утверждают, что данная мера будет использована только в критической ситуации. А вот в Казахстане эта меру уже узаконена и введена в действие.

 

New Call-to-action

 References and Further Reading

 Image: Matryoshka dolls, Moscow, courtesy of Neiljs, Flickr (CC BY 2.0)