Ключевое слово в защите информации
ключевое слово
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход. Новые регистрации запрещены.

Уведомление

Icon
Error

4 Страницы<1234>
Опции
К последнему сообщению К первому непрочитанному
Offline Андрей Писарев  
#21 Оставлено : 5 ноября 2015 г. 10:26:52(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,211
Мужчина
Российская Федерация

Сказал «Спасибо»: 622 раз
Поблагодарили: 2399 раз в 1888 постах
Автор: dizel3d Перейти к цитате
Автор: Смирнов Перейти к цитате
Автор: basid Перейти к цитате
Для локального приложения - вообще не проблема.

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



Получаем список соответствия Connection-PID (его, кстати, можно вывести консольной командой netstat). Ищем в нем наш Connection, получаем PID. По PID получаем ID сеанса. По ID сеанса получаем ID пользователя ОС. Такая схема не требует прав администратора, и скорей всего работает во всех ОС. В Windows работает точно, проверили.

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


Можно пример?
netstat мне показывает имя пк и локальный порт.
Не заметил PID.
Техническую поддержку оказываем тут
Наша база знаний
Offline Андрей Писарев  
#22 Оставлено : 5 ноября 2015 г. 10:28:48(UTC)
Андрей *

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 26.07.2011(UTC)
Сообщений: 14,211
Мужчина
Российская Федерация

Сказал «Спасибо»: 622 раз
Поблагодарили: 2399 раз в 1888 постах
Автор: Андрей * Перейти к цитате
Автор: dizel3d Перейти к цитате
Автор: Смирнов Перейти к цитате
Автор: basid Перейти к цитате
Для локального приложения - вообще не проблема.

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



Получаем список соответствия Connection-PID (его, кстати, можно вывести консольной командой netstat). Ищем в нем наш Connection, получаем PID. По PID получаем ID сеанса. По ID сеанса получаем ID пользователя ОС. Такая схема не требует прав администратора, и скорей всего работает во всех ОС. В Windows работает точно, проверили.

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


Можно пример?
netstat мне показывает имя пк и локальный порт.
Не заметил PID.


Вопрос снят, параметр -o отображает PID.
Техническую поддержку оказываем тут
Наша база знаний
Offline dizel3d  
#23 Оставлено : 5 ноября 2015 г. 10:28:59(UTC)
dizel3d

Статус: Участник

