Обязательно проверить директории: /ajax/ /include/ /form/ /bitrix/components/aspro/
Запустить поиск по этим папкам слова unserialize и внести правки во всех местах где требуется.
Если у вас вместо unserialize используется Solution::unserialize() или CMax::unserialize, то ничего добавлять не нужно. Эти методы уже содержат правку. То есть у вас установлено обновление, устраняющее эту уязвимость.
У меня только один вопрос к разработчикам из АСПРО. Они же понимали, что у очень многих шаблоны доработаны и не подлежат обновлению. Как можно было знать об уязвимости с 2023 года и просто скрыть этот факт? Мы сейчас пробежались по портфолио с сайта самого Аспро, у кого шаблоны были профессионально доработаны до 2024 года, они там все с этой уязвимостью.
написал: овость от 06.02.2025 по теме для решений от Аспро: Взломы сайтов на решениях Аспро: как обезопасить проект Проблема актуальна для решений Аспро, не обновлявшихся с лета 2023 года.Для проектов Аспро, снятых с поддержки, есть Патчер безопасности . Прямая ссылка на патчер: https://aspro.ru/upload/fixit.zip (распаковать в корень сайта, перейти по ссылке https://mydomain.com /fixit.php)Информация для исправления вручную: Общая информация по исправлению уязвимости unserialize ЦитатаРешениеДля исправления уязвимости нужно в местах, где используется функция unserialize, указать в качестве второго аргумента ['allowed_classes' => false].Пример:было: unserialize($_REQUEST["PARAMS"])стало: unserialize($_REQUEST["PARAMS"], ['allowed_classes' => false])Обязательно проверить директории:/ajax//include//form//bitrix/components/aspro/Запустить поиск по этим папкам слова unserialize и внести правки во всех местах где требуется.Если у вас вместо unserialize используется Solution::unserialize() или CMax::unserialize, то ничего добавлять не нужно. Эти методы уже содержат правку. То есть у вас установлено обновление, устраняющее эту уязвимость.
!!!!!!!!!!!!! Ни в коем случае не запускайте данный патч в режиме исправления, если не хотите положить сайт !!!!!!!!!! Только в режиме просмотра. При исправлении там сплошные синтаксические ошибки, задвоения аргументов и т.п.
Делюсь своим. Аспро Максимум и Битрикс без обновлений с лета 2023, когда в Аспро был глюк несовместимости с PHP8.1. Стоит PHP 7.4.28. C конца января на прочих доменах везде набросали /assets/images/accesson.php Смена паролей на хостинге не помогла. На домене с Битриксом нам влили: /ajax/ - левый файл php c цифрами в названии /ajax/ - php.ini с таким содержанием: safe_mode=offndisable_functions=nupload_max_filesize = 10Mnpost_max_size = 10M - вот об этом, кажется, в этом форуме еще не упоминали, посмотрите. /bitrix/templates/Название_шаблона/footer.php - в конец файла записали ссылок на какую-то индийскую порнуху. Всем спасибо за решения, ждем, пока тихо.
Добрый день. Никто не отмечал взлом через следующие файлы: * /ajax/error_log_logic.php * /ajax/form.php * /form/index.php
Был обнаружен вредоносный файл на сайте. Из логов видно, что вредоносный файл появился после обращения к файлам из списка. На сайте закрыты уязвимости, о которых говорилось в ревью от Аспро. В файлах из списка не используется функция unserialize.
upd: Были обнаружены вторжения на 6 сайтах, на разных хостингах. По логам везде одинаковый набор запросов к файлам из списка.
Сегодня утром взломали через /ajax/form.php в связке с error_log_logic.php Последний создаёт файл с вредноносным кодом, а первый его запускает Беда прямо какая-то
сегодня шакалы зашли в гости по адресу: /form/index.php?form_id=TABLES_SIZE&url=/ajax/js_error.txt и снова появился файл и файл появился в папке /ajax/
Кто-нибудь анализировал вредноносный код? Кроме порнушных сайтов к нам загрузили файловый менеджер, через который могли скачать все файлы проекта от пользователя bitrix. В том числе и файлики dbconn settings, в котором содержатся логин и пароль от базы. И соответственно злоумышленники могли скачать всю БД с заказами, паролями и прочим.
Что по паролям пользователей? Они в зашифрованном виде? При скачивании базы они смогут получить пароли? Заказы и персональные данные по-любому утекут в сеть. Вопрос с паролями?
написал: сегодня шакалы зашли в гости по адресу: ___ и файл появился в папке /ajax/
Поддержка Аспро ответила
Цитата
Добрый день. Уязвимым в этой цепочке является файл /form/index.php В решении он давно не используется и должен был быть исключен, но почему-то присутствует на данном проекте.
Так это к ним вопрос: почему присутствует этот файл? Сайт создан с нуля 8 мес. назад, я не могу проконтролировать файлы решения Аспро, которые загружаются при установке. Зачем-то его включили в установку, а теперь удивляются откуда взялся этот файл. Так от вас.
Увидел у себя подобное в логах. Видимо меня спасло, что права на папку ajax стояли 500. Поленился в свое время и после фикса уязвимостей не сменил обратно.
Дмитрий Дмитрий, у меня около 50 новых файлов разбросанных по всему проекту. upload cache resize_cahe modules templates. Злоумышленник может позднее зайти по любому пути на сайт и запустить ранее отложенный код. Рекомендую проверить сайт на изменения файлов и на новые файлы начиная с 29 января. Кроме папок managecahce cache html_pages и resize_cahe. Их под снос. resize_cahe и html_pages если болезненно удалять как в моём случае, то в них просто найти все файлы отличные от графических, html и проверить их.
написал: Другой сайт на Аспро-Максимум обновлялся регулярно (последнее 25 декабря), все равно там есть вирусня.в файле js_error.txt такое
правильно понимаю, что наличие файла js_error.txt — это попытка взлома, но еще не сам взлом сайта? на проектах появились эти файлы, с попытками создать файлы типа ajax/7909e3e68924.php и по логам потом попытки обращений к этим файлам, но безуспешные.
анализирую сервер на наличие новых файлов, вроде пока чисто
Сергей написал: правильно понимаю, что наличие файла js_error.txt — это попытка взлома, но еще не сам взлом сайта?
У меня этого файла не было. Но он создавался, а потом удалялся. Об этом говорит содержимое get запроса злоумышленника unlink($_SERVER[%22DOCUMENT_ROOT%22].%22/ajax/js_error.txt%22) Поэтому если этого файла у вас нет, то еще не значит что у вас не было взлома.
Если в логах есть хоть один ответ 200 к файлам типа ajax/7909e3e68924.php или e3e68/index.php, то сайт взломан и злые люди получили доступ ко всем файлам и к подключению к базе. Я на пустом сервере пооткрывал многие свои вредные файлы - это разные файловые менеджеры и sql менеджеры.
Я полагаю все эти файловые и sql менеджеры размещенные у меня на сервере в файлах типа ajax/7909e3e68924.php или e3e68/index.php в кол-ве 50шт представляют собой "товар". Человек взломал, разместил и продаёт эти доступы в даркнете или просто передал их. А покупатели ссылок, доступов: кто-то порнушные ссылки вставил, чтобы поднять их в поиске или опустить наш сайт в поиск или просто пыль в глаза бросить, чтобы скачать всю базу и т.д...
Ну вот нафига вы выложили в открытый доступ цепочку, через что загрузили вирус? Сейчас кроме этих хакеров набегут малолетки и заразят еще кучу сайтов!! Удалите исходный код уязвимых файлов и запросы к этим файлам!!
написал: Если в логах есть хоть один ответ 200 к файлам типа ajax/7909e3e68924.php или e3e68/index.php, то сайт взломан и злые люди получили доступ ко всем файлам и к подключению к базе.
вроде обошлось, по логам все запросы к файлам были неудачные, сканирование сервера новых / свежеизмененных непонятных файлов не выявило (в т.ч. в папке upload, папки с кешем не проверял, сразу снес их) кроме файла js_error.txt, в который писались ошибки при обращении через error_log_logic.php, но это, если правильно понял, не самое страшное.
по рекомендациям сделал по-максимуму, спасибо: - закомментировал AddMessage2Log, чтобы вообще блокировать создание js_error.txt - добавил false к TABLES_SIZE и CRM - добаил die при попытке вызова file_put_contents и base64_decode - ну и забанил сетку с нехорошим IP — 45.142.122.46
если кто посоветует, что еще проверить кроме новых / свежеизмененных файлов, буду признателен!
написал: Если в логах есть хоть один ответ 200 к файлам типа ajax/7909e3e68924.php или e3e68/index.php, то сайт взломан и злые люди получили доступ ко всем файлам и к подключению к базе.
вроде обошлось, по логам все запросы к файлам были неудачные, сканирование сервера новых / свежеизмененных непонятных файлов не выявило (в т.ч. в папке upload, папки с кешем не проверял, сразу снес их) кроме файла js_error.txt, в который писались ошибки при обращении через error_log_logic.php, но это, если правильно понял, не самое страшное.
по рекомендациям сделал по-максимуму, спасибо: - закомментировал AddMessage2Log, чтобы вообще блокировать создание js_error.txt - добавил false к TABLES_SIZE и CRM - добаил die при попытке вызова file_put_contents и base64_decode - ну и забанил сетку с нехорошим IP — 45.142.122.46
если кто посоветует, что еще проверить кроме новых / свежеизмененных файлов, буду признателен!
Я правильно понимаю, что если в логах именно запросы к новосозданным файлам типа 6d097dd98a.php неудачные, тогда защита сработала? Типа "GET /ajax/a9279bd1e7db.php HTTP/1.0" 404
А если такое проходит? 45.142.122.46 - - [10/Feb/2025:04:09:45 +0300] "GET /form/index.php?form_id=TABLES_SIZE&url=/ajax/js_error.txt HTTP/1.0" 200 85937 "https://.ru:443/ajax/form.php?form_id=TABLES_SIZE&url=/ajax/js_error.txt" "Mozilla/5.0 (X11; Ubuntu; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2684.12 Safari/537.36"
Это вариант нормы? При этом в папке не появилось левых файлов, включая js_error.txt