Восстановление работы магазина на InstantCMS

InstantCMS 2.X
#1 11 апреля 2020 в 18:16
Взломали интернет-магазин на InstantCMS. Разработчики, к сожалению, не выходят на связь. Ищем специалиста, готового помочь уже в ближайшее время.

Взломщики заменили содержимое пары PHP-файлов, но после восстановления их из бэкапа, сайт падает с ошибкой PHP о нехватке памяти (увеличение ограничения памяти в 10 раз в настройках PHP не помогает). Бэкап есть, но очень старый.

Помимо восстановления работы сайта, желательно также навести порядок в файлах сайта и предпринять меры для защиты от подобных проблем в будущем.

Спасибо за внимание.
#2 11 апреля 2020 в 19:16

Бэкап есть, но очень старый.

@Dae
У хостера не сохранился? Спрашивали?

Ищем специалиста, готового помочь уже в ближайшее время.

@Dae

Я не возьмусь (не платно, не бесплатно). Но если не найдете кто возьмется, могу дать совет, как сделал бы сам...

1. Поменяйте пароли где только возможно, от хостинга, от FTP, от админки и т.д....

2. Снимите бекап того, что есть сейчас, файлы и БД. Что бы в любых случаях неудачного последующего лечения, вернуть хотя бы то что есть сейчас.

3. Все что написано ниже, лучше (если есть возможность) делать на локальной копии развернутой из бекапа.

Взломщики заменили содержимое пары PHP-файлов

@Dae

Бэкап есть, но очень старый.

@Dae
Что бы точно знать, что не заменили где то еще.
Скачайте установочный пакет вашей версии Инстанта удалите из него вспомогательные папки, оставьте примерно так:



и закачайте по FTP с заменой.

То же самое сделать с установленными дополнениями (взять все файлы из папки package их установочных архивов)

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

4. На всякий случай проверьте структуру БД сравнением со старой базой из бекапа, Все ли таблицы на месте...

Примерно как то так...

предпринять меры для защиты от подобных проблем в будущем.

@Dae

Как правило такие меры надо предпринимать администратору.
Их описаний 100500 для любых движков.

ЗЫ: Еще можно развернуть на локалке старый бекап и сравнить в админке, все ли компоненты и дополнения на месте (если их злоумышленник удалял из админки).

Это в дополнение к сравнению структуры БД...
Но все же сравнение структуры БД (все ли таблицы на месте) надежнее...

ЗЫ2:А "старый бекап" на сколько старый? Если Вы потом только записи на сайт добавляли, тогда вообще проще (не заморачиваться с файлами движка и дополнений) удалить из него папки cache и upload (и даже их не обязательно) взять их и перезалить на сайт...

А потом уже заняться БД смотреть все ли таблицы на месте…
#3 11 апреля 2020 в 19:43
Вау, не ожидал. Спасибо огромное, Rainbow!

У хостера не сохранился? Спрашивали?

Rainbow
Это выделенный сервер, т.е. у хостера нет доступа к файлам, а разработчики, которые когда-то его настраивали, видимо забыли про такую мелочь как бэкапы.

2. Снимите бекап того, что есть сейчас, файлы и БД. Что бы в любых случаях неудачного последующего лечения, вернуть хотя бы то что есть сейчас.

Rainbow
Да, уже делаем.

Скачайте установочный пакет вашей версии Инстанта удалите из него вспомогательные папки, оставьте примерно так:

Rainbow
Попробуем!

Как правило такие меры надо предпринимать администратору.

Rainbow
Да, разумеется! Но всегда есть какие-то специфичные для CMS меры, которые можно дополнительно предпринять.
#4 11 апреля 2020 в 19:46

ЗЫ2: А "старый бекап" на сколько старый? Если Вы потом только записи на сайт добавляли, тогда вообще проще удалить из него папки cache и upload (и даже их не обязательно) взять их и перезалить на сайт...

Rainbow

Осень 2019, с тех пор сайт много дорабатывался. И, по-моему, там только файлы, без дампа БД 😥
#5 11 апреля 2020 в 19:51

Но всегда есть какие-то специфичные для CMS меры, которые можно дополнительно предпринять.

@Dae

Они известны. Об этом можете позже (после восстановления) отдельную тему поднять...

Осень 2019, с тех пор сайт много дорабатывался. И, по-моему, там только файлы, без дампа БД

@Dae

Дорабатывался… как? просто что то в админке или в файлах тоже?

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

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

по-моему, там только файлы, без дампа БД

@Dae

Это уже гораздо хуже...
Тогда пока надо разобраться с файлами...

И да… А как определили, что сайт взломали? Перестал работать? Появились ошибки? Вирус?
Сами ни чего не могли случайно сделать?
#6 11 апреля 2020 в 20:32

Взломщики заменили содержимое пары PHP-файлов,

@Dae
Каких?
#7 11 апреля 2020 в 21:03

Каких?

@IamB
И что именно с ними было не так?

@Dae, да, напишите подробнее, с чего началось, как вышли на эти два файла, чем они отличались и т.д.

