The Jerusalem PostApple's predictive text restrictions include 'Dictator Trump' and 'Sleepy Joe,' researcher findsInquirerKeep Christmas parties simple as peak of Super El Niño looms – PalaceBollywood HungamaAjay Devgn’s Devgn CineX expands footprint with new multiplexes in Gurugram and RajkotDaily MaverickENVIRONMENTAL JUSTICE: African climate voices demand fair funding and influence before COP31ZDF heuteAktuelle Pressemitteilungen des ZDFScreen RantABC Paves The Way For Grey’s Anatomy’s Forgotten Best Chief’s Return To PowerCollider’Obsession’s Breakout Star Is Officially Breaking Records AgainSCMP ChinaA kill switch for epilepsy? China cuts seizures by 92.6% in first human chemogenetic trialDeadlineInternational Insider: Russell Brand Guilty; AFM Fires Up; Trudie Styler InterviewVanguardTroops nab notorious terrorist in KadunaESPNThe Bilas Index: The best 65 men's basketball teams in 2026-27Capital FMThree still missing as rescue teams call off Eastleigh collapsed building search
The Daily Newsstand · Free, Always
Friday, November 6, 2026

Сейчас пятница — а в понедельник админы забегают, что их сайтики упали

Translate

Привет! Я, Григорий Мельников, создатель сервиса защиты от ботов KillBot расскажу что за мега сканер бегает по интернету, ломает сайты и как вооружиться по максимому чтобы не отхватить прямо завтра.

Прямо сейчас (ноябрь 2026 года) в новостях обсуждаются громкие инциденты:

  • Взлом 3 тысяч аккаунтов GitHub в октябре.

  • Тотальный блэкаут хостинга Beget (2 ноября 2026 года).

  • Закрытие сети гипермаркетов «Порядок» (25 октября 2026 года).

  • Взлом и дефейс сайтов Росстата (29 октября 2026 года).

И до моего небольшого сервиса тоже добрались, хотя на фоне любого гиганта он не может представлять особого интереса.

Атака началась с того, что я создал ветку на GitHub и выложил исходники сервиса, чтобы у пользователей не возникало ощущения, что они устанавливают на свой сервер чёрный ящик. Именно с этим я связываю интерес МЕГА-БОТА-сканера к моему проекту.

Атаковали англоязычное зеркало (и бекенд и фронтенд), и только после того, как находили там дыры, тут же опробовали их на всех доступных серверах русской и английско локаций.

Справка. Как получают доступ к серверу если пароль не известен

Представь, что ты учишься в универе и написал программу, которая принимает на вход два аргумента: год и месяц рождения. И запускаешь в консоли так:

Age.exe 1984 январь

Или если у тебя оконная программа, то так:

А теперь представь, что вместо месяца кто-то передал: “format c:”.

Age.exe 1984 "format c:"

И если у тебя программа написана с ошибкой, то она может напрямую вызвать команду format c:.

Сайты ломают так же, заместо обычного запроса:

https://website.ru?a=1984&b=январь

Атакующий может послать такой запрос:

https://website.ru?a=1984&b="создай новый админский аккаунт для меня"

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

У тебя есть 3-12 часов на то, чтобы выпилить ковырятеля пока твой сервер не убили

Взлом НЕ ежеминутный. От начала ковыряния дыры до непосредственного проникновения может уйти от 3-5 и более часов! От момента проникновения до понимания что у тебя лежит и где - так же может уйти 3-5 часов. Т.е. от момента проникновения до убийства твоего сервера есть резервное окно часов в 8 - чтобы ты очухался и вовремя прикрыл дыру.

Что нужно знать:

  1. МЕГА БОТ работает по НОЧАМ и круглосуточно в выходные. Чтобы на утро, после сладких снов, подготовить тебе подарок.

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

  3. Взлом похож на полностью автоматический. Наблюдаются просадки с окнами в 4-ре часа по времени - тут может или ожидание оператора или планирование или еще что.

  4. Настойчивость. Если ты бота заблокировал по IP, он без эмоций возьмет другой и продолжит делать своё дело.

  5. Возвращаемость. Если бот взломал твой сайт - он вернется на следующую ночь чтобы сломать тебя еще раз через другую дыру.

ЦЕЛЬ БОТА - это получение доступа к управлению сервером. Сайт, админка, майлы, пользователи сайта не так интересны как проникновение внутрь сервера. Этот вывод сделан из анализа действий атакующего.

