Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#1 2010-06-29 17:40:59

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Детектор XSS атак

FAQ: Как сделать Детектор XSS атак используя библиотеку PHPIDS

Данная библиотека позволяет создать дополнительный слой безопасности, который работает исключительно на обнаружение попыток провести XSS атаки, mySql-инъекции, DoS () и тд. Подробнее есть на сайте библиотеки или можно поискать информацию в нете.

Порядок интеграции данной библиотеки в ядро NGCMS следующий:
1. Скачиваем библиотеку с сайта сайта

14f8cd45a237a84ea297c161dfde9181_pv.png

2. В папку \engine\includes\classes\ копируем папку IDS из архива (\phpids-0.6.4\lib\) со всем ее содержимым

5195a97bc3c5b1aa552b5acfbfa299af_pv.png

3. У файла \engine\includes\classes\IDS\Config\Config.ini.php убрать расширение, чтобы осталось только Config.ini

ca493252190fa4c5e96754b43c291e53_pv.png

4. Отредактировать файл \engine\includes\classes\IDS\Config\Config.ini как показано на картинке

ccf98104e56ef4ff142f61fb9fdea9da_pv.png

5. В файл \engine\core.php, после выражения @session_start(); добавить следующий хак

//////////////////////////////////////////////////////
//////////////////////////////////////////////////////
set_include_path(get_include_path().PATH_SEPARATOR.root.'includes/classes/');
include_once 'IDS/Init.php';
$IDS_request = array(
    'REQUEST' => $_REQUEST,
    'GET' => $_GET,
    'POST' => $_POST,
    'COOKIE' => $_COOKIE
);
$IDS_init = IDS_Init::init(root.'includes/classes/IDS/Config/Config.ini');
$IDS_ids = new IDS_Monitor($IDS_request, $IDS_init);
$IDS_result = $IDS_ids->run();

if (!$IDS_result->isEmpty()) {
	require_once 'IDS/Log/File.php';
	require_once 'IDS/Log/Composite.php';

	$IDS_compositeLog = new IDS_Log_Composite();
	$IDS_compositeLog->addLogger(IDS_Log_File::getInstance($IDS_init));
	$IDS_compositeLog->execute($IDS_result);	
	die ('hack detected');
}
//////////////////////////////////////////////////////
//////////////////////////////////////////////////////

1d27b512b6affe1eb18182344636b92a_pv.png

Если вы сделали все правильно, то сайт продолжит работать в штатном режиме, но как только кто нибудь попробует провести атаку, ему будет выведено сообщение hack detected, а вы, просмотрев файл \engine\includes\classes\IDS\tmp\phpids_log.txt узнаете об этом.

Работает приблизительно так

Попытка провести XSS

77fba05e5ad99e98d7b85b2309733c6e_pv.png

Результат

c34ffdcd5f38394c8303b3062e318f75_pv.png


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#2 2010-06-29 17:53:50

Trashcka
Участник
Откуда КиевГрад
Зарегистрирован: 2008-12-04
Сообщений: 1,487
Рейтинг :   73 

Re: Детектор XSS атак

Amarelius, ооооо, как раз на днях смотрела эту библиотеку )) данке

Не в сети

#3 2010-06-29 19:14:18

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Детектор XSS атак

Там логи ведутся?

Не в сети

#4 2010-06-29 19:58:18

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Детектор XSS атак

infinity237,  \engine\includes\classes\IDS\tmp\phpids_log.txt
А еще можно логи в базу записывать или отсылать сообщения по почте


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#5 2010-06-29 20:04:55

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Детектор XSS атак

А можно не выводить сообщения, а просто писать в логи?

Не в сети

#6 2010-06-29 20:26:08

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Детектор XSS атак

infinity237, можно, можно даже при каждом срабатывании отправлять сообщение на jabber, icq, телефон, звонить в церковный колокол (нужен отдельный драйвер). Да все что угодно.

Проверка наличия проблемы происходит так:

if (!$IDS_result->isEmpty()) {
}

А внутри этого блока можешь писать все что хочешь, ты ограничен только аппаратной и программной платформой сервера на котором работает твой сайт.


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#7 2010-06-29 20:27:38

infinity237
Модератор
Откуда Russia, Moscow
Зарегистрирован: 2008-11-09
Сообщений: 2,674
Рейтинг :   176 
Сайт

Re: Детектор XSS атак

Впринцепе будет интересно для параноиков. big_smile

Не в сети

#8 2010-06-29 23:00:04

Amarelius
Модератор
Откуда Kiev
Зарегистрирован: 2008-10-24
Сообщений: 639
Рейтинг :   69 
Сайт

Re: Детектор XSS атак

Я не параноик wink , но есть желание использовать для комментариев какой нибудь WYSIWYG. сначала планировал использовать HTML Purifier для фильтрации пользовательского ввода, но принцип работы PHPIDS мне понравился больше, а время покажет ))) Сейчас на локалке отлично уживается с NicEdit.


Всегда ищу разработчиков в Киеве!
Ищешь работу программистом, пиши мне на ArnitUA@gmail.com

Не в сети

#9 2013-01-23 15:20:42

Frankie
Участник
Зарегистрирован: 2010-04-04
Сообщений: 38
Рейтинг :   
Сайт

Re: Детектор XSS атак

Господа модеры, подправьте пожалста ссылку в первом посте на https://phpids.org/downloads/

И еще видимо в новой  версии cms, в файле core.php куда-тов другое место вставлять хак нужно.

Сделал сейчас по инструкции, так сразу при заходе на сайт пишет Hack Detected

Изменено Frankie (2013-01-23 15:43:28)

Не в сети

Подвал раздела

Работает на FluxBB