Атака китайских ботов

Вопросы без привязки к версии. Установлена авточистка (2 года).
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ | Как задавать вопросы | Как устанавливать расширения

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
Leo Angel
phpBB 2.0.9
Сообщения: 717
Стаж: 8 лет 2 месяца
Откуда: Израиль
Благодарил (а): 236 раз
Поблагодарили: 92 раза

Re: Атака китайских ботов

Сообщение Leo Angel »

dotez писал(а): Сегодня 9:26 Какой в итоге сейчас рабочий скрипт для 7.4 ср всеми доками, что выше предложили вам добавить ?
Для php7.4 работоспособность не проверял, у меня php8.3.

Отправлено спустя 4 минуты 36 секунд:
Kuskow писал(а): Сегодня 8:11 А как Вы определяете, в какой теме они сидят? Сам phpBB показывает только раздел (форум).
У меня показывает так
Untitled.jpg
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
Kuskow
phpBB 2.0.2
Сообщения: 310
Стаж: 9 лет 10 месяцев
Откуда: 🇰🇿 Караганда
Благодарил (а): 23 раза
Поблагодарили: 24 раза

Re: Атака китайских ботов

Сообщение Kuskow »

Ко мне эти боты с адресов 47.79.x.x тоже заходят пачками, но ни одного ответа 200 они не получили - только 403. Из чего делаю вывод, что переделка моего скрипта привела к появлению дыры.

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

47.79.51.113 - - [05/Apr/2026:12:28:54 +0500] "GET /viewtopic.php?start=80&t=6100&view=print HTTP/2.0" 403 226 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/144.0.0.0 Safari/537.36"
47.79.11.183 - - [05/Apr/2026:12:35:48 +0500] "GET /viewtopic.php?t=10076 HTTP/2.0" 403 226 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36"
47.79.51.72 - - [05/Apr/2026:12:35:49 +0500] "GET /viewtopic.php?start=80&t=3447 HTTP/2.0" 403 226 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36"
47.79.51.121 - - [05/Apr/2026:12:38:07 +0500] "GET /viewtopic.php?t=6584 HTTP/2.0" 403 226 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36"
47.79.15.96 - - [05/Apr/2026:12:38:53 +0500] "GET /viewtopic.php?t=899&view=print HTTP/2.0" 403 226 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/143.0.0.0 Safari/537.36"
47.79.10.199 - - [05/Apr/2026:12:42:42 +0500] "GET /viewtopic.php?start=46200&t=6638 HTTP/2.0" 403 226 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/145.0.0.0 Safari/537.36"
dotez
phpBB 2.0.2
Сообщения: 302
Стаж: 15 лет 3 месяца
Благодарил (а): 3 раза

Re: Атака китайских ботов

Сообщение dotez »

Kuskow писал(а): Сегодня 9:31 dotez, а какая у Вас версия phpBB? А то, может быть, проще уже перейти на PHP 8.3 - оно и побыстрее будет.
Для 7.4 мне нужен финальный скрипт
Аватара пользователя
Leo Angel
phpBB 2.0.9
Сообщения: 717
Стаж: 8 лет 2 месяца
Откуда: Израиль
Благодарил (а): 236 раз
Поблагодарили: 92 раза

Re: Атака китайских ботов

Сообщение Leo Angel »

Kuskow писал(а): Сегодня 10:49 Ко мне эти боты с адресов 47.79.x.x тоже заходят пачками, но ни одного ответа 200 они не получили - только 403. Из чего делаю вывод, что переделка моего скрипта привела к появлению дыры.
OK!
Значит, вернусь к Вашему скрипту и проверю. Из своего оставлю только страницу html.
MasterX
phpBB 1.4.4
Сообщения: 142
Стаж: 6 лет 1 месяц
Благодарил (а): 23 раза
Поблагодарили: 13 раз

Re: Атака китайских ботов

Сообщение MasterX »

Kuskow писал(а): Сегодня 10:49 Ко мне эти боты с адресов 47.79.x.x тоже заходят пачками, но ни одного ответа 200 они не получили - только 403. Из чего делаю вывод, что переделка моего скрипта привела к появлению дыры.
Это боты сканеры, они ищут уязвимости, им не нужно хождение по ссылкам, поэтому и 403
Аватара пользователя
Kuskow
phpBB 2.0.2
Сообщения: 310
Стаж: 9 лет 10 месяцев
Откуда: 🇰🇿 Караганда
Благодарил (а): 23 раза
Поблагодарили: 24 раза

Re: Атака китайских ботов

Сообщение Kuskow »

