Почему браузеры позволяют onmousedown JS изменять href?

Я очень давно заметил, что когда вы пытаетесь скопировать расположение ссылки или открыть ссылку на Facebook, ссылка изменится и передает его через l.php .

Например, меня могут отправить на

 http://www.facebook.com/l.php?u=http%3A%2F%2Fwww.google.com%2F&h=DKVUritNDJDJLDLVbldoDLFKBLOD5dlfDJY_-d3fgDUaA9b

, даже если мой браузер отображает предварительный просмотр ссылки как http://www.google.com/ .

Сегодня я более внимательно изучил Firebug и обнаружил, что Facebook помещает onmousedown = "UntrustedLink.bootstrap ($ (this) [...] в ] Когда я щелкнул правой кнопкой мыши ссылку, я увидел изменение атрибута href в Firebug.

Это меня беспокоит.

Совет, который многие из нас дали менее технически подкованным людям (проверьте куда ведет вас ссылка до того, как вы нажмете, чтобы вы не стали жертвой фишинга) теперь кажется бесполезным. Разве это не угроза безопасности? Не могут ли фишинговые веб-сайты злоупотреблять этим?

Почему этого не происходит? t браузеры предотвращают такое поведение, запрещая onmousedown изменять href , либо запуская javascript перед чтением атрибута href , чтобы я был отправлен в местоположение Я думал, что собираюсь, а не одно изменение, пока я нажимал на него?

Edit : Я хочу вкратце подчеркнуть, что больше, чем риск фишинга, меня беспокоит то, что использование rs вводят в заблуждение, и мне просто кажется неправильным, что это может произойти, будь то надежный источник или нет.

21
задан MSalters 26 August 2011 в 15:06
поделиться