2015-05-21 3 views
1

Вопрос может звучать странно, но у меня сценарий наихудшего случая.Проверить сеанс сеанса SP на уровне приложения

Мой сервер приложений на http://10.10.10.10/app (скажем, это app-server) и HTTP-сервер Apache на http://some.dns.com/app (скажем, это http-server). Оба являются разными системными серверами.

Я знаю, что app-server не должен быть доступен публично, но предположим, что он общедоступен. Теперь Shibboleth установлен на http-server, фиксирующий путь http://some.dns.com/app/secure. Хотя один сервлет отображается для получения атрибутов с пути /secure.

Если кому-то удается создать поддельный http-apache-сервер (скажем fake-http-server), и это тоже указывает на app-server. Таким образом, здесь fake-http-server может напрямую иметь доступ к пути /secure, и этот сервер может вручную отправлять атрибуты shibboleth и может войти в систему без защиты.

Мой вопрос здесь, Существует ли механизм в Шибболет, где я могу проверить Шибболет сессии в моем приложении - не только в HTTP слое.

ответ

1

Модуль mod_shib Apache устанавливает переменные среды по умолчанию. Эти переменные нельзя подделать прокси-сервером Apache.

От docs:

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

Если вы не доверяете веб-сервер Apache, вы можете разобрать утверждение SAML в коде и проверки подписей в утверждении с использованием сертификата, предоставленного поставщика удостоверений (МВУ) делает утверждение SAML. Но проверка подписей затруднительна, и вам нужно иметь дело с такими случаями, как поворот ключей и как обрабатывать новые сертификаты, используемые IdP. Шибболет справляется с этими очень трудными и важными задачами для вас.

Смежные вопросы