MasterX, что значит "поэтому"? Этот 403 я им выдал, потому что определил их как ботов. То есть, логика в обратную сторону. Мой скрипт определил бота и запретил ему вход на сайт с ответом 403. И он ни разу не пропустил его к phpBB, а если бы пропустил, было бы 200.
dotez
phpBB 2.0.2
Сообщения: 302
Стаж: 15 лет 3 месяца
Благодарил (а): 3 раза

Re: Атака китайских ботов

Сообщение dotez »

скрипт который в коммон рнр вносили перестал помогать, опять несколько тысяч ботов онлайн на форуме и вот такое в аналитике-
У вас нет необходимых прав для просмотра вложений в этом сообщении.
MasterX
phpBB 1.4.4
Сообщения: 142
Стаж: 6 лет 1 месяц
Благодарил (а): 23 раза
Поблагодарили: 13 раз

Re: Атака китайских ботов

Сообщение MasterX »

потому что проблема в движке. И ее приходится купировать на уровне .htaccess
Никакие расширения не уберут тяжелые и массовые MySQL-запросы, народ, да проснитесь вы уже!
Последний раз редактировалось MasterX 05.04.2026 13:20, всего редактировалось 1 раз.
Аватара пользователя
southklad
phpBB 3.1.0 RC4
Сообщения: 3431
Стаж: 14 лет 2 месяца
Благодарил (а): 704 раза
Поблагодарили: 173 раза

Re: Атака китайских ботов

Сообщение southklad »

Leo Angel писал(а): Сегодня 7:45 Почему так и может ли это говорить о чём-то?
У меня так бывало, когда ссылка появлялась на достаточно крупном ресурсе и была популярно и ее оттуда тянула в другие места и сразу же был всплеск ботов.
Изображение
MasterX
phpBB 1.4.4
Сообщения: 142
Стаж: 6 лет 1 месяц
Благодарил (а): 23 раза
Поблагодарили: 13 раз

Re: Атака китайских ботов

Сообщение MasterX »

Kuskow писал(а): Сегодня 12:03 MasterX, что значит "поэтому"? Этот 403 я им выдал, потому что определил их как ботов. То есть, логика в обратную сторону. Мой скрипт определил бота и запретил ему вход на сайт с ответом 403. И он ни разу не пропустил его к phpBB, а если бы пропустил, было бы 200.
Если скрипт внешний, не расширение, PHPBB, то норм! 👍
Если это расширение, то как раз пропустил, потому что его выдал движок! И выдал тогда, когда получил все тяжелые SQL запросы.
Когда 403 выдает сервак, тогда и нет нагрузки на движок, иначе это лишь имитация решения.
Аватара пользователя
Kuskow
phpBB 2.0.2
Сообщения: 310
Стаж: 9 лет 10 месяцев
Откуда: 🇰🇿 Караганда
Благодарил (а): 23 раза
Поблагодарили: 24 раза

Re: Атака китайских ботов

Сообщение Kuskow »

Пока разбирался, почему у вас не работает и пропускает некоторых ботов, нашёл ошибку у себя. Так что, сегодняшняя почти окончательная версия выглядит так. Для тех, кто не читал предыдущее обсуждение: этот код нужно добавить в конец файла config.php.

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

### Барьер для защиты от ботов, атакующих phpBB-сайты
### Авторы: Kuskow & AI on Google Search
if (PHP_SAPI === 'cli') { return; } // В cli не надо ничего проверять

# 1. Шлагбаум: извесных ботов не пускаем даже к дому
preg_match('/ChatGPT|keys-so|python|Firefox\/72|Mediapartners/i', $ua = $_SERVER['HTTP_USER_AGENT']) +
preg_match('/wp-|profile\.php/i', $uri = $_SERVER['REQUEST_URI'])
and die(header('HTTP/1.1 403'));

# 2. Домофон: разглядываем пришедшего без cookies
empty($_SERVER['HTTP_COOKIE'])
# Полезным ботам открыты все двери без дополнительных проверок
and !preg_match('/Yandex|Googlebot|Google-|Applebot|bingbot|Yahoo|Baiduspider|GPTBot|whatsapp|telegram|facebookext|meta-ext/i', $ua)
# Запросивших главную или тяжёлые страницы, переключаем на домофон
and (str_ends_with($uri, '/') + str_contains($uri, '/?') + preg_match('/index|view|member|search|post|app|ucp|config/i', $_SERVER['SCRIPT_NAME']))
# Домофон через закрытую дверь спрашивает: "Кто там?"
and die(header('HTTP/1.1 403') . '<meta charset=utf-8><h1>Если Вы человек, обновите эту страницу - и всё увидите. Такой вот у нас антиспам.</h1><script>document.cookie="human=1;Path=/;Max-Age=600;SameSite=Lax"</script>');