Что бы не получилось, искать то чего нет… а дело в настройках, случайном удалении, повреждении, заливки не в двоичном режиме и т.д.
#8 11 апреля 2020 в 22:39

@Dae, да, напишите подробнее, с чего началось, как вышли на эти два файла, чем они отличались и т.д.

Rainbow

Сайт дефейснули: вместо главной — белая страница с одной только надписью "hacked". Внутри index.php — эта самая надпись, больше ничего. Я заменил index.php на тот, что был в древнем бэкапе (он идентичен дистрибутивному), но сайт не завелся, сначала долго загружается страница, потом ошибка "memory exhausted". Если увеличить memory_limit с 128M до 8GB (на сервере памяти достаточно), то появляется ошибка maximum execution time. Если увеличить max_execution_time до 10 минут, то опять "memory exhausted". При обращении к админке все те же ошибки. Очевидно, что движок запускает какие-то тяжелые процессы. Через find. --mtime -1 стало понятно, что злоумышленники также шарились по папке templates, но я не нашел других модифицированных файлов, кроме index.php.

Думаю, нужно попробовать запустить без вспомогательных папок, как Вы писали выше. Но лучше всего будет, если это хозяйство вживую посмотрит человек, знакомый с данной CMS. Мне написала пара человек в личку, я им сейчас отвечу.
#9 12 апреля 2020 в 09:29
@Dae, понятно...

Мне написала пара человек в личку, я им сейчас отвечу.

@Dae

Ок.

Думаю, нужно попробовать запустить без вспомогательных папок, как Вы писали выше.

@Dae

Их надо закачать на сервер в корневую папку Вашего сайта, а не запускать (может я Вас не понял).
#10 12 апреля 2020 в 10:58
вопрос как?
#11 12 апреля 2020 в 13:55
это баг системы или как? Если есть уязвимость, то ее надо пофиксить!
#12 12 апреля 2020 в 13:56

с помощью обычной XSS

@Inna

Если она такая "обычная" почему я за 10 лет на Инстанте практически НИ РАЗУ не видел здесь чистого взлома CMS.
А только, как правило, ошибки администрирования) ?

Deface сайта можно сделать — доступ к ftp, залили shell, с помощью обычной XSS (Google).

@Inna

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

Вот сейчас вполне можно спросить, раз знаете как, напишите, поделитесь… так сказать пруфы в студию))...
Серьезное обвинение — серьезное обоснование…
#13 12 апреля 2020 в 14:05



вопрос как?

Capitan
Deface сайта можно сделать — доступ к ftp, залили shell, с помощью обычной XSS (Google).

@Inna
Дефолтный скрипт сайта, весьма прочный и выстоял многие атаки.
Скорее всего зашли либо через операционную систему или у вас в доработках зияет огромная дыра!
Fail2ban стоит на сервере? Если нет, тогда проще переустановить сервер, чтобы исключить оставленные лазейки. А потом по совету Rainbow
#14 12 апреля 2020 в 15:12
1.

Вы не можете мне писать, мы не знакомы и у вас нет информации.

@Inna

/blogs/moi-razrabotki/besplatnoe-pole-rasshirjaemyi-spisok.html#comment_112001

И еще раз…

это взято с гугла.

@Inna

Это не доказательство, а разнос сплетен...
На каком основании Вы решили, что то что там написано не написали такие же Rainbow, @Inna, или еще кто от скуки?

Новости в Интернете делаем все МЫ.

ИМХО если кто то знает реальные шеллы к каким либо движкам, он вряд ли станет ими с кем то делится (просто потому, что самому нужнее и что бы их не закрыли))

2.

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

И да… Всегда в помощь два золотых правила администратора

1) Администраторы сайтов делятся на две категории: те которые ЕЩЕ не делают бекапы и те которые УЖЕ делают бекапы.
2) Бекапов много не бывает...

3. Откуда конкретно залезли к ТС можно теперь только гадать (если конечно кто то не сможет по логам определить).
Поэтому надо просто восстановить сайт и постараться пройти по всем пунктам безопасности,

Пароли, доступы, последние версии ПО...
И много бекапов на будущее))…
#15 12 апреля 2020 в 16:46

Если она такая "обычная" почему я за 10 лет на Инстанте практически НИ РАЗУ не видел здесь чистого взлома CMS.
А только, как правило, ошибки администрирования) ?

Rainbow

Ну на первой ветке ДО глобальной проверки на безопасность была пара дыр на мускул инъекции, и в 1,10,2 в визинг редакторе тоже какой то баг был с возможностью заливки файлов(не php) в аплоэд без регистрации на сайте.

По сабжу не совсем понятно как было выявлено что изменения затронули всего пару файлов, а не больше скытыми шелами?
Контрмеры вам предложили вполне хорошие, но все таки я бы вам предложил смержить все файлы(если понимаете в коде) и посмотреть куда добрались хацкеры где был добавлен лишний код, а где и лишние файлы, т.к. если просто залить поверх старыми файлами из бэкапа то если были дрцгие файлы злоумышленников они никуда не денутся.
Вы не можете отвечать в этой теме.
Войдите или зарегистрируйтесь, чтобы писать на форуме.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.