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

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

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
Аватара пользователя
hd321kbps
phpBB 2.0.3
Сообщения: 366
Стаж: 14 лет 3 месяца
Откуда: Россия, Крым, Армянск
Благодарил (а): 191 раз
Поблагодарили: 346 раз

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

Сообщение hd321kbps »

Сегодня заметил на нескольких форумах наплыв ботов из китая от 100-300 одновременно, которые создают нагрузку на хостинг.
Все заходят с телефона Android и iphone Os.
Адреса ботов:
54.222.*.*
54.223.*.*
52.80.*.*
52.81.*.*
52.82.*.*
52.83.*.*
220.243.*.*
139.217.*.*
139.219.*.*
У кого наблюдается такое-же отпишитесь)


---------------------------
Варианты блокировки ботов:
Re: Атака китайских ботов - от Nekstati
Re: Атака китайских ботов - от Kuskow, php
Re: Атака китайских ботов - от Kuskow, nginx
Последний раз редактировалось Татьяна5 05.07.2026 13:52, всего редактировалось 1 раз.
Аватара пользователя
Nekstati
Поддержка
Поддержка
Сообщения: 3365
Стаж: 17 лет 3 месяца
Благодарил (а): 19 раз
Поблагодарили: 580 раз

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

Сообщение Nekstati »

Джим писал(а): 02.07.2026 12:38 вариант с белым списком IP
Такой вариант допустим лишь на краткое время - пережить атаку. Затем его нужно отключать. Хотя, если кому-то не важны пользователи, а важна лишь мин. нагрузка и макс. экономия, то можно и оставить.
  
Все писал(а):
И кстати, отсечение "вредных" ботов в ближайшем будущем приводит к тому, что наши сайты и наш контент отсутствует в памяти LLM, то есть в поисковой выдаче и ИИшных диалогах, то есть в реальности. Возможно, правильный способ решения проблемы - оптимизация сайта, кэширование, переход на более мощные серверы, а то, чем мы тут занимаемся - страусиная политика.
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Не, ну каков нахал! Вот на что тратятся ваши (наши) гигагерцы.

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

