Взломали! Появились новые админы! Как их вычислить??? Staff!

Проблемы с установкой или работой phpBB 2.0.x? Ищите ответы здесь!
Аватара пользователя
Romiyo
Неадекватен
Сообщения: 603
Стаж: 20 лет 4 месяца
Откуда: tln.ee

Взломали! Появились новые админы! Как их вычислить??? Staff!

Сообщение Romiyo »

Меня взломали! Появились новые админы и продолжают хулиганить, даже после установки заплаток! Как узнать, кто это и унижтожить их???
Установил заплатки, но меня всё равно сломали!
Не смотря на то, что критических обновлений для форумов вышло уже целая куча и уже давным давно, всё же с каждым днём всё больше и больше появляется вот таких вот "криков о помощи" от админов-лузеров, которым просто накакать на ПОИСК и чтение форума, на предмет нахождения ответов на их вопросы... Я уж не говорю о пользователях, модерах и админах этого форума, которым приходится терпеть такие темы...

Нет, я не буду рассказывать вам о способах защиты от взлома - эта тема уже объезжена вдоль и поперёк!

Я скажу, как найти новых лже-админов. (Теперь вы будете знать, почему вас сломали даже после установки заплаток)

Многие хулиганы, ломающие уязвимые форумы имеют привычку делать новых админов из уже имеющихся пользователей вашего форума (на случай, если вы только обновите форум до последней версии, вместо того, чтоб ещё и в статусах пользователей порыскать) - как правило это давно зарегистрированные пользователи и давно не отвечающие в темах.
- Но как их вычислить??! Неужели прийдётся перелопачивать весь список пользователей через админку и искать у них статус "Администратор"???
Ну, если вы не знаете, что такое phpmyadmin, SQL и как всем этим пользоваться; если вы прочитали тучу статей по этому поводу и всё равно ничего не поняли, то, пожалуй да... =)
Но как быть, если у меня зарегано 200-300-1000 пользователей??!
Повеситься! :lol:

Да ладно, всё это элементарно.

Ставим мод Staff Site (Команда сайта) и решаем эту проблему!

В результате, после установки у вас появится новая страница со списком всех админов и модеров (с указанием модерируемых ими разделов) вашего форума.

Скачать Staff Site MOD (phpBB 2.0.x)

Демо

В зависимости от ваших знаний, эту страницу можно сделать как общедоступной, так и скрытой от пользователей (в последнем случае прийдётся переименовать staff.php в какую-нибудь абракадару, известную только вам и подредактировать вложенные файлы ;) Конечно, это ни есть абсолютная защита от посторонних глаз, но далеко не каждый догадается набрать ссылку в браузере типа "jkzdfghoperi0erwt.php" ;) )
З.Ы. Эта тема касается по большей части новичков, которые не знают, что их может ожидать после взлома форума.
Вы ещё не обновилсь? Тогда я иду к вам! :P :lol:
Неадекватен
Аватара пользователя
Егор Наклоняев
phpBB 2.0.4
Сообщения: 404
Стаж: 20 лет 6 месяцев
Откуда: оттуда

Сообщение Егор Наклоняев »

Romiyo

Два замечания.
1. От тюрьмы и сумы не зарекаются, посему не надо так относиться снисходительно к чужим несчастьям
2. Дырки, закрытые в 2.0.10-2.0.14 позволяли делать "закладки" на сервере, т.е. закачивать посторонние вредоносные программы. Зная пароль к MySQL и закачав на сервер некую бяку можно ломать сервер хоть ежечастно, вне заивимости от последующих апгрейдов.
Аватара пользователя
Siava
Поддержка
Поддержка
Сообщения: 5430
Стаж: 20 лет 3 месяца
Откуда: Питер
Благодарил (а): 177 раз
Поблагодарили: 749 раз

Сообщение Siava »

Romiyo
3. Лучше поставить мод Advance Admin Index Stats - в нём больше возможностей.
http://www.phpbbguru.net/mods/?cat=2
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb 2.0.x 3.5.x)
vikdo
phpBB 1.4.1
Сообщения: 45
Стаж: 20 лет 1 месяц

Сообщение vikdo »

Егор Наклоняев писал(а): Зная пароль к MySQL и закачав на сервер некую бяку можно ломать сервер хоть ежечастно, вне заивимости от последующих апгрейдов.
А как можно изменить пароль к MySQL ? В смысле и где его новый надо прописать в форуме, в каком файле (если возможно конечно)?
Аватара пользователя
BorMan
phpBB 1.4.3
Сообщения: 91
Стаж: 20 лет 2 месяца
Откуда: Moscow