# 3. Гардероб: разуваем гостей, но не персонал
$noise = 'sid|hilit|gclid|yclid|ysclid|fbclid|utm_\w+';
preg_match('/^(?!.*(adm\/|cp\.php|hash=|mark_)).*?(\/index\.php(?:\?|&|$)|(' . $noise . ')=)/i', $uri)
and exit(header('Location: ' . preg_replace(["/([?&])($noise)=[^&]*(&|$)/i", '/\/index\.php(?:\?|&|$)/i'], ['$1', '/'], $uri), true, 308));
Аватара пользователя
Kuskow
phpBB 2.0.2
Сообщения: 310
Стаж: 9 лет 10 месяцев
Откуда: 🇰🇿 Караганда
Благодарил (а): 23 раза
Поблагодарили: 24 раза

Re: Атака китайских ботов

Сообщение Kuskow »

И да, у меня по-прежнему гостей меньше, чем зарегистрированных пользователей. Можете посмотреть в ссылке из моего профиля.
dotez
phpBB 2.0.2
Сообщения: 302
Стаж: 15 лет 3 месяца
Благодарил (а): 3 раза

Re: Атака китайских ботов

Сообщение dotez »

Kuskow писал(а): Сегодня 13:38 Пока разбирался, почему у вас не работает и пропускает некоторых ботов, нашёл ошибку у себя. Так что, сегодняшняя почти окончательная версия выглядит так. Для тех, кто не читал предыдущее обсуждение: этот код нужно добавить в конец файла config.php.

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

### Барьер для защиты от ботов, атакующих phpBB-сайты
### Авторы: Kuskow & AI on Google Search
if (PHP_SAPI === 'cli') { return; } // В cli не надо ничего проверять

# 1. Шлагбаум: извесных ботов не пускаем даже к дому
preg_match('/ChatGPT|keys-so|python|Firefox\/72|Mediapartners/i', $ua = $_SERVER['HTTP_USER_AGENT']) +
preg_match('/wp-|profile\.php/i', $uri = $_SERVER['REQUEST_URI'])
and die(header('HTTP/1.1 403'));

# 2. Домофон: разглядываем пришедшего без cookies
empty($_SERVER['HTTP_COOKIE'])
# Полезным ботам открыты все двери без дополнительных проверок
and !preg_match('/Yandex|Googlebot|Google-|Applebot|bingbot|Yahoo|Baiduspider|GPTBot|whatsapp|telegram|facebookext|meta-ext/i', $ua)
# Запросивших главную или тяжёлые страницы, переключаем на домофон
and (str_ends_with($uri, '/') + str_contains($uri, '/?') + preg_match('/index|view|member|search|post|app|ucp|config/i', $_SERVER['SCRIPT_NAME']))
# Домофон через закрытую дверь спрашивает: "Кто там?"
and die(header('HTTP/1.1 403') . '<meta charset=utf-8><h1>Если Вы человек, обновите эту страницу - и всё увидите. Такой вот у нас антиспам.</h1><script>document.cookie="human=1;Path=/;Max-Age=600;SameSite=Lax"</script>');

# 3. Гардероб: разуваем гостей, но не персонал
$noise = 'sid|hilit|gclid|yclid|ysclid|fbclid|utm_\w+';
preg_match('/^(?!.*(adm\/|cp\.php|hash=|mark_)).*?(\/index\.php(?:\?|&|$)|(' . $noise . ')=)/i', $uri)
and exit(header('Location: ' . preg_replace(["/([?&])($noise)=[^&]*(&|$)/i", '/\/index\.php(?:\?|&|$)/i'], ['$1', '/'], $uri), true, 308));
можно для 7.4 версию тоже)
Аватара пользователя
Leo Angel
phpBB 2.0.9
Сообщения: 717
Стаж: 8 лет 2 месяца
Откуда: Израиль
Благодарил (а): 236 раз
Поблагодарили: 92 раза

Re: Атака китайских ботов

Сообщение Leo Angel »

Kuskow писал(а): Сегодня 13:38 нашёл ошибку у себя
А в чём была ошибка, если не секрет?
Аватара пользователя
southklad
phpBB 3.1.0 RC4
Сообщения: 3431
Стаж: 14 лет 2 месяца
Благодарил (а): 704 раза
Поблагодарили: 173 раза

Re: Атака китайских ботов

Сообщение southklad »

Kuskow, Ваш вариант последний, не пускает никого, я просто перешел с Гуру к вам и мне предложило сразу же обновить страницу, все же это будет отталкивать если для всех входящих будет так или это меня е пропустил только, хотя я просто перешел и все. Браузер Яндекса
Изображение

Вернуться в «phpBB-пространство»