Главное Авторские колонки Вакансии Образование
Выбор редакции:
760 9 В избр. Сохранено
Авторизуйтесь
Вход с паролем

sQanner: как появился и для чего нужен

Первая публикация о сервисе sQanner: о том как пришла идея создания такого сервиса, поиске решения и разработке собственного решения
Мнение автора может не совпадать с мнением редакции

Проблема

Представьте 9 сайтов на одном хостинге. Все разной направленности и работают на разных системах управления сайтом. Вдруг от Яндекс.Метрика приходит уведомление о недоступности одного из сайтов. Начинаем разбираться в чём дело.

На главной странице белый экран. Смотрим логи и выясняем что в index.php ошибка синтаксиса. Но откуда она там взялась если сайт стопятьсот лет никто не трогал? Смотрим в файл, а в конце файла спустя много много пустых строк вставлен зловредный код, единственная цель которого перенаправлять входящий трафик на сторонний ресурс.

Зловред выпилили, сайт заработал. Сменили пароли от хостинга, ftp, базы, всех административных панелей. Вроде всё ок. Через неделю в той же Метрике Яндекса замечаем падение трафика, а в панели вебмастера резко возросшее число проиндексированных страниц.

Жуть как не приятно когда шарятся в твоих вещах

Детальный анализ дал ясно понять - заражены все сайты на хостинге. Откуда именно началось заражение не известно, но причиной могла стать любая уязвимость любого движка или его плагина. Вот что сделали:

  1. разнесли все сайты на разные аккаунты хостинга. Это в будущем не даст заразить все сайты из за уязвимости в одном
  2. пересобрали все сайты и их плагины с нуля, а шаблоны чистили вручную

Сейчас с этими сайтами всё хорошо: они доступны, индексируются, приносят прибыль. На графике ниже видно что почти 2000 страниц было замечено Яндексом, а после их запрета в robots.txt и письма в Яндекс, поисковый робот их наконец выплюнул.

b_58b5b2a98d2c4.jpg

Случалось ли с Вами такое? Поднимаетесь на свой этаж, подходите к двери, а она чуть приоткрыта. Входите, а дома всё вверх дном перевёрнуто. Ощущение от подобных заражений именно такое. Жуть как не приятно когда шарятся в твоих вещах.

b_58b5b11011884.jpg

Поиск решения

После этого случая Я задумался над тем как получить больше контроля и осведомлённости о том что происходит на сервере. Первое что пришло в голову - инициировать локальный git, а для наглядности периодически пушить их в GitHub или bitBucket. Попробовал на паре сайтов - годится, но сложновато:

  • приходится на каждый сервер ходить через консоль по ssh
  • под каждый проект нужно завести github репозиторий, а это платная функция
  • проверять изменения через git status, комитить, пушить и смотреть что изменилось

Была мысль настроить отправку изменений на github по крону, но это тоже какой то полуручной костыль.

Искал что то готовое и наткнулся на

  • Anti-Shell который умеет всё то что хочется, но децентрализовано и не обновляется уже два года
  • AI-Bolit который скорее лечит, а не уведомляет об изменения, в то время как я считаю что лечить можно только в ручную и только если "шаришь в коде"

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

b_58b5b11011884.jpg

Пилим решение

Сервер самостоятельно не умеет следить за изменениями файлов, но его легко этому обучит. Я написал небольшой скрипт на php, который собирает информацию о всех файлах и папках на сервере в файл - базу.

Это было проще простого - опытный разработчик пишет такое за рабочий день

Этот скрипт - сканер пользователи будут загружать на свой хостинг, а онлайн сервис будет обращаться к нему с вопросом "Ну что там? Есть изменения?".

Сам веб сервис разработал на php фреймворке Laravel и то что получилось пока далеко от идеала, но оно работает, а это главное.

  1. Теперь пользователи со схожей проблемой могут:
  2. Зарегистрироваться в сервисе
  3. Добавить сайт за изменениями которого хотят следить
  4. Скачать скрипт - сканер и загрузить его на свой сервер
  5. Запросить сканирование вручную или дождаться автоматического сканирование, которое происходит каждый час

Установка такого мониторинга не занимает больше 5 минут у разработчиков и не должна занимать более 15 минут у рядового пользователя. Оповещения об изменениях на сервере отображаются в личном кабинете, в удобном виде, сгруппированы по сайтам и сортированы по времени.

Всё это называется sQanner.

b_58b5af41b6dde.jpg

b_58b5b11011884.jpg

Всем неравнодушным

Обитатели Спарка, если Вам интересна описанная услуга - не стесняйтесь регистрироваться и пользоваться sQanner'ом. Мы открыты к обратной связи и готовы оперативно внедрять новые функции и исправлять баги. Делитесь своим мнением здесь на Спарке, пишите в личку или на support@sqanner.com

Бонус! Все пользователи, которые начали пользоваться сервисом до начала монетизации, получат специальные условия платного пользования.

+3
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
sQanner
Сообщает об изменениях на сервере
Арсен Ибрагимов
Понравился проект? Ставьте лайки, подписывайтесь на обновления и задавайте вопросы в комментариях!
Ответить
Антон Третьяк
На рег.ру автоматом делаются бэкапы ежесуточно в течении месяца. Для Wordpress, как и для других систем, есть вагон с тележкой плагинов, которые делают снимки, копии файлов до и после изменений и отсылают это на почту. Не уловил особых отличий, если честно.
Ответить
sQanner
Сообщает об изменениях на сервере
Арсен Ибрагимов
Всё верно, но шелл может быть залит, но не использоваться. Обычная практика: злоумышленник заливает шел, продаёт доступ к шеллу на форумах, а на это уходит время. В описанном случае мы обнаружили его даже в самом раннем бекапе.

На WordPress действительно полно плагинов для бекапа на почту, dropbox и куда только вздумается, на других движках может и не быть, но опять же это бекапы, не отслеживание изменений.
Ответить
Антон Кузьменко
>под каждый проект нужно завести github репозиторий, а это платная функция

ну зачем? под не опенсорс есть же битбакет
Ответить
sQanner
Сообщает об изменениях на сервере
Арсен Ибрагимов
Верно, у BitBucket отличная от ГитХаба модель монетизации, взимают плату только тогда когда с репозиторием работает от N человек, но остальные проблемы с настройкой кимтов, пушей и анализом коммитов остаются. Годный вариант для профи, но не под силу рядовом вебмастеру.
Ответить
Сергей Пронин
Я такое видел только во всяких сомнительных MODX и т. п.
Ответить
sQanner
Сообщает об изменениях на сервере
Арсен Ибрагимов
Сергей, что именно Вы видели и что скрывается в "и т.п."? :)
Ответить
Никита Поповский
Уже не первый год есть https://virusdie.ru/
Ответить
sQanner
Сообщает об изменениях на сервере
Арсен Ибрагимов
Никита, они действительно хороши
Ответить
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.