Перейти к содержанию
Авторизация  
Pro

Swd 3.1 Beta

Рекомендуемые сообщения

b05f139f0acb.png

Здравствуйте, меня зовут Евгений!

Я предлагаю Вам абсолютно новый подход к вопросу о защите сайта.

Это SWD - Safety Web DDoS, звучит как название ботнета, но отнюдь наоборот, это средство для защиты от DOS-атак или же POST флуда.

Вкратце. Система имеет 7 модулей защиты:

 

 

REQUEST - Самый первый и оперативный модуль, проверяет объем и частоту POST запросов, потому что если послать серверу большой POST запрос то он не так уж оперативно его обработает, а если их тысяча. Данный модуль сразу на нет сводит такую возможность.

 

COOKIES - Автоматически или Вручную, и так и так, но по мне так лучше когда выводится сообщение содержания "Не бот ли ты?" Это не просто сообщение с кнопкой, это проверка на куки-воспринимаемость, большинство ботнетов предлагаемых в рунете не имеет возможности принимать кукисы, от того и данный модуль.

 

AOS (AntiOverloadSystem) - Это не просто модуль, это постоянный контроль за пользователем и количеством загружаемых страниц на сайте в заданный промежуток времени, защита от банального HTTP флуда, который так солит слабеньким серверам.

 

SESSION - По аналогии с cookies, но полностью в автоматическом режиме, проверка на возможность присвоения сессий, клиенту.

 

SYSTEM - Проще некуда. Windows, Mac, Linux - наши друзья, Unix и прочие - боты.

 

BROWSER - По названию я думаю итак понятно, опять же большинство ботнетов или же флудеров не имеют такого свойства как название браузера и следовательно они никак не определяются, тогда в бан.

 

PROTOCOL - Последнее, но не менее важное, проверка на прокси. Да может это и лишнее, но бывают же флудеры использующие прокси, это как раз специально для них.

 

 

Почему я предлагаю это бесплатно?

Сложно сказать, я занимался серверами La2 более пяти лет и очень устал от всего этого, сейчас хочется перейти в чуть другую сферу и помогать Вам, друзья.

Если у кого-то есть какие-либо пожелания или предложения, с удовольствием выслушаю.

Akumu привет ;)

 

P.S: Файл в прикреплении.

P.P.S: Если будет пользоваться успехом, допилю конфиг в визуальную админку и добавлю еще пару плюшек.

swd.zip

Изменено пользователем Pro
  • Upvote 5

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

распиши ниже что к чему да как )

 

p.s. Надеюся ты не в бот нет набираеш )

Что именно расписать?) Мне кажется информация в шапке исчерпывающая, а процесс установки (ну как процесс, два шага и все) описан в текстовом файлике в архиве ;)

Ну а впрочем отвечу на все интересующие вопросы.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

вечером попрошу протестить ваш скрипт с помощью бот нета ) узнаем на сколько он живучий )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

3 строки нужно писать во всех tpl файлах, или хватит написать в индекс?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не в tpl а в самый первый index.php который загружает все tpl, по идее он располагается в корневой директории

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не в tpl а в самый первый index.php который загружает все tpl, по идее он располагается в корневой директории

Ясно, спасибо. Добавь в первый пост :) Изменено пользователем unsual

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На сайте проекта [http://safety-web.ru/]новая версия.

Немного оформил, по просьбам, сообщение подтверждающее человечность.

Если что его менять можно самому в form.html

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

кто тестил нет не каких заподлянок ?

Если бы бы были "заподлянки", зачем мне палить все свои данные?))

 

