Open Redirect на LinkedIn

Admin

Administrator
Регистрация
12.08.2016
Сообщения
722
Оценка реакций
452
5e60deb00b1f8bc665346.png
Привет. Эта статья о том, как на крупнейшей социальной сети для поиска и установления деловых контактов была найдена уязвимость под название Open Redirect.

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

Вот пример. Имеем ссылку


Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

[/URL]


В этой ссылке параметр "url" указывает то, куда необходимо перенаправить пользователя при успешной авторизации. Если значение этого параметра не сверяется на сервере с белым списком, тогда вместо "

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

" можно вставить любой другой адрес, например, "

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

". В данном случае cybredbank будет являться поддоменом домена eachbonus.com, который создал злоумышленник.

Перейдем к сути
Найденная уязвимость на LinkedIn была не такой простой, как в примера выше. Уязвимый URL выглядел так:


Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.



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

url=../t.me/cybred

url=///t.me/cybred

url=///[email protected]/cybred/%2f%2e%2e


меня преследовали неудачи - редирект не происходил.

Наверное, вы уже заметили, что у этой ссылки есть ещё один параметр - "urlHash", который обозначает контрольную сумму значения "url". Т.е., редирект будет работать тогда и только тогда, когда "urlHash" будет верным для нашей ссылки "url". Вернувшись к "сырому" запросу, я обнаружил хедер "Referer", который показывает последнюю страницу, которую посетил пользователь.
2bbf3c35e7f2b7442ee08.png

И тут меня осенило - "Что, если изменить это значение и посмотреть, работает ли там валидация?". Я изменил его и... *facepalm* - ничего не изменилось.

Разочаровавшись, я забросил пентест LinkedIn. Но, спустя некоторое время, я наткнулся на

Авторизируйтесь или Зарегистрируйтесь что бы просматривать ссылки.

Github. Взял оттуда Android App Referer (android-app://com.linkedin.android) и подставил в прежний запрос. Результат вы можете увидеть на изображении ниже : )
f35f518a9236cf96a04e4.png
 
  • Like
Реакции: shellest

Satana666

New Member
Регистрация
25.09.2019
Сообщения
1
Оценка реакций
0
Очень годно!