На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
Модераторы: Vasya2000, Serafim, fatalist
  
> Можно ли не использовать percent‐encoding в ссылках? , Насколько это валидно, нет ли скрытых опасностей типа XSS инъекций, если ссылки добавляются пользователями на форуме?
    Можно ли не использовать percent‐encoding в ссылках, т.е. в href писать кириллицей и другими буквенными символами, которые подпадают под \w в регулярных выражениях php? Насколько это валидно, нет ли скрытых опасностей типа XSS инъекций, если ссылки добавляются пользователями на форуме?

    Вот пример نشانی_وب
    Сообщение отредактировано: S.Eugene -
      Как видишь сейчас уже нету, т.е. можно экранировать лишь 5 символов - `\`, `?`, `&`, `#`, `/` (помимо `>`, `<`, `'` и `"`). Но предлагаю посмотреть как конвертируются ссылки, например в медиавики движке - думаю это практически эталон.
        Цитата Serafim @
        Как видишь сейчас уже нету, т.е. можно экранировать лишь 5 символов - `\`, `?`, `&`, `#`, `/`
        А их зачем экранировать? Какая опасность?
          это составляющие url-адреса

          Добавлено
          ещё двоеточие, забыл про него =)
            Цитата Serafim @
            это составляющие url-адреса

            Вы имеете ввиду, их надо экранировать, если надо передать их буквально? Но мой главный вопрос не в этом. Мне все равно, корректные ли данные несет урл. Меня волнует безопасность от XSS и валидность html кода. Короче говоря, какие символы можно разрешать вносить пользователям в тег [url=] ?
            Сообщение отредактировано: S.Eugene -
              Цитата S.Eugene @
              какие символы можно разрешать вносить пользователям в тег [url=] ?

              имхо любые, кроме ">". А вообще у пыха и жс есть встроенные функции экранирования, подозреваю что у питонки, рубей и прочих - альтернатива найдётся.
                Цитата Serafim @
                имхо любые, кроме ">".

                Еще как минимум `"`

                Если

                [url=X] преобразуется в <a href="X">

                То

                [url=http://ya.ru" OnClick="alert('bad')] преобразуется в

                <a href="http://ya.ru" OnClick="alert('bad')">
                  Ну да.

                  Добавлено
                  А чем уже существующие реализации не устраивают, например: https://packagist.org/packages/mjohnson/decoda?

                  Что за язык кстати? А то я тут привожу в пример похапе...
                  0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
                  0 пользователей:


                  Рейтинг@Mail.ru
                  [ Script execution time: 0,0259 ]   [ 15 queries used ]   [ Generated: 2.05.24, 15:13 GMT ]