Среда , 14 Ноябрь 2018
Home / Vbulletin 4 / Взломали форум — начинаем восстанавливать (Часть 4)
php-mysql часть 4
php-mysql часть 4

Взломали форум — начинаем восстанавливать (Часть 4)

Благодаря нашим изысканиям в третьей части, мы смогли определить когда именно произошел взлом форума. Пришла пора двигаться дальше.Часть 4

Для начала идем в свою админку и переходим в пункт «Группы пользователей». Наша задача установить срок устаревания пароля для всех групп, для администраторов и модераторов в первую очередь. В первую очередь нам нужна настройка «История паролей», если наш взлом был обнаружен 8 дней назад, то необходимо установить запрет на право использовать пароль который уже был использован менее чем 5 дней назад. Это заставит всех ваших пользователей сменить свои пароли, если они этого еще не сделали в течении последних 5-ти дней. После этого. дня через 4 установить устаревание пароля через 14-30 дней, чтобы отследить редко приходящих пользователей. Через месяц после этого, установить истечение пароля через 30-90 дней. Это все необходимо, чтобы ваши пользователи меняли свои пароли раз в 1-3 месяца. И так на протяжении полугода. Естественно не исключаю, что ваши пользователи могут начать жаловаться на неудобство, но тут уж вам придется объяснить, что все предпринятые меры делаются, только ради их же безопасности.

Автор: Алексей Раков

Затем, вы можете установить устаревание пароля на более разумный срок 185-360 дней. Если вы будете восстанавливать Базу данных (опишем это в будущих частях), то вам возможно придется повторить этот пункт.

Сброс паролей.

вы можете запустить некоторые MySql запросы. чтобы определить текущее состояние сброса паролей. Измените пользователя базы данных на ваше имя, по запросу введите пароль ждя пользователя MySql базы и не забудьте заменить DBNAME на свое значение.

1. Найти usergroupids с административными правами. Если в вашем config.php стоит префикс для базы данных. то его в запросе тоже необходимо указать.

mysql -u mysqlusername -p -t -e “SELECT usergroupid, adminpermissions FROM usergroup WHERE adminpermissions <> 0;” DBNAME

На выводе получим. примерно такое:

+-------------+------------------+
| usergroupid | adminpermissions |
+-------------+------------------+
|           5 |                1 |
|           6 |                3 |
+-------------+------------------+

В моем случае покажет 2 группы 5 и 6.

2. Теперь. когда вы знаете дату, когда был взломан ваш форум. вы в состоянии определить, сколько пользователей поменяли свои пароли а сколько нет. Ниже приведен пример где взлом форума был 17 ноября 2013 года. Итак, для начала посмотрим как много у нас людей находятся в 5той и 6той группах, которые сбросили свой пароль после 17 ноября. в вашем случае, для всех MySql запросов, нужно будет изменить дату на свою, в примере она (2013-11-17). Также если ваши группы администраторов и модераторов имеют свои id, а не 5 т 6, то обязательно проставьте свои. Чуть не забыл, если в конфиге у вас стоит префикс базы данных, его обязательно нужно добавить в запрос.

mysql -N -e “SELECT userid, usergroupid, username, PASSWORD , passworddate, email FROM user WHERE usergroupid IN(5,6) AND passworddate > ‘2013-11-17’ ORDER BY passworddate ASC;” DBNAME | grep -v ‘+-‘ | wc -l

На выходе я получил число 13

Данный пример показал, что 13 пользователей находящиеся в групах 5 и 6 9администраторы и модераторы) сбросили свои пароля после 17 ноября.

Чтобы увидеть детальный отчет, нужно из запроса убрать wc -l

mysql -N -e “SELECT userid, usergroupid, username, PASSWORD , passworddate, email FROM user WHERE usergroupid IN(5,6) AND passworddate > ‘2013-11-17’ ORDER BY passworddate ASC;” DBNAME

3. далее посмотрим, скольким пользователям находящимся в группах 5 и 6 еще предстоит сбросить пароли.

mysql -N -e “SELECT userid, usergroupid, username, PASSWORD , passworddate, email FROM user WHERE usergroupid IN(5,6) AND passworddate < '2013-11-17' ORDER BY passworddate ASC;" DBNAME | grep -v '+-' | wc -l

На выходе я получил 3 пользователя.

Чтобы увидеть детальный отчет, нужно из запроса убрать wc -l

mysql -N -e “SELECT userid, usergroupid, username, PASSWORD , passworddate, email FROM user WHERE usergroupid IN(5,6) AND passworddate < '2013-11-17' ORDER BY passworddate ASC;" DBNAME | grep -v '+-'

4. Далее мы можем выяснить сколько из обычных пользователей (не администраторы и модераторы) не изменили свои паролию

mysql -N -e “SELECT userid, usergroupid, username, PASSWORD , passworddate, email FROM user WHERE usergroupid NOT IN(5,6) AND passworddate < '2013-11-17' ORDER BY passworddate ASC;" DBNAME | grep -v '+-' | wc -l

На выходе получилось примерно 120 человек.

Ну и так же можно посмотреть сколько обычных пользователей сбросило свои пароли.

mysql -N -e “SELECT userid, usergroupid, username, PASSWORD , passworddate, email FROM user WHERE usergroupid NOT IN(5,6) AND passworddate > ‘2013-11-17’ ORDER BY passworddate ASC;” DBNAME | grep -v ‘+-‘ | wc -l

На выходе получили число 3.

Пока все на этом, в следующей чати мы поговорим о закрытии доступа в админку и файлам.

Рейтинг статьи

0%

Рейтинг

Оцените данный материал!

User Rating: Be the first one !

About artscripts

Check Also

восстановление vbulletin часть 6

Взломали форум — начинаем восстанавливать (Часть 6)

Настала время заменить все файлы Vbulletin форума новой копией. Для этого скачаем новый zip архив …

One comment

  1. Pingback: Взломали форум — начинаем восстанавливать (Введение) - Изучаем Vbulletin

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.