104.28.217.140 - - [04/Jul/2026:02:54:31 +0500] "GET / HTTP/2.0" 200 8701 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "HIT"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /env.js HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "-"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /config.js HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /firebase-config.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /api/config HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /wp-json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /env.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /settings.json HTTP/2.0" 403 20 "-" "meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /__/firebase/init.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Google-Extended/1.0; +http://www.google.com/bot.html)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /config.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; cohere-ai/1.0; +https://cohere.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /api/v1/settings HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /rclone.conf HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:32 +0500] "GET /api/settings HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/v2/settings HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/v1/config HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /runtime-config.js HTTP/2.0" 404 146 "-" "anthropic-ai" "-"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /.well-known/jwks.json HTTP/2.0" 204 0 "-" "Mozilla/5.0 (compatible; cohere-ai/1.0; +https://cohere.com)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/v2/config HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/account HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /manifest.webmanifest HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Google-Extended/1.0; +http://www.google.com/bot.html)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /openapi.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/openapi.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/health HTTP/2.0" 403 20 "-" "anthropic-ai" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/env HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.2; +https://openai.com/gptbot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /app-config.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /graphql HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Bytespider; spider-feedback@bytedance.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /service-worker.js HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "-"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /__env.js HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Google-Extended/1.0; +http://www.google.com/bot.html)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /sw.js HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Claude-Web/1.0; +https://www.anthropic.com)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /swagger.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /health HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /graphql/console HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /actuator HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Applebot/0.1; +http://www.apple.com/go/applebot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /ngsw.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/v1/env HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Applebot/0.1; +http://www.apple.com/go/applebot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /v1/graphql HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:33 +0500] "GET /api/graphql HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Bytespider; spider-feedback@bytedance.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /_ignition/health-check HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; cohere-ai/1.0; +https://cohere.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /app_dev.php HTTP/2.0" 404 36 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /actuator/configprops HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /pi.php HTTP/2.0" 404 36 "-" "Mozilla/5.0 (compatible; Bytespider; spider-feedback@bytedance.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /actuator/mappings HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /_profiler/open HTTP/2.0" 403 20 "-" "anthropic-ai" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /info.php HTTP/2.0" 404 36 "-" "Mozilla/5.0 (compatible; Applebot/0.1; +http://www.apple.com/go/applebot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /i.php HTTP/2.0" 404 36 "-" "Mozilla/5.0 (compatible; Claude-Web/1.0; +https://www.anthropic.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /app_dev.php/_profiler HTTP/2.0" 404 36 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /_profiler/latest HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Google-Extended/1.0; +http://www.google.com/bot.html)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /phpinfo.php HTTP/2.0" 404 36 "-" "Mozilla/5.0 (compatible; Bytespider; spider-feedback@bytedance.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /test.php HTTP/2.0" 200 520 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /telescope/requests HTTP/2.0" 403 20 "-" "meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /.aws/credentials HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /.git/config HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "-"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /.aws/config HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Claude-Web/1.0; +https://www.anthropic.com)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /.git/HEAD HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /trace.axd HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /server-status HTTP/2.0" 403 20 "-" "CCBot/2.0 (https://commoncrawl.org/faq/)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /elmah.axd HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Google-Extended/1.0; +http://www.google.com/bot.html)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /nginx_status HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /_debugbar/open HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /__debug__/ HTTP/2.0" 404 3146 "-" "anthropic-ai" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:34 +0500] "GET /server-info HTTP/2.0" 403 20 "-" "anthropic-ai" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.env.local HTTP/2.0" 404 146 "-" "meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /api/.env HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.gitconfig HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.env.backup HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.env.old HTTP/2.0" 404 146 "-" "CCBot/2.0 (https://commoncrawl.org/faq/)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.env.bak HTTP/2.0" 404 146 "-" "anthropic-ai" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.git-credentials HTTP/2.0" 404 146 "-" "meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.env.example HTTP/2.0" 404 146 "-" "meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /admin/.env HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; GPTBot/1.2; +https://openai.com/gptbot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.env HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.env.production HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /serviceAccountKey.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Applebot/0.1; +http://www.apple.com/go/applebot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.s3cfg HTTP/2.0" 404 146 "-" "anthropic-ai" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.npmrc HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /secrets.yml HTTP/2.0" 403 20 "-" "meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /service-account.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Applebot/0.1; +http://www.apple.com/go/applebot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /credentials.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /key.json HTTP/2.0" 403 20 "-" "CCBot/2.0 (https://commoncrawl.org/faq/)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /secrets.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; cohere-ai/1.0; +https://cohere.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /firebase-adminsdk.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Applebot/0.1; +http://www.apple.com/go/applebot)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /config/.env HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:35 +0500] "GET /.docker/config.json HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Amazonbot/0.1; +https://developer.amazon.com/support/amazonbot)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /backend/.env HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /docker-compose.yaml HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /.htpasswd HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /.boto HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Applebot/0.1; +http://www.apple.com/go/applebot)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /laravel/.env HTTP/2.0" 404 146 "-" "anthropic-ai" "-"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /.vscode/launch.json HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /.svn/entries HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; Bytespider; spider-feedback@bytedance.com)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /terraform.tfstate HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /wp-config.php.bak HTTP/2.0" 403 20 "-" "CCBot/2.0 (https://commoncrawl.org/faq/)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /storage/logs/laravel.log HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /wp-config.php.old HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:36 +0500] "GET /config/.env.php HTTP/2.0" 404 36 "-" "anthropic-ai" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /.env.php.bak HTTP/2.0" 404 146 "-" "anthropic-ai" "-"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /.env.swp HTTP/2.0" 404 146 "-" "Mozilla/5.0 (compatible; cohere-ai/1.0; +https://cohere.com)" "-"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /core/.env HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; Perplexity-User/1.0; +https://perplexity.ai/perplexity-user" "-"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /assets/javascript/core.js?assets_version=831 HTTP/2.0" 200 14278 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "-"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /public/.env HTTP/2.0" 404 146 "-" "anthropic-ai" "-"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /.env.dev HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; PerplexityBot/1.0; +https://perplexity.ai/perplexitybot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /assets/javascript/jquery-3.7.1.min.js?assets_version=831 HTTP/2.0" 200 30413 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "-"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /web/.env HTTP/2.0" 404 146 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; OAI-SearchBot/1.0; +https://openai.com/searchbot" "-"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /values.yaml HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ClaudeBot/1.0; +mailto:support@anthropic.com" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /configuration.php.bak HTTP/2.0" 403 20 "-" "meta-externalagent/1.1 (+https://developers.facebook.com/docs/sharing/webmasters/crawler)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /auth.json HTTP/2.0" 403 20 "-" "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko); compatible; ChatGPT-User/1.0; +https://openai.com/bot" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:38 +0500] "GET /config.php.bak HTTP/2.0" 403 20 "-" "Mozilla/5.0 (compatible; cohere-ai/1.0; +https://cohere.com)" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:39 +0500] "GET /styles/prosilver/template/ajax.js?assets_version=831 HTTP/2.0" 200 3896 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "-"
104.28.217.140 - - [04/Jul/2026:02:54:39 +0500] "GET /ext/cleantalk/antispam/styles/all/template/cleantalk.js?assets_version=831 HTTP/2.0" 200 490 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "-"
104.28.217.140 - - [04/Jul/2026:02:54:39 +0500] "GET /styles/prosilver/template/forum_fn.js?assets_version=831 HTTP/2.0" 200 6672 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "-"
104.28.217.140 - - [04/Jul/2026:02:54:39 +0500] "GET /ext/rmcgirr83/elonw/styles/all/template/js/elonw.js?assets_version=831 HTTP/2.0" 200 787 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "-"
104.28.217.140 - - [04/Jul/2026:02:54:40 +0500] "GET /search.php?search_id=active_topics HTTP/2.0" 403 20 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:41 +0500] "GET /viewforum.php?f=3 HTTP/2.0" 200 18502 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:41 +0500] "GET /viewforum.php?f=14 HTTP/2.0" 200 17069 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:43 +0500] "GET /viewforum.php?f=15 HTTP/2.0" 200 16308 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:44 +0500] "GET /viewforum.php?f=78 HTTP/2.0" 200 14400 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=27 HTTP/2.0" 200 17891 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /search.php?search_id=active_topics HTTP/2.0" 403 20 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=78 HTTP/2.0" 200 14400 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=3 HTTP/2.0" 200 18501 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=14 HTTP/2.0" 200 17069 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=15 HTTP/2.0" 200 16308 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=79 HTTP/2.0" 200 19505 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=1 HTTP/2.0" 200 19734 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=16 HTTP/2.0" 200 20752 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:46 +0500] "GET /viewforum.php?f=28 HTTP/2.0" 200 20152 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "BYPASS"
104.28.217.140 - - [04/Jul/2026:02:54:59 +0500] "GET /robots.txt HTTP/2.0" 200 460 "-" "Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/148.0.0.0 Mobile Safari/537.36" "-"
Отправлено спустя 1 час 42 минуты 7 секунд:
Джим писал(а): 01.07.2026 17:39UptimeRobot
Тут вдруг выявилась ещё одна проблема, так что, белому списку быть. Только, конечно, я его внедрил минимально тяжеловесно. Всё же, не стоит раздувать скрипт, который призван для облегчения. Следующим сообщением выложу новую версию и у себя в подписи поменяю ссылку на актуальное. Вам для добавления UptimeRobot в белый список нужно будет поставить это слово в один ряд с Google и Yandex, использовав там же такой же разделитель (вертикльную черту, означающую "или").
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Выпускаю в свет новую версию 4.1 антибота для phpBB для тех, у кого нет доступа к настройкам Apache/Nginx. На живом форуме проверено. Совместимо с PHP 7.4, 8.x. Основные изменения после предыдущей версии:
  • белый список для внутренних переходов без кук (referer), для таких отлупов отдаётся другой код 418
  • из очистки сорных параметров исключён index.php, поскольку там больше сложностей, чем толку