Сообщение BorMan »

vikdo писал(а):где его новый надо прописать в форуме,
Для начала надо изменить сам пароль на базу, а потом уже править на форуме...
Лень - двигатель прогресса!!!
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 19 лет 11 месяцев
Благодарил (а): 19 раз
Поблагодарили: 30 раз
Забанен: Бессрочно

Сообщение MAzZY »

Помогите мне решить следующую задачу.
Хочу поправить этот мод под свои нужды. Для этого мне надо вынести информацию о количестве тем и сообщений
Сообщения 227 (41.27% от общего числа, ш 2.82 сообщений в день)
Темы 27 (62.79% от общего числа, ш 0.34 сообщений в день)
из отдельных окошек каждого пользователя в общую таблицу.
Проще говоря, в приложенном файле нужно правильно перенести инструкции

Код: Выделить всё

$sql_last_posts = "SELECT p.post_time, p.post_id, p.poster_id, pt.post_id, pt.post_subject, t.forum_id, t.topic_id, t.topic_title, f.forum_name
				   FROM ". POSTS_TABLE ." p, ". POSTS_TEXT_TABLE ." pt, ". TOPICS_TABLE ." t, ". FORUMS_TABLE ." f
				   WHERE p.poster_id = '". $view_profile['user_id'] ."' AND p.post_id = pt.post_id AND p.topic_id = t.topic_id
					   AND t.forum_id = f.forum_id AND t.forum_id NOT IN ($except_forums) AND t.topic_status <> '2'
				   ORDER BY p.post_time DESC LIMIT $last_post_limit";
		if( !($results_last_posts = $db->sql_query($sql_last_posts)) )
		{
			message_die(GENERAL_ERROR, 'error getting users post information.', '', __LINE__, __FILE__, $sql_last_posts);
		}
		while( $last_posts = $db->sql_fetchrow($result_last_posts) )
		{
			$last_post_title = ( !empty($last_posts['post_subject']) ) ? $last_posts['post_subject'] : $last_posts['topic_title'];
			$last_post_title = ( count($orig_word) ) ? preg_replace($orig_word, $replacement_word, $last_post_title) : $last_post_title;
			$last_post_title = ( strlen($last_post_title) < $last_post_length ) ? $last_post_title : substr(stripslashes($last_post_title), 0, $last_post_length) .'...';

			$template->assign_block_vars('switch_view_profile.last_posts', array(
				'LAST_POST_TITLE' => $last_post_title,
				'LAST_POST_URL' => append_sid("viewtopic.$phpEx?". POST_POST_URL ."=$last_posts[post_id]#$last_posts[post_id]"),
				'LAST_POST_TIME' => create_date($board_config['default_dateformat'], $last_posts['post_time'], $board_config['board_timezone']),
				'LAST_POST_PERIOD' => sprintf($lang['Staff_ago'], period(time() - $last_posts['post_time'])),
				'FORUM_NAME' => $last_posts['forum_name'],
				'FORUM_URL' => append_sid("viewforum.$phpEx?". POST_FORUM_URL ."=$last_posts[forum_id]"),
			));
		}
		$db->sql_freeresult($result_last_posts);

		$total_posts = get_db_stat('postcount');
		$total_topics = get_db_stat('topiccount');
	}

	$sql_topics = "SELECT count(topic_id) AS user_topics FROM ". TOPICS_TABLE ." WHERE topic_poster = '". $view_profile['user_id'] ."'";
	if( !($results_topics = $db->sql_query($sql_topics)) )
	{
		message_die(GENERAL_ERROR, 'error getting users post information.', '', __LINE__, __FILE__, $sql_topics);
	}
	$topics = $db->sql_fetchrow($results_topics);
	$user_topics = ( $topics['user_topics'] != '0' ) ? $topics['user_topics'] : '0';

	$memberdays = max(2, ( time() - $view_profile['user_regdate'] ) / 86400 );
	$posts_per_day = $view_profile['user_posts'] / $memberdays;
	$post_percent = ( $total_posts || $view_profile['user_posts'] != '0' ) ? min(100, ($view_profile['user_posts'] / $total_posts) * 100) : 0;
	$topics_per_day = $user_topics / $memberdays;
	$topic_percent = ( $total_topics || $view_profile['user_posts'] != '0' ) ? min(100, ($user_topics / $total_topics) * 100) : 0;
в верхнюю часть:

Код: Выделить всё

if( $mode != 'view_profile' )
{
...
}
Я в SQL ничего не понимаю.

