За последние 24 часа нас посетили 22873 программиста и 1272 робота. Сейчас ищут 769 программистов ...

Универсальная защита от XSS

Тема в разделе "Решения, алгоритмы", создана пользователем Dagdamor, 12 июн 2007.

  1. Dagdamor

    Dagdamor Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    В PHP, начиная с версии 5.2, функции setcookie() можно передать дополнительный параметр httponly.
    Насколько я понял, это задает кукису какой-то дополнительный флаг, после чего кука становится доступна только через $_COOKIE, но недоступна в java- и прочих скриптах. Имхо, полезная фишка для дополнительной защиты приложения :)

    http://ru2.php.net/setcookie
     
  2. dark-demon

    dark-demon Активный пользователь

    С нами с:
    16 фев 2007
    Сообщения:
    1.920
    Симпатии:
    1
    Адрес:
    леноград
    имхо, ещё одна подпорка не спасёт здание от падения :) xss заключается далеко не только в краже куки...
     
  3. Anonymous

    Anonymous Guest

    Согласен.
     
  4. Diver

    Diver Активный пользователь

    С нами с:
    19 фев 2006
    Сообщения:
    144
    Симпатии:
    0
    Адрес:
    Владивосток
    Т.е. когда-нибуть в будущем (очень далеком и очень светлом) может быть это будет как то работать.
    Т.е. это даже не подпорка
     
  5. ONK

    ONK Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    281
    Симпатии:
    0
    Адрес:
    СПб
    Делаем вывод, на всякий случай не храните в куках ничего ценного, а то что храните, используйте с соответствующими предосторожностями...
    В любом случае, куки может подделать/сфальсифицировать владелец/удалённый клиент.
     
  6. Dagdamor

    Dagdamor Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    dark-demon
    Горбунов Олег
    Верно, но это основной и самый простой способ. Сколько систем уже было взломано из-за такой мелочи как недостаточная фильтрация данных перед отображением :) думаю, авторы этих систем, стоя перед выбором "снова и снова проверять выводимые данные, блокируя все более изощренные способы XSS" и "добавить один дополнительный аргумент при вызове функции setcookie", выбрали бы второй вариант, он проще и надежнее.

    Что же касается момента, что не все браузеры это поддерживают - помните, что стандарт был разработан задолго до его поддержки в PHP. Думаю, все нынешние браузеры поддерживают HTTP-only cookies не хуже поддержки Жабаскрипта.
     
  7. Diver

    Diver Активный пользователь

    С нами с:
    19 фев 2006
    Сообщения:
    144
    Симпатии:
    0
    Адрес:
    Владивосток
    т.е. максимум на троечку из 5.
    если учесть как хорошо поддерживается жс.
     
  8. Dagdamor

    Dagdamor Активный пользователь

    С нами с:
    4 фев 2006
    Сообщения:
    2.095
    Симпатии:
    1
    Адрес:
    Барнаул
    Diver
    Я имел в виду минимальную поддержку ;) а с кукисами вообще не может быть никаких троечек - либо поддерживает, либо нет.
     
  9. Штаны

    Штаны Guest

    А может на кукисы в браузерах тоже есть некоторые ограничения. Например на их объем, на символы которые в них могут присутствовать, на их кодировку...