Если раньше устанавливали этот скрипт, нужно только изменить его текст в config.php.

Порядок внедрения барьера перед ботами в phpBB:

1. {единственное нетрадиционное, но обязательное исправление}
Очень важно повторить это исправление после каждого обновления версии движка, иначе ни один человек на новом устройстве не сможет зайти или зарегистрироваться на форуме.
В файле своего phpBB /assets/javascript/core.js в самом начале вставляем:

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

document.cookie = "checked=1; path=/; max-age=31104000; SameSite=Lax";

2. В конец файла config.php добавляем (у кого уже есть, заменяем):

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

### Барьер для ботов phpBB, версия 4.1. Авторы: Kuskow & AI on Google Search
if ($uri = $_SERVER['REQUEST_URI'] ?? '') { # не cli
    if (!isset($_COOKIE['checked'])) { # не человек в браузере
        $ua = $_SERVER['HTTP_USER_AGENT'] ?? 'python';
        # Невозможный адрес страницы или заведомо плохой бот
        if (!preg_match('#/(index\.php)?$|file\.php|/view(forum|topic)\.php([?&][ftp]=\d+)+(&start=\d+)?$#', $uri)
        or preg_match('#ChatGPT|keys-so|python|Firefox/72#i', $ua)
            ) { http_response_code(403); die; }
        # Якобы внутренний переход
        if (empty($_COOKIE)
        and strpos($_SERVER['HTTP_REFERER'] ?? '', $_SERVER['HTTP_HOST'])
        and !preg_match('#Yandex|Google|Apple|bing|Baidu|GPTBot|whatsapp|telegram|facebook#i', $ua)
            ) { http_response_code(418); die; }

        # Хороших ботов и новых посетителей объединяем в одном аккаунте без сессии
        $_SERVER['HTTP_USER_AGENT'] = 'Googlebot/';
    }
    # Избавляемся от сорных параметров
    if (preg_match('#view(topic|forum)\.php|search\.php|/\?#', $uri)
    and ($newuri = rtrim(str_replace('?&', '?', preg_replace('#&(sid|hilit|[fgy][bcs]+lid|utm_\w+)=[^&]*#', '', str_replace('?', '?&', $uri))), '?&')) !== $uri
        ) { header('Location: ' . $newuri, true, 308); die; }
}