Попрошу пожалуйста отписывать о тестах, может что-то не учел и т.п, хотелось бы критики =)

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все закинул как написано в инструкции (разу говорю хостинг туфта, падает от нонтр+ф5), попробовал опять зажать контр+ф5, сайт выдал 502 :(

Изменено пользователем mineral
  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Все закинул как написано в инструкции (разу говорю хостинг туфта, падает от нонтр+ф5), попробовал опять зажать контр+ф5, сайт выдал 502 :(

Настройте конфигурацию AOS более жестко.

 

 

$ddos['aos_time'] = "5";

$ddos['aos_lim'] = "4";

 

Например так ;)

 

Отпишите, помогло ли это такому печальному хостингу =(

Изменено пользователем Pro

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Даже локалка упала (Vertrigo) :)

Один вопросик:

 

 

<?php

session_start( );

error_reporting( 0);

define( "STRESSWEB", TRUE );

define( "ROOT_DIR", dirname( __FILE__ ) );

define( "INC_DIR", ROOT_DIR."/inc" );

define( "MOD", "index" );

 

session_start();

define('DDOS','SafetyWeb');

include "ddos/swd.php";

 

require_once( INC_DIR."/cache.php" );

require_once( INC_DIR."/data/config.php" );

require_once( INC_DIR."/data/config_db.php" );

require_once( INC_DIR."/cfg.default.php" );

require_once( INC_DIR."/lang/".$l2cfg['lang'].".php" );

require_once( INC_DIR."/classes/class.mysql.php" );

require_once( INC_DIR."/classes/class.template.php" );

include( './anti_ddos.php' );

$host=getenv("HTTP_HOST");

$tpl = new template_parse_class( );

$tpl->dir = ROOT_DIR.( "/skin/".$l2cfg['template'] );

$http_home_url = explode( "index.php", strtolower( $_SERVER['PHP_SELF'] ) );

$http_home_url = reset( $http_home_url );

define( "TPL_DIR", $http_home_url.( "skin/".$l2cfg['template'] ) );

require_once( INC_DIR."/classes/class.la2.php" );

require_once( INC_DIR."/classes/class.functions.php" );

require_once( INC_DIR."/classes/class.user.php" );

user::offline( );

$debug = $l2cfg['mysql']['debug'];

require_once( INC_DIR."/l2init.php" );

 

$user = new user( );

$user->auth( );

$_TIME = time( ) + $l2cfg['timezone'] * 60;

require_once( INC_DIR."/module.php" );

include_once( INC_DIR."/module/login.php" );

include_once( INC_DIR."/module/server.php" );

include_once( INC_DIR."/module/info.php" );

include_once( INC_DIR."/module/poll.php" );

include_once( INC_DIR."/module/forum.php" );

$tpl->GetTemplate( "index.tpl" );

$tpl->SetVar( "{TITLE}", $l2cfg['title'] );

$tpl->SetVar( "{THEME}", TPL_DIR );

$tpl->SetVar( "{LOGIN}", $tpl->result['login'] );

$tpl->SetVar( "{SERVER}", $tpl->result['server'] );

$tpl->SetVar( "{FORUM_LINKS}", $tpl->result['forum'] );

$tpl->SetVar( "{INFO}", $user->errorMsg( ) );

$tpl->SetVar( "{CONTENT}", $tpl->result['content'] );

$tpl->SetVar( "{POLL}", $tpl->result['poll'] );

$tpl->SetVar( "{COPYRIGHT}", $tpl->result['copy'] );

$tpl->parse( "index" );

echo $tpl->result['index'];

$tpl->clear_global( );

$db->Close( );

foreach ( $ldb as $ldb_close )

{

$ldb_close->Close( );

}

foreach ( $gdb as $gdb_close )

{

$gdb_close->Close( );

}

?>

 

 

или так

 

 

<?

session_start();

define('DDOS','SafetyWeb');

include "ddos/swd.php";

?>

<?php

session_start( );

error_reporting( 0);

define( "STRESSWEB", TRUE );

define( "ROOT_DIR", dirname( __FILE__ ) );

define( "INC_DIR", ROOT_DIR."/inc" );

define( "MOD", "index" );

 

require_once( INC_DIR."/cache.php" );

require_once( INC_DIR."/data/config.php" );

require_once( INC_DIR."/data/config_db.php" );

require_once( INC_DIR."/cfg.default.php" );

require_once( INC_DIR."/lang/".$l2cfg['lang'].".php" );

require_once( INC_DIR."/classes/class.mysql.php" );

require_once( INC_DIR."/classes/class.template.php" );

include( './anti_ddos.php' );

$host=getenv("HTTP_HOST");

$tpl = new template_parse_class( );

$tpl->dir = ROOT_DIR.( "/skin/".$l2cfg['template'] );

$http_home_url = explode( "index.php", strtolower( $_SERVER['PHP_SELF'] ) );

$http_home_url = reset( $http_home_url );

define( "TPL_DIR", $http_home_url.( "skin/".$l2cfg['template'] ) );

require_once( INC_DIR."/classes/class.la2.php" );

require_once( INC_DIR."/classes/class.functions.php" );

require_once( INC_DIR."/classes/class.user.php" );

user::offline( );

$debug = $l2cfg['mysql']['debug'];

require_once( INC_DIR."/l2init.php" );

 

$user = new user( );

$user->auth( );

$_TIME = time( ) + $l2cfg['timezone'] * 60;

require_once( INC_DIR."/module.php" );

include_once( INC_DIR."/module/login.php" );

include_once( INC_DIR."/module/server.php" );

include_once( INC_DIR."/module/info.php" );

include_once( INC_DIR."/module/poll.php" );

include_once( INC_DIR."/module/forum.php" );

$tpl->GetTemplate( "index.tpl" );

$tpl->SetVar( "{TITLE}", $l2cfg['title'] );

$tpl->SetVar( "{THEME}", TPL_DIR );

$tpl->SetVar( "{LOGIN}", $tpl->result['login'] );

$tpl->SetVar( "{SERVER}", $tpl->result['server'] );

$tpl->SetVar( "{FORUM_LINKS}", $tpl->result['forum'] );

$tpl->SetVar( "{INFO}", $user->errorMsg( ) );

$tpl->SetVar( "{CONTENT}", $tpl->result['content'] );

$tpl->SetVar( "{POLL}", $tpl->result['poll'] );

$tpl->SetVar( "{COPYRIGHT}", $tpl->result['copy'] );

$tpl->parse( "index" );

echo $tpl->result['index'];

$tpl->clear_global( );

$db->Close( );

foreach ( $ldb as $ldb_close )

{

$ldb_close->Close( );

}

foreach ( $gdb as $gdb_close )

{

$gdb_close->Close( );

}

?>

 

 

 

Как правильно :) ?

