SlideShare a Scribd company logo
Информационная безопасность
в аспекте веб-разработки
Комил Раджабов,
Разработчик группы CODE.TJ
ТЕРМИНОЛОГИЯ
Определение ИБ
Информационная безопасность – это практическая защита информации от
несанкционированного доступа, использования, разглашения, нарушения
целостности, модификации, чтения, инспектирования, записи или уничтожения.
Информационная безопасность — состояние сохранности информационных
ресурсов и защищенности законных прав личности и общества в
информационной сфере.
Информационная безопасность – это процесс обеспечения конфиденциальности,
целостности и доступности информации.
Конфиденциальность: Обеспечение доступа к информации только
авторизованным пользователям.
Целостность: Обеспечение достоверности и полноты информации и методов ее
обработки.
Доступность: Обеспечение доступа к информации и связанным с ней активам
авторизованных пользователей по мере необходимости.
Конфиденциальность, Целостность, Доступность
Еще немного терминологии
Угроза - это потенциально возможное событие,
которое посредством воздействия на компоненты
информационной системы (ИС) может привести к
нанесению ущерба.
Уязвимость - это свойство ИС, использование
которого нарушителем может привести к реализации
угрозы.
Атака - это любое действие нарушителя, которое
приводит к реализации угрозы путем использования
уязвимостей информационной системы.
Модель глубины защиты
ВЕБ-ПРИЛОЖЕНИЯ
Веб-приложение
Веб-приложение — клиент-серверное приложение, в котором
клиентом выступает браузер, а сервером — веб-сервер. Логика
веб-приложения распределена между сервером и клиентом,
хранение данных осуществляется, преимущественно, на сервере,
обмен информацией происходит по сети. Одним из преимуществ
такого подхода является тот факт, что клиенты не зависят от
конкретной операционной системы пользователя, поэтому веб-
приложения являются межплатформенными сервисами.
Клиент-серверная архитектура
О технологиях веб-разработки
Языки веб-программирования (сервер):
ASP.NET, C/C++, Java, Perl, PHP, Python, Ruby,
Nodejs
Для реализации GUI (клиент):
HTML, XHTML, CSS (Sass, Less)
Создание интерактивного интерфейса на
стороне клиента:
ActiveX, Adobe Flash, Adobe Flex, Java, JavaScript,
Silverlight
Основные элементы
1. Браузер и компьютер пользователя
2. Канал связи для всех компонентов (SSL/TLS)
3. Firewall, IPS (Intrusion Prevention System), WAF
(виртуальный пачтинг)
4. Балансировка нагрузки (DoS)
5. Веб-сервер
6. Веб-приложение
7. Серверная часть (СУБД, XML и т.д.)
Безопасность веб-приложения
Наиболее часто используемые уязвимости:
• На стороне сервера
– SQL-injection
– Подбор паролей
– Инклуды (includes)
– Выполнение команд операционной системы
• На стороне клиента
– XSS (межсайтовое выполнение сценариев)
– CSRF (перенаправление/подделка HTTP-запросов)
Статистика распределения уязвимостей
По данным Veracode, http://veracode.com
Какие цели преследуют злоумышленники?
• Черный SEO
• Распространение спама
• Распространение вредоносного кода
• Кража и искажение данных cайта
• Удаление содержимого сайта (DoS-атаки)
• Использование сайта в качестве площадки для
проведения атак на другие ресурсы
• Just for fun (ради шутки)
Методы используемые злоумышленниками
• Подбор паролей
• Уязвимости «нулевого» дня
• Тестирование функций (Fuzzing)
• Поиск уязвимостей на основе анализа исходного
кода веб-приложения и его компонентов
• Взлом сайта путем проведения атаки на другие
сайты расположенные на общем хостинге
• Уязвимости в смежных компонентах системы
• Социальная инженерия / вредоносное ПО и т.д.
НЕКОТОРЫЕ ПРИМЕРЫ
Инклуды
Инклуды — тип уязвимостей, при котором существует возможность вывести
содержимое определенного файла на сервере или же вставить содержимое
файла с другого сервера внутрь сайта.
Локальные инклуды — инклуды, при которых имеется возможность лишь
выводить содержимое любых файлов но в пределах данного сервера. Может
использоваться для получения конфигурационных файлов и последующего
доступа к административной панели или даже базе данных.
Удаленные инклуды — уязвимости, при которых злоумышленник может
определенным запросом вывести содержимое файла со стороннего сайта внутри
данного. С помощью этого злоумышленник может вставить свой вредоносный
скрипт, например, шелл (скрипт для управления всеми файлами на сервере, как
бы ftp с веб-оболочкой) и получить доступ ко всему серверу.
...
$page=$_GET['page'];
include ($page);
...
Защита
Фильтрация и ограничение подключаемых в
приложении страниц с использованием
произвольных входных параметров, а также
необходимы соответствующие настройки
сервера для ограничения инклудов.
Внедрение SQL (Injection)
Это один из распространённых способов
взлома веб-приложений, работающих с
базами данных, основанный на внедрении в
запрос произвольного SQL-кода.
Атака типа внедрения SQL может быть
возможна из-за некорректной обработки
входных данных, используемых в SQL-
запросах.
Внедрение SQL (Injection)
Веб-приложение использует входные данные при
конструировании SQL-запросов к БД
...
$id=$_GET['id'];
$query="SELECT * FROM accounts WHERE id='".$id."';
$ret=mysql_query($query);
...
Злоумышленник подготавливает запрос
http://mysite.com/app/accountView?id=‘ or ‘1 =‘1
При этом может быть сформирован запрос который может вернуть
все записи таблицы
SELECT * FROM accounts WHERE custID=‘’ or ‘1’=‘1’
Защита
Для защиты от данного типа атак необходимо
тщательно фильтровать входные параметры,
значения которых будут использованы для
построения SQL-запроса.
CSRF (Сross Site Request Forgery)
«Межсайтовая подделка запроса» (XSRF) — вид атак на посетителей веб-сайтов,
использующий недостатки протокола HTTP. Если жертва заходит на сайт,
созданный злоумышленником, от её лица тайно отправляется запрос на другой
сервер (например, на сервер платёжной системы), осуществляющий некую
вредоносную операцию (например, перевод денег на счёт злоумышленника).
Атака осуществляется путем размещения на веб-странице ссылки или скрипта,
пытающегося получить доступ к сайту, на котором атакуемый пользователь
заведомо уже аутентифицирован.
Например, пользователь Тахмина может просматривать форум, где другой
пользователь, Зебо, разместила сообщение. Пусть Зебо создала тег <img>, в
котором в качестве источника картинки указан URL, при переходе по которому
выполняется действие на сайте банка Тахмины, например:
Если банк Тахмины хранит ее информацию об аутентификации в куки и если куки
еще не истекли, при попытке загрузить картинку браузер Тахмины отправит
запрос на перевод денег на счет Зебо и подтвердит аутентификацию при помощи
куки. Таким образом, транзакция будет успешно завершена, хотя ее
подтверждение произойдет без ведома Тахмины.
Зебо: Привет, Тахмина! Посмотри, какой милый котик:
<img src="http://example.com/do?account=Tahmina&amount=1000000&for=Zebo">
Защита
Наиболее простым для понимания способом защиты от данного
типа атак является механизм, когда веб-сайты должны требовать
подтверждения большинства действий пользователя и проверять
поле HTTP_REFERER, если оно указано в запросе. Но этот способ
может быть небезопасен, и использовать его не рекомендуется.
Другим распространённым способом защиты является механизм,
при котором с каждой сессией пользователя ассоциируется
дополнительный секретный ключ, предназначенный для
выполнения запросов. Пользователь посылает этот ключ среди
параметров каждого запроса, и перед выполнением каких-либо
действий сервер проверяет этот ключ. Преимуществом данного
механизма, по сравнению с проверкой Referer, является
гарантированная защита от атак данного типа. Недостатком же
являются: требование возможности организации
пользовательских сессий и требование динамической генерации
HTML-кода активных страниц сайта.
XSS (Сross Site Sсriрting)
«Межсайтовый скриптинг» — тип атаки на веб-системы, заключающийся
во внедрении в выдаваемую веб-системой страницу вредоносного кода
(который будет выполнен на компьютере пользователя при открытии им
этой страницы) и взаимодействии этого кода с веб-сервером
злоумышленника. Является разновидностью атаки «внедрение кода».
Классифицируются два вида XSS по вектору атаки.
Отраженные XSS:
http://example.com/search.php?q=<script>DoSomething();</script>
Устойчивые (хранимые) XSS:
Специфичны для сайтов Веб 2.0 (форумов, блогов, вики), когда на сервере
хранятся пользовательские тексты и рисунки. Скрипты вставляются в эти тексты и
рисунки.
Классика: увод сессионной куки через XSS
Защита
Экранировать нужно все пользовательские
тексты. (Например: делать htmlspecialchars()
для полей, где это необходимо, жестоко
фильтровать все html теги.)
СПАСИБО ЗА ВНИМАНИЕ!

