В сервисе аутентификации Mozilla Persona выявлены проблемы с безопасностью
Причина уязвимости кроется в особенностях верификации с использованием OpenID и проявляется только для сервисов, для которых поддерживается подтверждение по данному протоколу (на данным момент только Gmail и Yahoo Mail). В частности, для проверки корректности привязки email к заявленному аккаунту используется цифровая подпись. Подразумевается, что цифровая подпись охватывает поле с email, но упускается, что допустимо указание произвольных полей для проверки по цифровой подписи.
Таким образом, атакующий может сформировать для OpenID цифровую подпись, не охватывающую email, после чего подменить указанный в параметрах верификации адрес. После смены адреса цифровая подпись останется корректной и многие популярные OpenID-библиотеки, явным образом не проверяющие наличие поля с email в числе охватываемых цифровой подписью полей, будут считать запрос с фиктивным email прошедшим верификацию.
Второй вектор атаки связан с особенностью извлечения значений полей OpenID. Например, атакующий может путём спуфинга подставить в начало корректно верифицированного запроса дополнительное поле "openid.foo.value.email: victim@gmail.com". Несмотря на то, что цифровая подпись будет корректно сформирована для изначально указанного поля "openid.ext1.value.email: example@gmail.com", многие OpenID-библиотеки извлекут email из поля, указанного первым, несмотря на то, что оно не охватывается цифровой подписью.
Источник: http://www.opennet.ru/opennews/art.shtml?num=38061
|
0 | Tweet | Нравится |
|