Всем привет !
Хочу поднять такую тему как защита от XSS и CSRF, а также что это такое...
Понятное дело, что от таких атак должен защищать вебмастер, т.е. там фильтрация данных, настройка сервера и прочие, но тем не менее пользователю тоже неплохо задуматься о защите, всё-же такие атаки идут именно на пользователя, а не на сервер или скрипт...
Итак что-же XSS:
XSS (англ. Cross Site Scripting — «межсайтовый скриптинг») —
Данная атака использует известные уязвимости в web-приложениях, серверах (или в системных плагинах, относящиеся к ним).
Смысл данной атаки заключается в встраивании вредоносного кода и исполнение его у жертвы, таким образом можно украсть куки, проэксплуатировать CSRF (Об этом ниже)...
Вообще XSS атаки достаточно обширны, смысла нет их рассматривать здесь, ибо можно прочитать в той-же вики, необходимо понять что XSS - Это встраивание своего кода и исполнение у жертвы, пример:
Если жертва кликнет по ссылке, то произойдёт заражение на уязвимом сайте, также могут-быть и постоянные XSS, для которых кликать ничего не надо, а достаточно зайти на уязвимый сайт...
Давайте теперь рассмотрим термин CSFR:
CSRF (англ. Сross Site Request Forgery — «Межсайтовая подделка запроса», также известен как XSRF)
Смысл заключается в том, что-бы от имени пользователя совершать какие-либо действия...
К сожалению мало сайтов защищены от таких атак, но это не XSS, хотя часто для эксплуатации XSS используют CSFR, пример:
Например, если здесь на форуме будет найдена XSS, можно через эту XSS от имени жертвы создавать темы, переписки и т.д.
Ещё пример:
Например, пользователь Алиса может просматривать форум, где другой пользователь, Мэллори, разместил сообщение.
Пусть Мэллори создал тег <img>, в котором в качестве источника картинки указан URL, при переходе по которому выполняется действие на сайте банка Алисы, например:
Если банк Алисы хранит ее информацию об аутентификации в куки и если куки еще не истекли, при попытке загрузить картинку браузер Алисы отправит запрос на перевод денег на счет Мэллори и подтвердит аутентификацию при помощи куки.
Таким образом, транзакция будет успешно завершена, хотя ее подтверждение произойдет без ведома Алисы.
Как защититься:
1)Установить блокировщик рекламы, можно использовать плагины, типо NoScript и т.д.;
2)Не переходить по подозрительным ссылкам;
3)Просматривать адресное окно браузера, где вы находитесь;
4)Постоянно обновлять браузеры и плагины, особенно такие как Adobe, ибо XSS могут-быть и в браузерах...;
5)Использовать двухфакторную авторизацию и подтверждение действий.
Хочу поднять такую тему как защита от XSS и CSRF, а также что это такое...
Понятное дело, что от таких атак должен защищать вебмастер, т.е. там фильтрация данных, настройка сервера и прочие, но тем не менее пользователю тоже неплохо задуматься о защите, всё-же такие атаки идут именно на пользователя, а не на сервер или скрипт...
Итак что-же XSS:
XSS (англ. Cross Site Scripting — «межсайтовый скриптинг») —
Данная атака использует известные уязвимости в web-приложениях, серверах (или в системных плагинах, относящиеся к ним).
Смысл данной атаки заключается в встраивании вредоносного кода и исполнение его у жертвы, таким образом можно украсть куки, проэксплуатировать CSRF (Об этом ниже)...
Вообще XSS атаки достаточно обширны, смысла нет их рассматривать здесь, ибо можно прочитать в той-же вики, необходимо понять что XSS - Это встраивание своего кода и исполнение у жертвы, пример:
Код:
http://example.com/search.php?q=<script>DoSomething();</script>
Если жертва кликнет по ссылке, то произойдёт заражение на уязвимом сайте, также могут-быть и постоянные XSS, для которых кликать ничего не надо, а достаточно зайти на уязвимый сайт...
Давайте теперь рассмотрим термин CSFR:
CSRF (англ. Сross Site Request Forgery — «Межсайтовая подделка запроса», также известен как XSRF)
Смысл заключается в том, что-бы от имени пользователя совершать какие-либо действия...
К сожалению мало сайтов защищены от таких атак, но это не XSS, хотя часто для эксплуатации XSS используют CSFR, пример:
Например, если здесь на форуме будет найдена XSS, можно через эту XSS от имени жертвы создавать темы, переписки и т.д.
Ещё пример:
Например, пользователь Алиса может просматривать форум, где другой пользователь, Мэллори, разместил сообщение.
Пусть Мэллори создал тег <img>, в котором в качестве источника картинки указан URL, при переходе по которому выполняется действие на сайте банка Алисы, например:
Код:
Мэллори: Привет, Алиса! Посмотри, какой милый котик: <img src="http://bank.example.com/withdraw?account=Alice&amount=1000000&for=Mallory">
Если банк Алисы хранит ее информацию об аутентификации в куки и если куки еще не истекли, при попытке загрузить картинку браузер Алисы отправит запрос на перевод денег на счет Мэллори и подтвердит аутентификацию при помощи куки.
Таким образом, транзакция будет успешно завершена, хотя ее подтверждение произойдет без ведома Алисы.
Как защититься:
1)Установить блокировщик рекламы, можно использовать плагины, типо NoScript и т.д.;
2)Не переходить по подозрительным ссылкам;
3)Просматривать адресное окно браузера, где вы находитесь;
4)Постоянно обновлять браузеры и плагины, особенно такие как Adobe, ибо XSS могут-быть и в браузерах...;
5)Использовать двухфакторную авторизацию и подтверждение действий.