More Related Content

PPTX
Атаки на web-приложения. Основы
PPTX
Тестирование на проникновение в сетях Microsoft
PPTX
Security testing
PPTX
Типовые проблемы безопасности банковских систем
PPTX
Тестирование на проникновение в сетях Microsoft (v.2)
PPT
Анализ защищенности Web-приложений, выявление уязвимостей в реальных условиях
PPT
Введение в тему безопасности веб-приложений
PPTX
История из жизни. Демонстрация работы реального злоумышленника на примере ата...
Атаки на web-приложения. Основы
Тестирование на проникновение в сетях Microsoft
Security testing
Типовые проблемы безопасности банковских систем
Тестирование на проникновение в сетях Microsoft (v.2)
Анализ защищенности Web-приложений, выявление уязвимостей в реальных условиях
Введение в тему безопасности веб-приложений
История из жизни. Демонстрация работы реального злоумышленника на примере ата...

What's hot (20)

PPTX
Как взламывают сети государственных учреждений
PPTX
Истории из жизни. Как взламывают сети крупных организаций.
PPTX
А не поговорить ли нам о XSS!
PDF
Максим Кочкин (Wamba)
PPTX
Application security? Firewall it!
PPTX
Тестирование уязвимостей веб приложений
PPTX
тестирование защищенности веб приложений
PPT
Мобильный офис глазами пентестера
PDF
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
PPTX
PHDays 2012: Future Now
PPT
Информационная безопасность и web-приложения
PPTX
Стажировка-2014, занятие 6. Информационная безопасность и атаки на сервер.
PPTX
Безопасность сессий в веб-приложениях
PPTX
QA Fest 2014. Катерина Овеченко. Безопасность сессий в веб-приложениях: практ...
PDF
Модель нарушителя безопасности информации
PPTX
Эволюция атак на веб приложения (Evolution of web applications attacks)
PPTX
Безопасность сессий в веб-приложениях: практическое применение
PDF
Вирусы-шифровальщики и фишинг
PPTX
Sql инъекции в тестировании
PPTX
Услуги PT для банков
Как взламывают сети государственных учреждений
Истории из жизни. Как взламывают сети крупных организаций.
А не поговорить ли нам о XSS!
Максим Кочкин (Wamba)
Application security? Firewall it!
Тестирование уязвимостей веб приложений
тестирование защищенности веб приложений
Мобильный офис глазами пентестера
Александр Сидоров "Как защитить пользователей от вирусов и фишинга"
PHDays 2012: Future Now
Информационная безопасность и web-приложения
Стажировка-2014, занятие 6. Информационная безопасность и атаки на сервер.
Безопасность сессий в веб-приложениях
QA Fest 2014. Катерина Овеченко. Безопасность сессий в веб-приложениях: практ...
Модель нарушителя безопасности информации
Эволюция атак на веб приложения (Evolution of web applications attacks)
Безопасность сессий в веб-приложениях: практическое применение
Вирусы-шифровальщики и фишинг
Sql инъекции в тестировании
Услуги PT для банков
Ad