3. Заходим в админку своего phpBB:
3.1. ОБЩИЕ -> Очистить кэш.
3.2. ОБЩИЕ -> Сброс рекорда посещаемости.
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Vlad__ писал(а): 21.06.2026 20:06 Допустим бот не переходит, а получает почти отлуп по типу 403. Тем более зачем этот код? Бот получает 308 редирект с такой же ссылкой только без "мусора". Так можно всем ботам, иеющим в адресной строке "мусор" выдать 403 и все.
Эта тактика оказалась неэффективной и даже вредной. Не получилось отделить новичков, впервые пришедших на форум из поисковиков от злостных ботов. И эти новички получили фигу 403. Так что, откатываемся назад. Сегодня опубликую следующую версию.

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

Отправлено спустя 1 час 19 минут 33 секунды:
А ещё в новой версии хочу заменить 403 на 410. ИИ расписал мне радужные перспективы. Во-первых, на хостингах часто нет своей страницы 410, из-за чего ответ будет пустым. Во-вторых, поисковики реже будут посещать такие страницы и меньше обижаться. В-третьих, можно по логам отделять, что отсёк этот барьер от того, что просочилось в phpBB и там наткнулось на 403.
Но что скажут гуру? Чего плохого может случиться от такой замены?
Wikipedia писал(а):HTTP 403 Forbidden — это стандартный код ответа сервера, который означает, что сервер понял ваш запрос, но отказывается предоставить доступ. В отличие от ошибки 404, сервер точно знает, что запрашиваемый ресурс существует, но сознательно блокирует его, так как у вас нет прав на просмотр.
Wikipedia писал(а):HTTP 410 Gone — такой ответ сервер посылает, если ресурс раньше был по указанному URL, но был удалён и теперь недоступен. Серверу в этом случае неизвестно и местоположение альтернативного документа (например копии). Появился в HTTP/1.1.
Отправлено спустя 2 часа:
Джим, в новой версии Вам белый список не понадобится.
Последний раз редактировалось Kuskow 05.07.2026 7:22, всего редактировалось 1 раз.
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Выпускаю новый нешедевр - версию 4.2 антибота для phpBB для тех, у кого нет доступа к настройкам Apache/Nginx. На живом форуме проверено, старые ошибки исправлены, новые добавлены. Совместимо с PHP 7.4, 8.x. Основные отличия от предыдущей версии:
  • фильтр плохих ботов из негативного стал позитивным
  • белый список исключён как вредный
  • referer конкретизирован, чтобы исключить блокировку живых людей
  • код ответа зловредным ботам теперь 410 - Gone
Если раньше устанавливали этот скрипт, нужно только изменить его текст в config.php.

Порядок внедрения барьера перед ботами в phpBB:

1. {единственное нетрадиционное, но обязательное исправление}
Очень важно повторить это исправление после каждого обновления версии движка, иначе ни один человек на новом устройстве не сможет зайти или зарегистрироваться на форуме.
В файле своего phpBB /assets/javascript/core.js в самом начале вставляем:

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

document.cookie = "checked=1; path=/; max-age=31104000; SameSite=Lax";

2. В конец файла config.php добавляем (у кого уже есть, заменяем):

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

### Барьер для ботов phpBB, версия 4.2. Авторы: Kuskow & AI on Google Search
if ($uri = $_SERVER['REQUEST_URI'] ?? '') { # не cli
  if (!isset($_COOKIE['checked'])) { # не человек в браузере
    # Невозможный адрес страницы или заведомо плохой бот
    if (preg_match('#sid=|=print|\?start=|(posting|search|memberlist|[um]cp|config|profile)\.php|/adm/#', $uri)
    or preg_match('#ChatGPT|meta-externalagent|keys-so|python|Firefox/72#i', $_SERVER['HTTP_USER_AGENT'] ?? 'python')
    or strpos($_SERVER['HTTP_REFERER'] ?? '', '#')
      ) { http_response_code(410); die; }
    # Хороших ботов и новых посетителей объединяем в одном аккаунте без сессии
    $_SERVER['HTTP_USER_AGENT'] = 'Googlebot/';
  }
  # Избавляемся от сорных параметров
  if (preg_match('#view(topic|forum)\.php|search\.php|/\?#', $uri)
  and ($newuri = rtrim(str_replace('?&', '?', preg_replace('#&(sid|hilit|[fgy][bcs]+lid|utm_\w+)=[^&]*#', '', str_replace('?', '?&', $uri))), '?&')) !== $uri
    ) { header('Location: ' . $newuri, true, 308); die; }
}

3. Заходим в админку своего phpBB:
3.1. ОБЩИЕ -> Очистить кэш.
3.2. ОБЩИЕ -> Сброс рекорда посещаемости.
Аватара пользователя
Leo Angel
phpBB 2.0.10
Сообщения: 781
Стаж: 8 лет 5 месяцев
Откуда: Израиль
Благодарил (а): 253 раза
Поблагодарили: 95 раз

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

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

К меня на форуме стоит вариант от Nekstati.
От Kuskow пока отключён.
Всё было хорошо до вчера. Вчера и сегодня опять пошли волны.
Не много, нагрузка небольшая, но что интересно - большое количество ботов (с разных IP) сидят в одной теме.
Что там мёдом намазано? Что они там ищут?
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Они не сидят - им всё равно. Они перебирают номера сообщений. Эта тема, возможно, самая большая. Вот на неё и приходится массовость - чисто статистически.

Отправлено спустя 2 минуты 38 секунд:
Я сейчас у себя отключил все защиты в Nginx, оставил только этот PHP вариант. Всё равно тишина. Видать, сегодня у ботов выходной. Но если пойдут пики, я не утерплю - опять включу блок в Nginx. Хотя, конечно, стоило бы поэкспериментировать, будет ли форум тормозить.
Аватара пользователя
Leo Angel
phpBB 2.0.10
Сообщения: 781
Стаж: 8 лет 5 месяцев
Откуда: Израиль
Благодарил (а): 253 раза
Поблагодарили: 95 раз

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

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

Самое интересное, что в той теме, где они пасутся всем стадом, всего одно сообщение и не такое уж длинное. :dontknow
Аватара пользователя
Perfecthus
phpBB 2.0.14
Сообщения: 951
Стаж: 15 лет 8 месяцев
Откуда: Оттуда
Благодарил (а): 54 раза
Поблагодарили: 103 раза

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

Сообщение Perfecthus »

Kuskow, Решил попробовать, добавляю код из этого поста Re: Атака китайских ботов в config, сервер выдает ошибку HTTP ERROR 500
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Perfecthus, В коде используется оператор ?? (null-coalescing operator). Он появился только в PHP 7.0. Если на вашем сервере (или для этого конкретного сайта) случайно включена старая версия PHP 5.6, то любая строка с ?? вызовет Fatal Error и ошибку 500

И проверьте, точно ли в самый конец файла config.php вставили этот код. И точно ли весь-весь текст оттуда вставлен - он заканчивается строкой с одной фигурной скобкой (возможно, не захватили её при выделении текста).
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Сегодня капец мощная атака. Банятся аж целые пачки подсетей.

101.47.18.0/24
101.47.19.0/24
101.47.20.0/24
101.47.24.0/24
101.47.26.0/24

104.40.32.0/24
104.40.34.0/24
104.40.47.0/24
104.42.122.0/24
104.42.194.0/24
104.42.214.0/24
104.42.255.0/24
104.42.38.0/24
104.42.57.0/24

13.83.163.0/24
13.83.221.0/24
13.83.232.0/24
13.83.238.0/24

150.5.128.0/24
150.5.129.0/24
150.5.130.0/24
150.5.131.0/24
150.5.132.0/24
150.5.133.0/24
150.5.134.0/24

168.61.19.0/24
168.62.193.0/24
168.62.22.0/24

170.106.175.0/24
170.106.199.0/24
170.106.82.0/24
170.106.9.0/24

172.184.119.0/24
172.184.120.0/24
172.184.154.0/24
172.184.169.0/24
172.184.216.0/24
172.184.242.0/24
172.185.27.0/24
172.185.49.0/24
172.185.50.0/24
172.185.89.0/24

20.215.188.0/24
20.215.220.0/24
20.227.140.0/24
20.228.106.0/24
20.228.125.0/24
20.228.77.0/24
20.228.84.0/24
20.228.95.0/24
20.237.177.0/24
20.237.204.0/24
20.237.225.0/24
20.237.229.0/24
20.245.117.0/24
20.245.12.0/24
20.245.122.0/24
20.245.145.0/24
20.245.187.0/24
20.245.227.0/24
20.245.236.0/24
20.245.40.0/24
20.253.152.0/24
20.253.188.0/24
20.253.200.0/24
20.253.221.0/24
20.253.228.0/24
20.253.232.0/24

20.66.11.0/24
20.66.112.0/24
20.66.122.0/24
20.66.32.0/24
20.66.60.0/24
20.66.63.0/24
20.66.74.0/24

43.153.107.0/24
43.153.143.0/24
43.153.157.0/24
43.153.34.0/24
43.153.53.0/24
43.153.89.0/24