Скорость прощупывания очень высокая.

В момент проникновения идёт массовое создание ресурсов (отправка get и post запросов) для прощупывания системы: Т.е. GET и POST параметры будут кишить php и mysql инъекциями. В логах сервера ты увидишь или попытки авторизации или попытки регистрации или попытки создания проекта внутри системы, создание страниц на сайте, ты просто увидишь много запросов типа "страница не найдена с битыми параметрами". В секунду может приходить 10-30 прощупывательных запросов - бывают перерывы или чтобы скорость не палить - или чтобы продумать план на будущее.

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

Вот прямо сейчас зайди в админку И в пользователей базы данных и ищи там левых СУПЕРПОЛЬЗОВАТЕЛЕЙ.

Да, это возможно! Хотя, у тебя И пароли уникальные. И доступ у тебя к базе ограничен по IP. И входные параметры у тебя валидируются, и кавычки экранируются. А левый супер-админ, то появится.

Добро пожаловать в новую эпоху осознания того, что всё, что мы используем в своей работе, - одно сплошное ДУПЛО! И то, что ты делаешь для безопасности - тоже большое ДУПЛО.

КАК получают доступ к серверу ПО ШАГАМ:

Точки входа сейчас - это дырявый web софт, который мы используем. С одной стороны использовалась библиотека для MySQL, которая оказалась не устойчива к SQL-инъекциям. А с другой стороны - это движек сайта в котором за 3 часа ковыряния удалось создать суперпользователя.

SQL-инъекция, это когда запрос к базе сайта проходит через форму логина сайта, например или по какому либо URL запросу на сайт.

В этом случае злоумышленник может получить доступ к файликам твоего сайта. Например, так:

SELECT LOAD_FILE('/path/to/your/file.txt') AS file_content;

И всё - твои паролички которые есть в файлах сервера, исходнички, гитхабчики как на ладони.

ИЛИ:

CREATE USER 'admin_user'@'localhost' IDENTIFIED BY 'Password123!';
GRANT ALL PRIVILEGES ON *.* TO 'admin_user'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;

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

ВАЖНО! Чтобы злоумышленник через инъекцию НЕ смог бы открыть файл файлы твоего сервера или создать админа. ЗАПРЕЩЕНО прописывать в настройках сайта в MYSQL, ROOT пользователя с административными GRAND правами.

А если злоумышленник смог создать пользователя в MySQL, то все - он подключится к базе сайта напрямую.

ВАЖНО! Чтобы у тебя в фаерволе порт 3306 был открыт только для твоих IP, а не для всех подряд. Иначе злоумышленник запользует своего нового пользователя для твоей базы данных.

ВОТ прямо сейчас иди и посмотри, какие права имеет пользователь базы данных твоего сайта, и убедись, что он не может создавать других пользователей и читать файлы сервера. И убедись что фаервол у тебя запрещает обращение к 3306 с любого IP.

Файлы твоего сервера можно слить и без взлома MYSQL.

Атакующий по аналогии через формы, поля ввода или url сможет создать файл с таким содержимым:

<?php echo shell_exec($_GET["c"]); ?>

А этот код может передать ЛЮБУЮ команду из URL напрямую на твой сервер. И все - сервер ушел.

ВАЖНО! На сервере тебе нужно запретить создание файлов от имени веб-пользователя (www-data).

Далее, если даже файл создан, тебе нужно запретить через PHP выполнять опасные функции вроде shell_exec.

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

$w='file'.'_put'.'_contents';
$a=array('M4083');
$z=@array_walk(
    $a,
    $w,
    '/var/www/html/killbot.ru/sites/default/files/kb4083e.txt'
);
return 'k';

ИМЯ функции собирается из частей - file_put_contents. Это попытка обойти защиту ModSecurity.

Пароль от админки написал на листочке, Надёжно!

ХА-ХА-ХА! А дырочки в твоей CMS позволят создать пользователя с АДМИНСКИМИ правами - и твой бумажный пароль не потребуется. Через одни дырочки можно создать пользователя, а через другие - выдать ему права доступа.

А если админский пароль хранится в каком то файле, то дырочки сервера могут позволить получить паролик от твоей CMS.

ЗАПРЕЩАЙ физически, ХАРДКОДОМ, создавать новых админов и выдавать административные роли. Напиши код и вбей его колом: Админом можешь быть только ты и твой друг, и все! Ни через интерфейс, никак нельзя больше получить роль админа. Если идет запрос на сайт от другого пользователя с ролью админа, то сразу сбрасывай роль и звони себе с предупреждением, что сайтик-то ломают.

ЗАПРЕТИ доступ в админку с любых IP, кроме своего, родненького, - и никак иначе. А то твой паролик утечёт, в пятницу ты уйдёшь спать, а в понедельник увидишь жирный ПРИВЕТ на морде сайта.

Теперь о самой важной ДЫРЕ безопасности, которую НУЖНО закрыть всем и прямо сейчас!

Когда МЕГА БОТ зашел в CMS и я увидел множество автоматических действий, сразу возник вопрос: КАК?! У МЕНЯ ЖЕ СПЕРЕДИ ЭКРАН ЗАЩИТЫ!!!

А всё просто. ОН пошел напрямую на сервер сайта, минуя сервер защиты.

И это как раз тот момент, о котором я постоянно говорю своим пользователям: запретите принимать запросы на сайт в обход сервера. Если ты подключил Cloudflare, Килбот или любой другой сервис, то тебе еще нужно руками в настройках своего сервера запретить подключения вне этого сервера.

Но я-то думал, что самый умный! Я-то думал, что раз заказал отдельный сервер с отдельным IP, специально под файлы сайта, никому про этот IP не сказал, то никто об этом IP не узнает. ХА-ХА-ХА!

Атака сразу прекратилась, как только я запретил прямой доступ к сайту в обход сервера защиты. Идти через защитный прокси боту по не интересно, алгоритм настроен на обращение к серверу сайту, минуя всё, что находится перед ним.

Как нужно защитить сайт прямо сейчас чтобы его не взломали?

  1. Смотрите логи и на бекенде и на фронтенде, и перед сном, и ночью на предмет инъекций. Если видите запросы с инъекцией, то НЕ СПИТЕ - спать запрещено.

  2. Смотрите лог действий в админке сайта - там не должно быть левых сканирующих запросов вообще, не должно быть массовых действий. Если увидели подозрительное, то НЕ СПИТЕ, если даже бота нет сейчас - он вернется.

  3. Запретите сайту подключаться к базе с root-правами. Это сразу не даст атакующему создать админа в случае SQL-инъекции.

  4. Удалите все лишние файлы из проекта. Каждый файл - это точка входа для атакующего.

  5. Отключите отображение ошибок на сайте. Сайт не должен выдавать посетителю причину ошибки. А то если сайт выдаст mysql запрос с ошибкой или название параметров которых не хватает - это сразу инструкция как изменить запрос чтобы он заработал.

  6. Отключить вывод PHP-ошибок на сайте. Иначе абсолютные пути к фалам сайта сольются и будет проще слить файлы.

  7. К веб серверу (nginx или ачач) подключите простой конфиг на выявление и блокировку SQL инъекций.

  8. Запретите устанавливать модуль на сайт через админку. ПРЯМО захардкодьте. Если у атакующего будет админский доступ к сайту, то нейронка тут же напишет модуль под ваш сайт, скачает и убьёт всё что нужно.

  9. Выпилите PHP модули с CMS - чтобы ни админ не пользователь не мог бы выполнять php код на сайте. Прямо удалите этот модуль физически чтобы его нельзя было включить.

  10. Захардкодьте тех админов что есть. Других админов в принципе нет, и все!

  11. Запретите админу вход с любого IP. Администратор должен входить только с разрешённого адреса.

  12. НОТИФИКАЦИИ по звонку! Прямо сейчас накидайте шел скрипт, который:
    - проверяет пользователей к БД, что там нет левых
    - проверяет админов
    - проверяет что нет левых файлов на сервере (простым счетчиком)
    - проверяет что на сайте нет активных действий (ВАЖНО!)

  13. И подключите экран защиты (поставьте прокси перед сайтом чтобы все запросы оседали бы там). Можно написать самомоу с помощью нейронки, вот есть моя другая статья где передается идея: https://habr.com/ru/articles/851698/.

Скинь этот документ другу, чтобы он тоже смог защититься

И прямо сейчас иди в нейронку и попроси помочь сконфигурировать свой сайт и веб сервер по всем пунктам что описаны выше.

View the original on Хабр →

KioskNews shows a cleaned-up reading view extracted from the publisher’s page — the original always lives on their site, not ours.