- 1
- 2
- 3
- 4
- 5
- 6
- 7
<?php
session_start();
// супер-мега защита от ддоса
$_SESSION['antiddos']==time() ? exit() : $_SESSION['antiddos']=time();
//конец супер мега защиты
....
?>
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+166
<?php
session_start();
// супер-мега защита от ддоса
$_SESSION['antiddos']==time() ? exit() : $_SESSION['antiddos']=time();
//конец супер мега защиты
....
?>
Найдено в старом проекте, код не мой.
Но вы знаете, от толпы школьников с кнопками F5 это реально помогает!
Во-первых, он защищает только от более одного количества обращений к серверу в секунду.
Во-вторых, для каждого пользователя будет свой $_SESSION['antiddos']. Т.е. от толпы уж точно не поможет.
Если что я знаю про пеханизм back-cookie и защищенные сервера, но и это вполне так - может быть даже когда-нибудь и пригодится как идея.
PS На счет старта сессии думаю мне не нужно говорить о том что даже если куки у человека выключена то сессионая кука все равно ставится, но даже если бот грамотный и отвергает и их то это возможно это нормально обойти при помощи нехитрого механизма индентификации по нескольким параметрам.
Это щито? Последняя разработка Моссада?
>может быть даже когда-нибудь и пригодится как идея
Таки прозреваю тысячи говнокодеров, копипастящих это...
"У миня не работаеть, выскакивает ощибка!!!!", anyone?
to Amok: Спору нет, но я и не говорил что метод красив, просто человек который это написал вполне в своем уме, и говном я бы это называть не стал :-)
to bugmenot: Я даже не понял смысл вашей фразы чесно говоря, видать ваши мысле шли вперед печатающих пальцев ) но вроде этот код вполне рабочий, хотя от реального доса конешно не защитит нужно как минимум другой метод индентификации сделать :-)
2-3 сильно протвиканных инсталляции firesux так делают и больше никто
>вроде этот код вполне рабочий
"я печатаю 800 слов в минуту. правда такая хуйня получается" старый анекдот отражает суть этой защиты
1. При загрузке в какой-то момент идет ajax-запрос, а так как инет, если быстрый, он проигнорируется.
2. Я люблю открывать несколько страниц (новости, напримр) в новых вкладках. Поэтому часть из них откроется, а часть нет.
If(!isset($_SESSION['antiddos']))
{
зашел без куков
}
туплю
что-то вроде
If(!isset($_COOKIE['PHPSESSID']))
{
зашел без куков
}