С tpl я сам разберусь.
По сути должно получиться подобие вот этого - http://www.95.ru/staff.php
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 19 лет 11 месяцев
Благодарил (а): 19 раз
Поблагодарили: 30 раз
Забанен: Бессрочно

Сообщение MAzZY »

[R: R@m$e$ :U], дай, пожалуйста, свой файл http://www.95.ru/staff.php
А то я никак не могу привести его к подобному виду. С тпл сам разберусь. Я твой файлик немного изменю под свои нужды
Xpert
phpBB Guru
phpBB Guru
Сообщения: 5484
Стаж: 21 год 1 месяц
Поблагодарили: 2 раза

Сообщение Xpert »

MAzZY
Я что отключил ЛС?
Эксперт - это человек, который избегает мелких ошибок на пути к грандиозному провалу.
Любая более-менее сложная задача имеет несколько простых, изящных, лёгких для понимания неправильных решений
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

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

Код: Выделить всё

if( $mode != 'view_profile' ) 
{ 
... 
}
вообще ни чего не понял =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 19 лет 11 месяцев
Благодарил (а): 19 раз
Поблагодарили: 30 раз
Забанен: Бессрочно

Сообщение MAzZY »

[R: R@m$e$ :U], меня интересует только инфа о сообщениях, темах и регистрации. Чтобы сделать на главной, как у тебя, а не отдельно у каждого пользователя. Я в этом никак разобраться не могу. Остальное, вроде бы, ясно.
Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Стаж: 20 лет
Откуда: tallinn.ee

Сообщение Romy »

з.ы. раз уж подняли тему, то вот аддон (только зареганные юзеры могут видеть эту страницу):

Код: Выделить всё

#
# --- [ OPEN ] ---
#
staff.php

#
# --- [ FIND ]---
#
init_userprefs($userdata);

#
#--- [ AFTER, ADD ]---
#
if ($userdata['user_id'] == ANONYMOUS)
{
	redirect(append_sid("login.$phpEx?redirect=staff.$phpEx", true));
}

#
# --- [ SAVE/CLOSE ] ---
# EoM
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Romy
сильно задвинул =)
MAzZY
покажи тплку =)
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y
Аватара пользователя
Romy
phpBB 2.0.3
Сообщения: 396
Стаж: 20 лет
Откуда: tallinn.ee

Сообщение Romy »

[R: R@m$e$ :U] писал(а):сильно задвинул =)
неужели криво?.. :? :oops: :cry:
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 19 лет 11 месяцев
Благодарил (а): 19 раз
Поблагодарили: 30 раз
Забанен: Бессрочно

Сообщение MAzZY »

[R: R@m$e$ :U], а зачем? :shock:
Ну вот, приложил. Естественно, рабочий вариант надо будет подправить/подчистить.
Аватара пользователя
[R: R@m$e$ :U]
phpBB Maniac
Сообщения: 1464
Стаж: 20 лет 3 месяца
Откуда: Novosibirsk,RU

Сообщение [R: R@m$e$ :U] »

Romy
да не... все ок =) просто серьезный аддон =))
MAzZY
и в чем проблема?

Код: Выделить всё

        <td class="{switch_list_staff.user_level.staff.ROW_CLASS}" valign="top" align="center"><span class="genmed">{L_POSTS}:{POSTS} ({POST_PERCENT},&nbsp; {POSTS_PER_DAY})<br />{L_TOPICS}:{TOPICS} ({TOPIC_PERCENT},&nbsp;{TOPICS_PER_DAY})<br />{L_JOINED}: {JOINED}&nbsp; {JOINED_PERIOD} </span></td>
вот они все эти темы, посты и тд... разбивай их на разные колонки как хочешь... все раздельно уже... я лишь раскидал их по шаблону, и удалил лишнее
Руководство пользователя | FAQ | Правила | Как устанавливать MOD'ы
ВОСПОЛЬЗУЙСЯ ПОИСКОМ, ТАМ ЕСТЬ БОЛЬШИНСТВО ОТВЕТОВ
ЕСЛИ НЕ ПОМОГЛО, ИСПОЛЬЗУЙ ШАБЛОН ЗАПРОСА, ПОМОГИ В РЕШЕНИИ ЗАДАЧИ
БЕСПЛАТНО ПОМОГУ ТОЛЬКО НА ФОРУМЕ!!! (ЛС НЕ В СЧЕТ)

Оставь благодарность, подтверди работоспособность совета.

ВСЕ ПРАВА НА МОДЫ ОТДАНЫ m157y

Вернуться в «Поддержка phpBB 2.0.x»