Как правильно ддосить wordpress - Форум успешных вебмастеров - GoFuckBiz.com - Страница 2
 
 
Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB89.7026
BTC/USD68455.4116
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 08.03.2015, 00:22
Start Post: Как правильно ддосить wordpress 
  #11
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
По умолчанию

Сразу оговорюсь, текст ниже не нарушает правил форума и подобная формулировка названия топика создана лишь для привлечения внимания сообщества, которое до сих пор почему-то продолжает использовать Wordpress без соответствующих защит, несмотря на мои многократные предупреждения за последние 3-4 года

Ниже описана опасность эксплуатации WP, которой подвержены 99,99% сайтов. Причем, ей может воспользоваться любой новичок. Что самое интересное, это не дыра, не баг, не какая-то доп.настройка или плагин....это документированная фича ядра вордпресса!

Я с ней работал несколько лет...имею ввиду, дорабатывал вордпрессы так, чтобы эта фича перестала быть настолько уязвимой, какой она является в дистрибутиве по умолчанию. Сейчас решил поделиться опытом с публикой, а она поможет "распространить" эту информацию до владельцев сайтов

DoS (Denial Of Service) = "отказ в обслуживании", т.е. это ряд мероприятий над сервером или сайтом, а в нашем случае - над вордпрессом, целью которых являются доставление проблемы с работоспособностью веб-ресурса.

DDoS - тоже самое, только действия направлены не из одного источника, а из множества. Именно DDoS отдельно рассматривать не будем, т.к. для защит от распределенных атак нужно:
1) понять алгоритм или характер DoS-а
2) отфильтровать плохие источники запросов. Если ддос не такой сильный, то,возможно, поможет этот топик.

Кстати говоря, понятия нагрузочное тестирование и стресс-тестирование имеют общее с DoS, а именно: их цель - протестировать систему (в том числе) на противостояние DoS- и DDos-атакам. Поэтому, можно сказать, ниже описан способ стресс-тестирования вашего сайта на Wordpress

Описание метода. Теория.

More

Практическая часть.

More

Первоисточником этой команды пусть будет этот адрес: http://wiki.chesser.ru/CMS_Wordpress , постараюсь обновлять там информацию, если придумаю чего-нибудь еще интересное.

Способы решения проблемы:

More

__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser

Последний раз редактировалось chesser; 08.03.2015 в 00:35.
chesser вне форума  
Старый 08.03.2015, 01:33   #12
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от Hector
chesser, подожди, nginx же показывает что метод post.
да, что метод POST в дефолтном формате логов он показывает
но этого ты там не увидишь: s=.&orderby=rand

Цитата:
Сообщение от Hector
Если же таких запросов много то копаем дальше.
- ну это понятно, включаем логирование POST-данных..а ты представляешь, что это такое? )
- а вдруг это гугл так форму поиска сабмитит, мало ли? а ты вырубишь его
- если все-таки отрубил такие посты, то врубаем тоже самое, только GET-ы
- вместо точки можно искать несколько разных кейвордов одновременно, менять юзерагенты, ip и тд

от всего можно искать и найти защиту, вопрос ведь в потерянном времени/трафе
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 08.03.2015, 01:36   #13
Hector
hustle
 
Аватар для Hector
 
Регистрация: 02.05.2008
Адрес: 3d world
Сообщений: 12,890
Бабло: $1717315
Отправить сообщение для Hector с помощью Jabber
По умолчанию

Зачем гугл будет сабмитить форму? Даже если так то сделать ему редирект на главную или запретить rand. Get тоже запрещаем для данного юзерагента и урла или отрезаем rand В самом худшем случае запретим вообще rand для всех

Короче такой дос за 5 минут отбивается.

Последний раз редактировалось Hector; 08.03.2015 в 01:50.
Hector вне форума  
Старый 08.03.2015, 01:50   #14
chesser
автоматизирую интернеты
 
Аватар для chesser
 
Регистрация: 05.07.2009
Адрес: chesser.ru
Сообщений: 3,362
Бабло: $470735
ТС -->
автор темы ТС По умолчанию

Цитата:
Сообщение от Hector
Зачем гугл будет сабмитить форму? Даже если так то сделать ему редирект на главную или запретить rand. Get тоже запрещаем для данного юзерагента и урла или отрезаем rand
ну мало ли зачем так можно подумать про гугл, сеошники чего только не выдумывают про него.

Цитата:
или запретить rand
да, я про это писал - отключить эту "фичу"

Цитата:
и урла
урл может быть любой

а если отключишь только orderby=rand, то, наверняка, останутся "related posts"-like плагины, которые выводят, например, рандомные тайтлы где-нибудь на странице. В общем, любой рандом доставит хлопот )
__________________
USA и NL серверы и VPS | wiki | блог | Drupal | NginxТДС
Ave, Google, morituri te salutant! © chesser
chesser вне форума  
Старый 08.03.2015, 03:16   #15
Wonder
интересующийся
 
Аватар для Wonder
 
Регистрация: 16.06.2009
Сообщений: 785
Бабло: $153376
По умолчанию

chesser, молодец, хорошо расписал, спасибо за статью
Wonder на форуме  
Старый 08.03.2015, 11:40   #16
xanxy
Senior Member
 
Регистрация: 18.08.2010
Сообщений: 360
Бабло: $66120
По умолчанию

Проблемы с oreder by rand() начинаются только при более менее вминяемом кол-ве записей.
Мне кажется что разрабы вп изначально для себя ставили задачу разработать CMS для "домохозяек". Соответственно и отношение к данной проблеме у них похуестичное.
xanxy вне форума  
Старый 08.03.2015, 12:31   #18
Sultan
Шучу на половину
 
Аватар для Sultan
 
Регистрация: 23.01.2011
Сообщений: 5,840
Бабло: $1168470
По умолчанию

вот норм плагин - w3 total cache
под cdn ставится и настраивается просто из того что пробовал cloudfront и maxcdn

тут производительность и рекомендации
http://developers.google.com/speed/pagespeed/insights/

Последний раз редактировалось Sultan; 08.03.2015 в 12:37.
Sultan вне форума  
Старый 08.03.2015, 12:44   #19
mr.Charlie
je suis Charlie
 
Аватар для mr.Charlie
 
Регистрация: 19.08.2009
Сообщений: 1,643
Бабло: $255632
По умолчанию

Цитата:
Сообщение от chesser
2) Если от вордпресса избавиться нельзя, то проблему нужно решать либо полным удалением возможностей использования, либо модификацией функции сортировки, смысл которой заключается в том, чтобы а) уйти от стандартного качественного рандома к какому-то сильно упрощенному псевдо-рандому, б) либо кешированием результатов сортировки (рандом выборка всегда будет состоять из одного и того же набора данных) в) либо сокращением размеров выборок.
Тоже столкнулся с блядским order by rand(), когда писал пирожковый линк-менеджер. На ляме линков order by rand() начинал уже конкретно тупить. Некачественный или псевдо рандом для моей задачи не подходили, поэтому решил проблему так:
запрос
Код:
SELECT * FROM `links` WHERE `active`='1' ORDER BY RAND()
превращаем в
Код:
SELECT `links`.* FROM (SELECT id FROM `links` WHERE `active`='1' ORDER BY RAND() ) as ids JOIN `links` ON `links`.id = ids.id
то есть урезаем рандомную выборку до одного поля (id), суем это во временную таблицу, а потом уже дергаем все по этим айди, но уже без рандома.
__________________
Ферма
mr.Charlie вне форума  
Старый 08.03.2015, 12:53   #20
xanxy
Senior Member
 
Регистрация: 18.08.2010
Сообщений: 360
Бабло: $66120
По умолчанию

mr.Charlie, если ты выбираешь все записи, без лимита, то почему бы не перемешать их уже средствами php и прочего. Там на много быстрее
xanxy вне форума  
Старый 08.03.2015, 13:08   #21
Matt Cutts
Senior Member
 
Регистрация: 24.09.2009
Сообщений: 821
Бабло: $106455
По умолчанию

Для тех, кому не хочется читать много букв, решение для nginx бесплатно-без смс:

PHP код:
    if ($args orderby=rand) {
       return 
403;
    } 



ps Да, и то, что Drupal заруливает Wordpress - очень толсто.

Лень писать простыню, где wp проводит шершавым по губам друпалу, уже исписано тысячи раз.
Matt Cutts вне форума