З.ы. Мож я краб, то не обижайтесь :)

А и да, может проблема в самом движке сайта ? У меня StressWeb 11.

Изменено пользователем mineral

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

session_start();

можно не дублировать

 

<?php

session_start( );

error_reporting( 0);

define( "STRESSWEB", TRUE );

define( "ROOT_DIR", dirname( __FILE__ ) );

define( "INC_DIR", ROOT_DIR."/inc" );

define( "MOD", "index" );

define('DDOS','SafetyWeb');

include "ddos/swd.php";

...

....

Вот так правильно, хотя оба варианта тоже должны работать.

У вас локалка падает, если сайт загружает 1 текстовую строку несколько раз?

Или она падает еще до того как вы загрузили сайт 4 раза?

 

Потому что то что я вам посоветовал, банит пользователя, если тот загрузит сайт 4 раза в течении 5ти секунд. Далее он будет выводить сообщение о блокировке, что несет в себе максимум 2Кб информации =)

Изменено пользователем Pro

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Зажимаю клавиши на 6 сек, и локалка пишет мне "давай досвидание" :)

Поставил

$ddos['aos_time'] = "3";

$ddos['aos_lim'] = "2";

тоже :( Чет непойму....

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Меня моя ,переделанная терлионы устраивает) Завтра вашу затестю.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ладно, будем ждать еще отзывов :) Мож я чет не то делаю :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Зажимаю клавиши на 6 сек, и локалка пишет мне "давай досвидание" :)

Поставил

$ddos['aos_time'] = "3";

$ddos['aos_lim'] = "2";

тоже :( Чет непойму....

Мне кажется проблема не в HTTP флуде, а в том что сайт даже не доходит до загрузки сайта и падает лишь от запроса...

Это самый мало вероятный сценарий развития событий. Покопайтесь в настройках веб сервера, такого не должно быть ;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Меня моя ,переделанная терлионы устраивает) Завтра вашу затестю.

Извините меня, но терлиона это ужасная попытка воплотить что-то в жизнь...

Я не против нее, но скажу две вещи

1) Создавать файл под каждого зашедшего это ужасно, и тем более постоянно обновлять эти файлы, а если посещаемость хорошая, особенно при открытии, да этот скрипт сам положит сервер при создании тысячей файлов.

2) Пишу я это не просто так, а посмотрел их код. Соединение они блокируют с помощью:

header("HTTP/1.0 503 Service Temporarily Unavailable");
header("Connection: close");
header("Content-Type: text/html");

Что по сути идея бредовая. Если не верите, попробуйте скопировать к себе в начало страницы и увидите что ничего не произойдет.

Вот такое мое мнение о терлионе.

Изменено пользователем Pro

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На правах апа, прошу вашего мнения)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Побегал быстро глазами по php коду...

По большому счёту защиты там от DDoS атаки не нашел.

А скорее на оборот, нагрузка будет на сервер из-за данного кода.

Что ещё раз подтверждает что от ddos атаки никакой PHP скрипт не спасает. Он не для этого был создан.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы хоть base64 енкодили или по крипт файлу побегали глазками?))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...