The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Возможно ли обнаружение MITM со стороны сервера?"
Вариант для распечатки  
Пред. тема | След. тема 
Форум WEB технологии (Безопасность)
Изначальное сообщение [ Отслеживать ]

"Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от OldMonster (ok), 08-Янв-19, 01:50 
ДВС.
Ситуация довольно простая.
Есть человек и сайт, куда этот человек часто ходит. По https.
В т.ч. и с работы.
Но. На работе, для обеспечения фильтрации контента установлена некая система - закрытая даже от админов. На браузеры рабочих мест вставлен сертификат, которому они должны доверять.
(не спрашивайте, что оно такое - не знаю. И сертификат не видел).
Фактически, (по опросам)так:
Когда из дома то браузер->сайт
Когда с работы браузер->MITM система->сайт
Допустим, я владею этим самым нужным сайтом, и не хочу отдавать чувствительные данные, когда человече заходит на него с работы.

Существует ли методика определения со стороны сервера(сайта), что вход на сайт осуществлён через эту систему с левым "доверенным" сертификатом?
Ещё раз: соединение по ssl, сертификат на сайте - реальный, не самоподписаный.
?
Спасибо.

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от Drew (??), 08-Янв-19, 08:08 
> Существует ли методика определения со стороны сервера(сайта), что вход на сайт осуществлён
> через эту систему с левым "доверенным" сертификатом?

Нет, такой методики не существует.

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

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от OldMonster (ok), 08-Янв-19, 14:12 
А джавой нельзя вытащить из браузера что-то типа "я использую не совсем кошерный серт, ибо так приказал насяльника"?
Или вообще список сертификатов, использованных при ЭТОМ соединении.

вот логически вроде понимаю, что обойти - никак, но вдруг...

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

6. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от Drew (??), 09-Янв-19, 13:01 
> А джавой нельзя вытащить из браузера что-то типа "я использую не совсем
> кошерный серт, ибо так приказал насяльника"?

Технически запретов на это нет, но вот даст ли _браузер_ эти данные...

Java-апплет -- это же не полноценное приложение.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

3. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от eRIC (ok), 08-Янв-19, 22:00 
> Существует ли методика определения со стороны сервера(сайта), что вход на сайт осуществлён
> через эту систему с левым "доверенным" сертификатом?
> Ещё раз: соединение по ssl, сертификат на сайте - реальный, не самоподписаный.

используйте SSL Client Certificate для того чтобы сервером определять настоящего клиента

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

4. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от OldMonster (ok), 08-Янв-19, 22:27 
>> Существует ли методика определения со стороны сервера(сайта), что вход на сайт осуществлён
>> через эту систему с левым "доверенным" сертификатом?
>> Ещё раз: соединение по ssl, сертификат на сайте - реальный, не самоподписаный.
> используйте SSL Client Certificate для того чтобы сервером определять настоящего клиента

т.е. всё-таки клиентский сертификат для браузера... м-да..
это, конечно, будет работать, но несколько не то, что надо.

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

5. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от OldMonster (ok), 08-Янв-19, 22:28 
Спасибо всем отозвавшимся,
я понял, что в данных условиях мои хотелки невозможны.


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

7. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от Pahanivo (ok), 09-Янв-19, 13:17 
> Спасибо всем отозвавшимся,
> я понял, что в данных условиях мои хотелки невозможны.

Но можно это проверить со стороны клиента - ткнув на замочек и посмотрев сертификат.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

8. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от DlinniyPuk (?), 11-Янв-19, 00:59 
Идеально сделанный MITM невозможно заметить на стороне сервера без клиентского сертификата, но я почему-то уверен, что 99% MITM-ов не идельные.

Смотрите, браузеры, при соединении с TLS сервером, говорят, к примеру: привет дядь сервер, я могу tls1, tls1.1, tls1.2 tls1.3, шифры такие-то, аутентификации такие-то, обмен ключами - такие-то. А MITM Box-ы, обычно старые железки с другим (различным от современных браузеров) списком поддерживаемых алгоритмов.

То есть, мы можете у себя иметь базу, что Firefox такой-то имеет такой список алгоритмов, Хром - такой список, и.т.д.

И если к вам подключится клиент, который к примеру говорит что он Firefox 63, но не поддерживает tls1.3, вы можете быть 99% уверены что там MITM (может локальный антивирь, или корпоротивный MITM Box, или что угодно, но MITM).

Но чтобы замутить такое вам потребуется скритующийся веб-сервер.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

9. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от OldMonster (ok), 11-Янв-19, 01:28 
>Идеально сделанный MITM невозможно заметить на стороне сервера без клиентского сертификата

Да, если он стрррашно интелектуальный. Но! Если джава может вытащить - под каким сертификатом он соединился, то обнаружть вполне можно. Джаву только не знаю.

> обмен ключами - такие-то. А MITM Box-ы, обычно старые железки с

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

> Но чтобы замутить такое вам потребуется скритующийся веб-сервер.

_СКРИТПУЮЩИЙСЯ_?

Даже не знаю, настраивал только nginx и индейца. Почитать, что там за возможности в модулях..

ммм... на месте разрабов я бы просто сделал список из 10-ка подходящих браузеров и кейс в выбором наиболее близкого. Ну и ежемесячную подкачку с "базы" актуального списка..

но "ловить на косвенных" - интересная идея. Надо поискать, что там джава может вытащить о свойствах соединения из браузера..

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

10. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от Pahanivo (ok), 11-Янв-19, 07:58 
> Да, если он стрррашно интелектуальный. Но! Если джава может вытащить - под
> каким сертификатом он соединился, то обнаружть вполне можно. Джаву только не
> знаю.

Если бы контент браузера мог легко вытаскивать сертификаты это был бы номер ....

> Появилась инормация поподробнее... это обычная машина с ситемой, постоенной на фре 9.х
> Стоит система каких-то безумных денег.
> _СКРИТПУЮЩИЙСЯ_?

key words: SSL bump.

Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

11. "Возможно ли обнаружение MITM со стороны сервера?"  +/
Сообщение от DlinniyPuk (?), 11-Янв-19, 20:21 
> key words: SSL bump.

Еще key word: TLS Termination


Например HAProxy умеет такое.

https://www.haproxy.com/documentation/haproxy/deployment-gui.../

А вот то что нужно, смотрите параметры ssl_fc_* и req.ssl_*

https://cbonte.github.io/haproxy-dconv/1.9/configuration.htm...

Если даже богатый язык конфигурации HAProxy не позволит создать ACL-ы по параметру ssl_fc_cipherlist_str (очень сомневаюсь), то возможно это можно будет сделать используя LUA скрипт.

HAProxy LUA Scripting - https://www.arpalert.org/src/haproxy-lua-api/1.9dev/index.html

------

У Nginx, кстати, есть почти что подходящий модуль - ngx_stream_ssl_preread:

https://nginx.org/en/docs/stream/ngx_stream_ssl_preread_modu...

С его помощью можно "войти" внутрь TLS/SSL и взять такие параметры как версия протокола, SNI хост, и список шифров по ALPN! Но ALPN это сравнительно новое расширение TLS, старые браузеры не поддерживают. Если ваши клиенты пользуются обновленными браузерами/мобилами, то попробовть можно, думаю. Можно даже доработать модуль чуток, чтобы cipher_suites из client_hello клиента тоже извлечь.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру