×
Ruby on Rails: постинг твитов через Twitter API (04 нояб 2017)

Практикуемся в Ruby on Rails.

Вопрос Массовый взлом Joomla и WP

Больше
4 года 3 мес. назад #1 от Arhitektorius
Arhitektorius создал эту тему: Массовый взлом Joomla и WP
Вчера не смог зайти в админку большинства своих сайтов!
На хостинге ответили

В связи с массовыми атаками на сайты, работающие на основе CMS Joomla и Wordpress, с целью предотвращения несанкционированного доступа были введены ограничения для входа в административные панели сайтов.

Посмотрел логи - действительно админки атаковали и очень долго... Каждый новый запрос с нового айпишника... Пытались подобрать логин/пароль
Хостер взял и просто добавил в каждую папку administrator/ файл .htaccess c таким содержимым
<Files index.php>
    order deny,allow
    deny from all
    #allow from ххх.хххх.ххх.ххх
</files>
Соответственно, всем доступ к файлам пхп запрещен (а в следствии и к админке), если нужен доступ, то соответственно убираем коммент и прописываем свой айпи
allow from ххх.хххх.ххх.ххх
Мне кажется действенная штука по защите - сам такое давно хотел сделать, да все руки не доходили, слава богу хостер помог B)
Хотелось бы услышать мнения других по поводу действенности данного метода...

PS А кто-то, недавно говорил, что у меня глюки по поводу "массового умопомешательства" взломов сайтов :whistle:

Моё хобби стало моей проффесией ;)
www.BitFace.ru

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад - 4 года 3 мес. назад #2 от Aleksej
Aleksej ответил в теме Массовый взлом Joomla и WP

Arhitektorius пишет: Хотелось бы услышать мнения других по поводу действенности данного метода...


Мнение отрицательное...
Возможно, некая примитивная злонамеренная деятельность и имеет место... мне вот тоже письмо пришло с вежливой просьбой засветить доступ к одному из своих доменов, взгляни по ссылке. :)

http://sarahpolkdar.org/images/wpThumbnails/data/index.php?domain=it-peace.ru

Для чайников примечание; вводить в формочке никаких паролей к sweb не вздумайте, это фишинг. Несколько нелицеприятных выражений в контексте фривольных эротических похождений матушки тупого индюка, автора данного декора, вместо паролей ввести можно; будут прочитаны, и явно не роботом.

Мне не вполне понятно, зачем использовть брутфорсинг, да еще со сменой ip, если уж все равно что взламывать, абы побольше. Не проще ли уязвимостей поискать? В вебе полно старых необновленных джумл и wp, как грязи просто. Ко мне никто таким образом не ломился, даже не пробовал... на сайте запрещены посетители, использующие прокси, даже через Tor зайти не получится. Может, поэтому. Да и любую попытку НСД к админке я бы заметил.

Московский мой коллега, прочитав этот пост, передает для публикации вот такой код, призванный служить все той же цели - банить горе-взломщиков после энного числа попыток... данный код не адаптирован напрямую к joomla, но суть, при желании, уловить можно... Вообще же, для Joomla существует fail2ban (ну и RSFirewall , разумеется).

Ну а код вот такой:
<?php
$cur_time = $_SERVER['REQUEST_TIME'];
$login_tryouts = 10; //кол-во попыток до бана

function die_message($wtime=1,$page,$message){
die ("<html><head><meta HTTP-EQUIV='Refresh' content='".$wtime."; URL=".$page."'></head><body>".$message."</body></html>");
}

//Данный кусок кода нужно вставить "вначало" страницы авторизации 
if ( $login_tryouts <> '0' )
 {
 $time_l=$cur_time - $lock_time;
 $query_select_user_sec = "SELECT id, last_try, count FROM ".$db.".security WHERE `ipaddress`='".$_SERVER['REMOTE_ADDR']."' and `last_try` > '".$time_l."' and `count` = ".$login_tryouts." and `unban` <> '1'"; 
 $result_select_user_sec=mysql_query($query_select_user_sec);
 if ( mysql_num_rows($result_select_user_sec) > 0 )
   {
   die_message('','',$lang['Sorry, somebody from your ip address try to bruteforce password<br> Now your ip address is temporary blocked, please try to logon later']);
   }
 }
 
/// 
/// Данный кусок кода нужно вставить в место где обрабатывается неправилльный логин Грубо говоря после IF сверки полученного от пользователя пароля и хэша пароля в бд.
///

if ( $login_tryouts <> '0' )
 {
 //FAIL2BAN MODULE
 $time_l=$cur_time - $lock_time;
 $query_select_user_sec = "SELECT id, last_try, count FROM ".$db.".security WHERE `ipaddress`='".$_SERVER['REMOTE_ADDR']."' and `last_try` > '".$time_l."' and `count` < ".$login_tryouts." and `unban` = '0'"; 
 //echo $query_select_user_sec;
 $result_select_user_sec=mysql_query($query_select_user_sec);
 $select_user_sec=mysql_fetch_assoc($result_select_user_sec,MYSQL_BOTH);
 if ( mysql_num_rows($result_select_user_sec) > 0 )
  {
  $logon_tryies=$select_user_sec['count']+1;
  $query_add_logon_try = "UPDATE `".$db."`.`security` SET  last_try ='".$cur_time."', count='".$logon_tryies."' WHERE  id = '".$select_user_sec['id']."'";
  mysql_query($query_add_logon_try);
  }
 else
  {
  $query_add_logon_try = "INSERT INTO `".$db."`.`security` (`last_try`, `count`, `ipaddress`, `unban`) VALUES ('".$cur_time."', '1', '".$_SERVER['REMOTE_ADDR']."', '0')";
  mysql_query($query_add_logon_try);
  }
 }
?>

CREATE TABLE `security` (
  `id` int(32) NOT NULL AUTO_INCREMENT,
  `ipaddress` text,
  `count` varchar(45) DEFAULT NULL,
  `last_try` varchar(45) DEFAULT NULL,
  `unban` varchar(45) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
Последнее редактирование: 4 года 3 мес. назад от Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад #3 от prostolinux
prostolinux ответил в теме Массовый взлом Joomla и WP
У меня такая же беда уже второй день хостер держит закрытыми админку. Но самое плохое, что в Яндексе у меня рухнули все позиции. Жуть!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад - 4 года 3 мес. назад #4 от Aleksej
Aleksej ответил в теме Массовый взлом Joomla и WP

prostolinux пишет: Но самое плохое, что в Яндексе у меня рухнули все позиции. Жуть!


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

P.S. Поправьте, please, ссылку в своем профиле; указывает не на ваш сайт, а незнамо куда.
Последнее редактирование: 4 года 3 мес. назад от Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад #5 от prostolinux
prostolinux ответил в теме Массовый взлом Joomla и WP
Так написано это было уже 18 июля. И что такого, полно seo блогов, в которых масса таких статей и Яндекс не пессимизирует их. Мне кажется дело не в этом, Яндекс не читает статьи.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад #6 от superlamer
superlamer ответил в теме Массовый взлом Joomla и WP

prostolinux пишет: У меня такая же беда уже второй день хостер держит закрытыми админку. Но самое плохое, что в Яндексе у меня рухнули все позиции. Жуть!


Здравствуйте. Скажите мне пожалуйста, а может быть причина в этом файле?

Arhitektorius пишет:

<Files index.php>
    order deny,allow
    deny from all
    #allow from ххх.хххх.ххх.ххх
</files>


Может быть, яндекс не может индексировать странички, если вы в них все всем запретили?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад #7 от prostolinux
prostolinux ответил в теме Массовый взлом Joomla и WP
Это возможно сделал хостер, чтобы блокировать админку. А что, там прописан запрет на индексацию? :S

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад #8 от prostolinux
prostolinux ответил в теме Массовый взлом Joomla и WP
Нет у меня так прописано:


# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress


Да и к тому же другие сайты нормально, значит дело в другом.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад #9 от Arhitektorius
Arhitektorius ответил в теме Массовый взлом Joomla и WP

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

Вообщето нет... Такие письма мне тоже не раз приходили - пока вроде бы внимательность не подводила и опознаю их вовремя. На этот раз мне хостер официально все подтвердил по телефону и сообщил все в том же телефонном разговоре о массовой атаке. Просто пробежавшись по 5-6 логам разных сайтов и аккаунтов, и соответственно все они на разных серверах, я правда увидел, что пару дней идут постоянные запросы к /administrator/ приблизительно по 2-3 запроса в секунду по 3-5 часов подряд. Не говорит ли это о простом подборе логина-пароля (имхо да!)
Теперь конкретный вопрос Алексею - почему отрицательное отношение? Это как-то обосновано, или просто на уровне ощущений?

Но самое плохое, что в Яндексе у меня рухнули все позиции. Жуть!

Не вижу вообще никакой связи! У меня, например на всех сайтах стоит запрет на индексацию /administrator/ !!! И вообще, какой смысл ее индексировать! :blink:
Superlamer

Может быть, яндекс не может индексировать странички, если вы в них все всем запретили?

Запретили то не все, а доступ только к админке (но не к сайту) а там индексировать нечего... Причина должна быть в другом...

Моё хобби стало моей проффесией ;)
www.BitFace.ru

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
4 года 3 мес. назад - 4 года 3 мес. назад #10 от Aleksej
Aleksej ответил в теме Массовый взлом Joomla и WP

Arhitektorius пишет: Теперь конкретный вопрос Алексею - почему отрицательное отношение? Это как-то обосновано, или просто на уровне ощущений?


Так ведь уже объяснил, в первом же ответе.
Потому что нет смысла изобретать велосипед - все уже укр.. тьфу, все уже изобретено до нас, и - задолго до нас. Пользуйтесь специализированным софтом под joomla и не под joomla, пару ссылок навскидку я привел, остальные найдете сами.

Я вспоминаю, как когда-то задал примерно такой же вопрос... почему, дескать, если я хочу запретить просмотр директории на сайте, я должен обязательно сделать соответствующий htaccess , а не попросту швырнуть туда пустой индексный файл, и вся недолга... ответ помню до сих пор: привыкай сразу делать так, как принято правильным и грамотным, и забей привыкать к глупым воркараундам. Ни разу с тех пор не пожалел, что запомнил этот совет, и не только в контексте листинга директорий. Ну, вот как-то так.

P.S. Вообще - не дело хостера редактировать конфиги на сайте, да еще не ставя либо задним числом ставя администратора в известность, что еще за новости такие.
Последнее редактирование: 4 года 3 мес. назад от Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.