Viewers also liked (20)

PPTX
Программное обеспечение в государственных учреждениях
ODP
Information Security
PPT
Как заработать деньги на своем сайте?
PPTX
Управление проектом и ИКТР Учебное пособие по ИКТ для Развития для Вузов
PPT
Learning management system
PPTX
Jafar urunov
PPT
информационная безопасность
PPTX
информационная безопасность 01
PPT
информационная безопасность
PPTX
Хазиев М. "Информационная безопасность: эволюция угроз и рынка решений"
PPTX
Дмитрий Истомин (УЦСБ): Информационная безопасность банка на базе решений Che...
PPT
Информационная этика и право. Информационная безопасность
PPT
информационная безопасность
PDF
Антон Карпов - Информационная безопасность — мир «белых и чёрных шляп»
PPTX
Softline: Информационная безопасность
PDF
Информационная безопасность — мир «белых и чёрных шляп»
PDF
Информационная безопасность
PPTX
урок "Информационная безопасность"
PDF
Кибербезопасность новой информационной среды (10.03.01. Информационная безопа...
PDF
Лето нашей мечты - сдать ЕГЭ, поступить на бюджет и начать карьеру с 1-го курса
Программное обеспечение в государственных учреждениях
Information Security
Как заработать деньги на своем сайте?
Управление проектом и ИКТР Учебное пособие по ИКТ для Развития для Вузов
Learning management system
Jafar urunov
информационная безопасность
информационная безопасность 01
информационная безопасность
Хазиев М. "Информационная безопасность: эволюция угроз и рынка решений"
Дмитрий Истомин (УЦСБ): Информационная безопасность банка на базе решений Che...
Информационная этика и право. Информационная безопасность
информационная безопасность
Антон Карпов - Информационная безопасность — мир «белых и чёрных шляп»
Softline: Информационная безопасность
Информационная безопасность — мир «белых и чёрных шляп»
Информационная безопасность
урок "Информационная безопасность"
Кибербезопасность новой информационной среды (10.03.01. Информационная безопа...
Лето нашей мечты - сдать ЕГЭ, поступить на бюджет и начать карьеру с 1-го курса
Ad

Similar to Информационная безопасность в аспекте веб-разработки (20)

PPT
безопасность веб проектов сергей рыжиков
PDF
Архитектура защищенного периметра
PPT
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
PDF
Web application security (RIT 2014, rus)
PDF
Safety and Security of Web-applications (Document)
PPT
Hacker Attack 2008 Netsajev Sg
PDF
Архитектура защищенного периметра
PPTX
Secure development
PDF
2013 09 21 безопасность веб-приложений
PPT
Penetration testing (AS IS)
PPTX
Cisco Social Network Security
PDF
Information Security Audit (Course)
PPT
Безопасность
PDF
Imperva, держи марку!
PPT
Емельянников_Безопасность электронного бизнеса
PDF
Где прячутся мобильные вирусы — Григорий Земсков
PDF
Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...
PDF
OWASP: безопасное программирование на PHP.
PPT
Безопасность веб-приложений сегодня
PPT
безопасность веб приложений сегодня. дмитрий евтеев. зал 4
безопасность веб проектов сергей рыжиков
Архитектура защищенного периметра
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
Web application security (RIT 2014, rus)
Safety and Security of Web-applications (Document)
Hacker Attack 2008 Netsajev Sg
Архитектура защищенного периметра
Secure development
2013 09 21 безопасность веб-приложений
Penetration testing (AS IS)
Cisco Social Network Security
Information Security Audit (Course)
Безопасность
Imperva, держи марку!
Емельянников_Безопасность электронного бизнеса
Где прячутся мобильные вирусы — Григорий Земсков
Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...
OWASP: безопасное программирование на PHP.
Безопасность веб-приложений сегодня
безопасность веб приложений сегодня. дмитрий евтеев. зал 4

More from E-Journal ICT4D (20)

PPTX
Taj keyboard presentation
PDF
Открытые данные общеобразовательных учреждений г. Душанбе
PPTX
ҷорикунии элементҳои ҳукумати электронӣ дар донишкадаи политехникӣ
PPTX
рустам назаров, уктам кимсанов
PDF
рустам назаров, уктам кимсанов
PDF
Presentation
PPT
Kanevskiy. mobile g cloud. from russia with the success
PPTX
PPTX
E gov successfactors-korea_isaac_kim_final
PPT
E governance dushanbe 2012 katrin-nymanmetkalf
PPTX
Egov afghanistan presentation omar ansari
PPT
Apcict efforts4 humancapacitydevelopment_asomtalk_tajik
PPT
Международная программа «Электронное управление в целях устойчивого развития ...
PPTX
About ICT4D Journal Tajikistan
PPTX
Open Education resource - Dilovar Munavvarov
PDF
Workshop - how to make your research open
PDF
Open access as factor to develop information culture - Asomiddin Atoev
PPT
Visualization of information - Talat Numonov
PDF
Transition to digital tv (dttv)
PPTX
Firdavs yormatov
Taj keyboard presentation
Открытые данные общеобразовательных учреждений г. Душанбе
ҷорикунии элементҳои ҳукумати электронӣ дар донишкадаи политехникӣ
рустам назаров, уктам кимсанов
рустам назаров, уктам кимсанов
Presentation
Kanevskiy. mobile g cloud. from russia with the success
E gov successfactors-korea_isaac_kim_final
E governance dushanbe 2012 katrin-nymanmetkalf
Egov afghanistan presentation omar ansari
Apcict efforts4 humancapacitydevelopment_asomtalk_tajik
Международная программа «Электронное управление в целях устойчивого развития ...
About ICT4D Journal Tajikistan
Open Education resource - Dilovar Munavvarov
Workshop - how to make your research open
Open access as factor to develop information culture - Asomiddin Atoev
Visualization of information - Talat Numonov
Transition to digital tv (dttv)
Firdavs yormatov

Информационная безопасность в аспекте веб-разработки

  • 1. Информационная безопасность в аспекте веб-разработки Комил Раджабов, Разработчик группы CODE.TJ
  • 3. Определение ИБ Информационная безопасность – это практическая защита информации от несанкционированного доступа, использования, разглашения, нарушения целостности, модификации, чтения, инспектирования, записи или уничтожения. Информационная безопасность — состояние сохранности информационных ресурсов и защищенности законных прав личности и общества в информационной сфере. Информационная безопасность – это процесс обеспечения конфиденциальности, целостности и доступности информации. Конфиденциальность: Обеспечение доступа к информации только авторизованным пользователям. Целостность: Обеспечение достоверности и полноты информации и методов ее обработки. Доступность: Обеспечение доступа к информации и связанным с ней активам авторизованных пользователей по мере необходимости.
  • 5. Еще немного терминологии Угроза - это потенциально возможное событие, которое посредством воздействия на компоненты информационной системы (ИС) может привести к нанесению ущерба. Уязвимость - это свойство ИС, использование которого нарушителем может привести к реализации угрозы. Атака - это любое действие нарушителя, которое приводит к реализации угрозы путем использования уязвимостей информационной системы.
  • 8. Веб-приложение Веб-приложение — клиент-серверное приложение, в котором клиентом выступает браузер, а сервером — веб-сервер. Логика веб-приложения распределена между сервером и клиентом, хранение данных осуществляется, преимущественно, на сервере, обмен информацией происходит по сети. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы пользователя, поэтому веб- приложения являются межплатформенными сервисами. Клиент-серверная архитектура
  • 9. О технологиях веб-разработки Языки веб-программирования (сервер): ASP.NET, C/C++, Java, Perl, PHP, Python, Ruby, Nodejs Для реализации GUI (клиент): HTML, XHTML, CSS (Sass, Less) Создание интерактивного интерфейса на стороне клиента: ActiveX, Adobe Flash, Adobe Flex, Java, JavaScript, Silverlight
  • 10. Основные элементы 1. Браузер и компьютер пользователя 2. Канал связи для всех компонентов (SSL/TLS) 3. Firewall, IPS (Intrusion Prevention System), WAF (виртуальный пачтинг) 4. Балансировка нагрузки (DoS) 5. Веб-сервер 6. Веб-приложение 7. Серверная часть (СУБД, XML и т.д.)
  • 11. Безопасность веб-приложения Наиболее часто используемые уязвимости: • На стороне сервера – SQL-injection – Подбор паролей – Инклуды (includes) – Выполнение команд операционной системы • На стороне клиента – XSS (межсайтовое выполнение сценариев) – CSRF (перенаправление/подделка HTTP-запросов)
  • 12. Статистика распределения уязвимостей По данным Veracode, http://veracode.com
  • 13. Какие цели преследуют злоумышленники? • Черный SEO • Распространение спама • Распространение вредоносного кода • Кража и искажение данных cайта • Удаление содержимого сайта (DoS-атаки) • Использование сайта в качестве площадки для проведения атак на другие ресурсы • Just for fun (ради шутки)
  • 14. Методы используемые злоумышленниками • Подбор паролей • Уязвимости «нулевого» дня • Тестирование функций (Fuzzing) • Поиск уязвимостей на основе анализа исходного кода веб-приложения и его компонентов • Взлом сайта путем проведения атаки на другие сайты расположенные на общем хостинге • Уязвимости в смежных компонентах системы • Социальная инженерия / вредоносное ПО и т.д.
  • 16. Инклуды Инклуды — тип уязвимостей, при котором существует возможность вывести содержимое определенного файла на сервере или же вставить содержимое файла с другого сервера внутрь сайта. Локальные инклуды — инклуды, при которых имеется возможность лишь выводить содержимое любых файлов но в пределах данного сервера. Может использоваться для получения конфигурационных файлов и последующего доступа к административной панели или даже базе данных. Удаленные инклуды — уязвимости, при которых злоумышленник может определенным запросом вывести содержимое файла со стороннего сайта внутри данного. С помощью этого злоумышленник может вставить свой вредоносный скрипт, например, шелл (скрипт для управления всеми файлами на сервере, как бы ftp с веб-оболочкой) и получить доступ ко всему серверу. ... $page=$_GET['page']; include ($page); ...
  • 17. Защита Фильтрация и ограничение подключаемых в приложении страниц с использованием произвольных входных параметров, а также необходимы соответствующие настройки сервера для ограничения инклудов.
  • 18. Внедрение SQL (Injection) Это один из распространённых способов взлома веб-приложений, работающих с базами данных, основанный на внедрении в запрос произвольного SQL-кода. Атака типа внедрения SQL может быть возможна из-за некорректной обработки входных данных, используемых в SQL- запросах.
  • 19. Внедрение SQL (Injection) Веб-приложение использует входные данные при конструировании SQL-запросов к БД ... $id=$_GET['id']; $query="SELECT * FROM accounts WHERE id='".$id."'; $ret=mysql_query($query); ... Злоумышленник подготавливает запрос http://mysite.com/app/accountView?id=‘ or ‘1 =‘1 При этом может быть сформирован запрос который может вернуть все записи таблицы SELECT * FROM accounts WHERE custID=‘’ or ‘1’=‘1’
  • 20. Защита Для защиты от данного типа атак необходимо тщательно фильтровать входные параметры, значения которых будут использованы для построения SQL-запроса.
  • 21. CSRF (Сross Site Request Forgery) «Межсайтовая подделка запроса» (XSRF) — вид атак на посетителей веб-сайтов, использующий недостатки протокола HTTP. Если жертва заходит на сайт, созданный злоумышленником, от её лица тайно отправляется запрос на другой сервер (например, на сервер платёжной системы), осуществляющий некую вредоносную операцию (например, перевод денег на счёт злоумышленника). Атака осуществляется путем размещения на веб-странице ссылки или скрипта, пытающегося получить доступ к сайту, на котором атакуемый пользователь заведомо уже аутентифицирован. Например, пользователь Тахмина может просматривать форум, где другой пользователь, Зебо, разместила сообщение. Пусть Зебо создала тег <img>, в котором в качестве источника картинки указан URL, при переходе по которому выполняется действие на сайте банка Тахмины, например: Если банк Тахмины хранит ее информацию об аутентификации в куки и если куки еще не истекли, при попытке загрузить картинку браузер Тахмины отправит запрос на перевод денег на счет Зебо и подтвердит аутентификацию при помощи куки. Таким образом, транзакция будет успешно завершена, хотя ее подтверждение произойдет без ведома Тахмины. Зебо: Привет, Тахмина! Посмотри, какой милый котик: <img src="http://example.com/do?account=Tahmina&amount=1000000&for=Zebo">
  • 22. Защита Наиболее простым для понимания способом защиты от данного типа атак является механизм, когда веб-сайты должны требовать подтверждения большинства действий пользователя и проверять поле HTTP_REFERER, если оно указано в запросе. Но этот способ может быть небезопасен, и использовать его не рекомендуется. Другим распространённым способом защиты является механизм, при котором с каждой сессией пользователя ассоциируется дополнительный секретный ключ, предназначенный для выполнения запросов. Пользователь посылает этот ключ среди параметров каждого запроса, и перед выполнением каких-либо действий сервер проверяет этот ключ. Преимуществом данного механизма, по сравнению с проверкой Referer, является гарантированная защита от атак данного типа. Недостатком же являются: требование возможности организации пользовательских сессий и требование динамической генерации HTML-кода активных страниц сайта.
  • 23. XSS (Сross Site Sсriрting) «Межсайтовый скриптинг» — тип атаки на веб-системы, заключающийся во внедрении в выдаваемую веб-системой страницу вредоносного кода (который будет выполнен на компьютере пользователя при открытии им этой страницы) и взаимодействии этого кода с веб-сервером злоумышленника. Является разновидностью атаки «внедрение кода». Классифицируются два вида XSS по вектору атаки. Отраженные XSS: http://example.com/search.php?q=<script>DoSomething();</script> Устойчивые (хранимые) XSS: Специфичны для сайтов Веб 2.0 (форумов, блогов, вики), когда на сервере хранятся пользовательские тексты и рисунки. Скрипты вставляются в эти тексты и рисунки. Классика: увод сессионной куки через XSS
  • 24. Защита Экранировать нужно все пользовательские тексты. (Например: делать htmlspecialchars() для полей, где это необходимо, жестоко фильтровать все html теги.)