URL протокола в Firefox не работает, если он содержит «% 2F»

1085
testphys

Если я напишу что-то вроде следующего в навигационную панель Mozilla Firefox, ничего не произойдет:

орг-протокол: // захват: //p/http%3A%2F%2Fsuperuser.com%2Fquestions%2Fask/protocol%20in%20firefox%20does%20not%20take%20%22%252F%22%20as%20part% 20of% 20a% 20string% 20-% 20Super% 20User /

Когда я опускаю все %2F, URL обрабатывается нормально. Вызов emacsclient через терминал работает в том числе %2F.

В некоторых предыдущих версиях Firefox этот протокол работал хорошо для каждого случая. Почему Firefox теперь распознает %2Fв этом случае?

1

1 ответ на вопрос

0
Horn OK Please

Я считаю, что это функция безопасности. %2Fкак вы, возможно, знаете, это URL-кодировка /символа косой черты. Разрешение - %2Fэто, по сути, разрешение обхода каталога, который идет «под радар», то есть он не дает пользователю ясно видеть, что он просматривает каталоги. Объедините это с разрешением .символа, и вы сможете сделать что-то неприятное, особенно если вы говорите о локальной файловой системе, где обратный путь в каталогах не ограничен тщательно, как это часто (но не всегда) осуществляется HTTP-серверами.

Вы помните конкретные версии Firefox, где это работало, и версии, где оно перестало работать? За прошедшие годы в Firefox было несколько исправлений безопасности, связанных с проверкой входных данных, для различных обходных путей. Ваш URI может отключить защитный код. Есть даже некоторые жалобы в некоторых ссылках ниже, что, в зависимости от конкретной версии, попытки исправления либо усугубили проблему, либо вызвали некоторые ложные срабатывания; т. е. код будет блокировать законные URI.

  1. http://www.securityfocus.com/bid/24191/references
  2. http://www.securiteam.com/securitynews/5LP011FLPC.html
  3. http://www.securiteam.com/securitynews/5CP0M0UN5A.html
  4. http://www.mozilla.org/security/announce/2011/mfsa2011-16.html
Я использую Ubuntu, и я недавно обновил с 10.10 до 12.04 LTS. Проблема появилась в Firefox 13 и до сих пор существует для 14. testphys 12 лет назад 0