Группы: Участники
Зарегистрирован: 27.10.2015(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Автор: Андрей * Перейти к цитате
Автор: dizel3d Перейти к цитате
Автор: Смирнов Перейти к цитате
Автор: basid Перейти к цитате
Для локального приложения - вообще не проблема.

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



Получаем список соответствия Connection-PID (его, кстати, можно вывести консольной командой netstat). Ищем в нем наш Connection, получаем PID. По PID получаем ID сеанса. По ID сеанса получаем ID пользователя ОС. Такая схема не требует прав администратора, и скорей всего работает во всех ОС. В Windows работает точно, проверили.

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


Можно пример?
netstat мне показывает имя пк и локальный порт.
Не заметил PID.


netstat -o для Windows
netstat -p для Linux
Но из приложения все на системных вызовах будет, конечно.
Offline Павел Смирнов  
#24 Оставлено : 5 ноября 2015 г. 10:59:04(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Автор: dizel3d Перейти к цитате
Получаем список соответствия Connection-PID (его, кстати, можно вывести консольной командой netstat). Ищем в нем наш Connection, получаем PID. По PID получаем ID сеанса. По ID сеанса получаем ID пользователя ОС. Такая схема не требует прав администратора, и скорей всего работает во всех ОС. В Windows работает точно, проверили.

А что если процесс в сеансе запущен от имени другого пользователя? А что если в момент обращения к сервису подписания поток имперсонирован под другого пользователя?

Техническую поддержку оказываем тут.
Наша база знаний.
Offline dizel3d  
#25 Оставлено : 5 ноября 2015 г. 11:06:42(UTC)
dizel3d

Статус: Участник

Группы: Участники
Зарегистрирован: 27.10.2015(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Автор: Смирнов Перейти к цитате
Автор: dizel3d Перейти к цитате
Получаем список соответствия Connection-PID (его, кстати, можно вывести консольной командой netstat). Ищем в нем наш Connection, получаем PID. По PID получаем ID сеанса. По ID сеанса получаем ID пользователя ОС. Такая схема не требует прав администратора, и скорей всего работает во всех ОС. В Windows работает точно, проверили.

А что если процесс в сеансе запущен от имени другого пользователя? А что если в момент обращения к сервису подписания поток имперсонирован под другого пользователя?



Мы рассматриваем вопрос "крипто-сервис как альтернатива плагинам". Если бразуер запущен от USER_1, плагин тоже не сможет получить доступ к сертификатам USER_2.
Но в общем можно включить в крипто-сервис такую настройку: "пользователи, которым также можно доверять".
Offline Павел Смирнов  
#26 Оставлено : 5 ноября 2015 г. 11:09:40(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Автор: dizel3d Перейти к цитате
Мы рассматриваем вопрос "крипто-сервис как альтернатива плагинам". Если бразуер запущен от USER_1, плагин тоже не сможет получить доступ к сертификатам USER_2.
Но в общем можно включить в крипто-сервис такую настройку: "пользователи, которым также можно доверять".

И всё-таки. А что если браузер в сессии USER_1 запущен от имени USER_2?
Техническую поддержку оказываем тут.
Наша база знаний.
Offline dizel3d  
#27 Оставлено : 5 ноября 2015 г. 11:21:41(UTC)
dizel3d

Статус: Участник

Группы: Участники
Зарегистрирован: 27.10.2015(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Автор: Смирнов Перейти к цитате
Автор: dizel3d Перейти к цитате
Мы рассматриваем вопрос "крипто-сервис как альтернатива плагинам". Если бразуер запущен от USER_1, плагин тоже не сможет получить доступ к сертификатам USER_2.
Но в общем можно включить в крипто-сервис такую настройку: "пользователи, которым также можно доверять".

И всё-таки. А что если браузер в сессии USER_1 запущен от имени USER_2?


На мой взгляд это очень редкий use-case. Пользователю придется запустить еще один крипто-сервис от имени USER_2. И, опережая ваш вопрос: да, обратиться к обоим экземплярам крипто-сервиса можно будет через один и тот же порт. Об этой схеме мы раскажем чуть позже, хотим сами еще раз пристально взглянуть на нее. =)

Отредактировано пользователем 5 ноября 2015 г. 11:25:08(UTC)  | Причина: Не указана

Offline Павел Смирнов  
#28 Оставлено : 5 ноября 2015 г. 13:04:16(UTC)
Павел Смирнов

Статус: Вам и не снилось

Группы: Администраторы
Зарегистрирован: 24.12.2007(UTC)
Сообщений: 831
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 1 раз
Поблагодарили: 48 раз в 44 постах
Автор: dizel3d Перейти к цитате
Автор: Смирнов Перейти к цитате
И всё-таки. А что если браузер в сессии USER_1 запущен от имени USER_2?

На мой взгляд это очень редкий use-case. Пользователю придется запустить еще один крипто-сервис от имени USER_2.

Конечно, use case редкий, но ответ на этот вопрос напрямую влияет на безопасность решения. Т.е. по-хорошему вам придётся помимо сессии вызывающего процесса определять ещё и id пользователя, от которого этот процесс запущен. Затем закономерно возникает следующий вопрос. Вы будете пытаться определить браузер к вам обращается или нет? А если не браузер, то как быть с тем, что заголовок Origin может быть подделан?

Техническую поддержку оказываем тут.
Наша база знаний.
Offline dizel3d  
#29 Оставлено : 5 ноября 2015 г. 14:03:48(UTC)
dizel3d

Статус: Участник

Группы: Участники
Зарегистрирован: 27.10.2015(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Автор: Смирнов Перейти к цитате

Конечно, use case редкий, но ответ на этот вопрос напрямую влияет на безопасность решения. Т.е. по-хорошему вам придётся помимо сессии вызывающего процесса определять ещё и id пользователя, от которого этот процесс запущен.



Уточнил у коллеги, который нашел решение. "сессия" в данном случае не "сессия ОС", а SID (Security ID). По нему получаем User ID конкретного процесса. Проверили.

Автор: Смирнов Перейти к цитате

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



Нет, неважно какой процесс запрашивает доступ (браузер или нет), главное, что он запущен от доверенного пользователя. Если это не браузер, а софт злоумышленника, запущенный из под доверенного пользователя, то зачем ему крипто-сервис, он ведь может обратиться к КриптоПРО непосредственно, используя КриптоПро SDK, или воспользоваться плагином к браузеру.
Offline dizel3d  
#30 Оставлено : 6 ноября 2015 г. 15:20:58(UTC)
dizel3d

Статус: Участник

Группы: Участники
Зарегистрирован: 27.10.2015(UTC)
Сообщений: 17
Российская Федерация
Откуда: Москва

Сказал(а) «Спасибо»: 8 раз
Попытаюсь подвести итоги дискуссии. Вот, что мы имеем https://drive.google.com...f-H7VXdCeFd5cFQ3ckE/view (гиперссылки по PDF из браузера могут не работать). В документе приведены 2 похожих решения. (Если у кого-то остались вопросы, постараемся ответить/решить, дополнив FAQ.) Любое из них, на наш (IT Global) взгляд, может стать лучшей альтернативой браузерным плагинам. Согласны?
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
4 Страницы<1234>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.