43.166.161.0/24
43.166.176.0/24
43.166.253.0/24

47.236.58.0/24
47.236.75.0/24
47.237.124.0/24
47.237.133.0/24
47.237.134.0/24
47.237.135.0/24
47.237.136.0/24
47.237.137.0/24
47.237.138.0/24
47.237.254.0/24
47.237.95.0/24
47.237.97.0/24
47.242.134.0/24
47.243.204.0/24
47.245.119.0/24
47.245.138.0/24
47.245.142.0/24
47.245.143.0/24
47.245.60.0/24
47.245.86.0/24
47.251.16.0/24
47.254.95.0/24

47.77.216.0/24
47.77.229.0/24
47.77.238.0/24
47.82.10.0/24
47.82.11.0/24
47.82.50.0/24
47.82.52.0/24
47.82.54.0/24
47.82.55.0/24
47.86.26.0/24
47.88.236.0/24
MasterX
phpBB 1.4.4
Сообщения: 162
Стаж: 6 лет 4 месяца
Благодарил (а): 24 раза
Поблагодарили: 17 раз

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

Сообщение MasterX »

так это неудивительно. Там VPS поднять - 2$-3$ в месяц и он будет барабанить ботами куда угодно.
Многократно ж писал, что в первую очередь надо банить подсети замеченных в безобразии дата-центров.
ИИ подскажет, какие из них самые нехорошие в этом плане.

Вот откуда хулиганы:

1. Microsoft (Облако Azure / Хостинг)
Сюда относится подавляющее большинство адресов из твоего списка. Эти серверы могут использоваться для чего угодно: от хостинга сайтов и ботов до VPN-узлов и корпоративных приложений.

Блоки на 20.*: 20.66.*, 20.215.*, 20.227.*, 20.228.*, 20.237.*, 20.245.*, 20.253.*
Блоки на 104.*: 104.40.*, 104.42.*
Блоки на 13.* и 168.*: 13.83.*, 168.61.*, 168.62.*
Блоки на 172.*: 172.184.*, 172.185.* (часть инфраструктуры Microsoft/Edge)

2. Alibaba Cloud (Aliyun)
Крупнейший китайский облачный провайдер. Огромная часть этих подсетей — их международные и внутренние дата-центры.

Блоки на 47.*: 47.77.*, 47.82.*, 47.236.*, 47.237.*, 47.242.*, 47.243.*, 47.245.*, 47.251.*, 47.254.*

3. Tencent Cloud & Азиатские хостинги
Еще пачка китайских и международных магистральных провайдеров/облаков, которые часто используются для обхода блокировок или хостинга азиатских сервисов.

43.153.*, 43.166.* — Tencent Cloud
101.47.* — Huawei Cloud / UCloud (Китай)
170.106.* — Zenlayer (международные дата-центры, часто берутся под VPN/прокси)
150.5.* — Азиатские магистральные сети (в основном Япония, провайдер KDDI)
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Добавил ещё два метода, появилась пятая версия защиты от ботов. Поставил у себя, отключил полностью все ранее возведённые блокировки Nginx и fail2ban. Эффект потрясающий. Ну хотя, может быть, у меня глаз уже замылен. А вы видите этот эффект? Можете сказать, в котором часу я включил новую PHP-версию барьера и отключил Nginx-блокировки? То есть, сейчас у меня вообще никак не используются средства Nginx, как будто на web-хостинге.

Изображение

Изображение
Аватара пользователя
Kuskow
phpBB 2.0.5
Сообщения: 455
Стаж: 10 лет 1 месяц
Откуда: 🇰🇿 Караганда
Благодарил (а): 29 раз
Поблагодарили: 46 раз

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

Сообщение Kuskow »

Вот и готов пятый выпуск антибота для phpBB, если нет доступа к настройкам Apache/Nginx. Теперь не только отсекаются зловредные боты, но и оптимизируется нагрузка на базу данных за счёт исправления запросов, из-за чего увеличивается скорость и доступность форума. На живом (своём родном единственном) форуме проверено и работает сейчас (в профиле есть ссылка). Совместимо с PHP 7.4, 8.x. Основные отличия от предыдущей версии: Если раньше устанавливали этот скрипт, теперь нужно только изменить его текст в config.php.

Порядок внедрения барьера перед ботами в phpBB:

1. В самое начало файла /assets/javascript/core.js добавляем следующий код (прям первой строкой). Важно: повторить это исправление после каждого обновления версии движка, иначе ни один человек на новом устройстве не сможет зайти или зарегистрироваться на форуме.

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

document.cookie = "checked=1; path=/; max-age=31104000; SameSite=Lax";

2. В конец файла config.php добавляем (у кого уже есть, заменяем) следующий код. Важно: перед сохранением файла исправить в тексте значения параметров $ppp = 20 и $tpf = 100 на свои. Где их взять - написано там же в тексте.

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

### Барьер для ботов phpBB, версия 5. Авторы: Kuskow & AI on Google Search
if ($uri = (string)@$_SERVER['REQUEST_URI']) { # не cli
  if (!@$_COOKIE['checked']) { # не человек в браузере
    $ua = $_SERVER['HTTP_USER_AGENT'] ?? 'python';
    # Невозможный адрес страницы или заведомо плохой бот
    if (preg_match('#sid=|=print|\?start=|(posting|search|memberlist|[um]cp|config|profile)\.php|/adm/#', $uri)
    or preg_match('#ChatGPT|meta-|keys-so|python|Firefox/72#i', $ua)
    or strpos($_SERVER['HTTP_REFERER'] ?? '', '#')
      ) { http_response_code(410); die; }

    # Хороших ботов и новых посетителей объединяем в одном аккаунте без сессии
    $_SERVER['HTTP_USER_AGENT'] = 'Googlebot/';

    # Параметры взять из админки: Общие -> Конфигурация -> Размещение сообщений
    $ppp = 20; # количество сообщений на странице темы
    $tpf = 100; # количество тем на странице форума

    # Неправильная пагинация
    if ((int)@$_GET['start'] % match(basename($_SERVER['SCRIPT_NAME'],'.php')) { 'viewtopic' => $ppp, 'viewforum' => $tpf, default => 1 }) {
      http_response_code(410); die; }
                                    
    # p= заменяем на t=&start=
    if (($post_id = (int)@$_GET['p']) 
    and ($conn = @mysqli_connect($dbhost, $dbuser, $dbpasswd, $dbname, $dbport))) {
      $t_posts = $table_prefix . 'posts';
      $res = mysqli_query($conn, "SELECT p1.topic_id, COUNT(p2.post_id) AS older_posts 
        FROM {$t_posts} p1 
        LEFT JOIN {$t_posts} p2 ON p2.topic_id = p1.topic_id AND p2.post_time < p1.post_time AND p2.post_visibility = 1
        WHERE p1.post_id = {$post_id} AND p1.post_visibility = 1
        GROUP BY p1.topic_id");
      if ($data = mysqli_fetch_assoc($res)) {
        $start = intdiv($data['older_posts'], $ppp) * $ppp;
        $url = 'viewtopic.php?t=' . $data['topic_id'] . ($start ? '&start=' . $start : '');
        header('Location: ' . $url, true, 301); die;
      }
      http_response_code(410); die;
    }
  }

  # Избавляемся от сорных параметров
  if (preg_match('#view(topic|forum)\.php|search\.php|/\?#', $uri)
  and ($newuri = rtrim(str_replace('?&', '?', preg_replace('#&(sid|hilit|[fgy][bcs]+lid|utm_\w+)=[^&]*#', '', str_replace('?', '?&', $uri))), '?&')) !== $uri) {
    header('Location: ' . $newuri, true, 308); die; }
}

3. Заходим в админку своего phpBB:
3.1. ОБЩИЕ -> Очистить кэш.
3.2. ОБЩИЕ -> Сброс рекорда посещаемости.

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